โปรดพิจารณาคำสั่งต่อไปนี้สำหรับแพ็คเกจ imagemagick:
sudo convert -resize 460x200 /path/to/test1.jpg /path/to/test2.jpg
ตอนนี้test1.jpg
เป็นภาพที่ค่อนข้างใหญ่ (12.5MB) แต่ไม่ใช่ขนาดที่ไม่เคยได้ยินมาก่อน แต่เซิร์ฟเวอร์ที่ฉันใช้งานมีเพียงหน่วยความจำ 1G เท่านั้น ( Amazon EC2 t2.microถ้ามันช่วยได้)
ไม่มีข้อผิดพลาดเกิดขึ้น แต่ยังไม่มีtest2.jpg
การสร้าง ฉันทดสอบมันด้วยภาพที่เล็กลงและใช้งานได้ดี ฉันคิดว่า 1G ถ้าหน่วยความจำจะมีขนาดใหญ่พอที่จะจัดการปรับขนาด แต่อาจจะไม่
ตัวเลือกของฉันคืออะไรฉันต้องเพิ่มหน่วยความจำหรือฉันทำอะไรหายไป?
ข้อเสนอแนะใด ๆ ยินดีต้อนรับมาก!
การแก้ไขที่ร้องขอ
เอาต์พุต strace แสดง: +++ killed by SIGKILL +++
พร้อมกับคำสั่งจำนวนมากที่ดูเป็นปกติ (การเปิด/usr/share/local
และการอ่านสตริงที่ยาวซึ่งฉันถือว่าเป็นข้อมูลภาพ)
ฟรีให้ฉัน:
total used free shared buffers cached
Mem: 1016292 278348 737944 6412 460 13356
-/+ buffers/cache: 264532 751760
Swap: 0 0 0
ดังนั้นดูเหมือนว่าไม่ได้เปิดใช้งานการสลับดังนั้นฉันจะตรวจสอบการสร้าง swapfile เพื่อดูว่าปัญหาของฉันเรียงลำดับหรือไม่
ไฟล์ให้ฉัน:
testprint10Mbv2.jpg: JPEG image data, EXIF standard
ฉันจะวางแบบเต็ม / path / to / img แต่น่าเสียดายที่มันมีข้อมูลที่ละเอียดอ่อน (ที่อยู่อีเมลของลูกค้า ฯลฯ )
-limit memory 64MiB
(32MiB อาจจะเล็กไปหน่อยค่าเริ่มต้นคือ 1.5GiB) และควรให้ผลลัพธ์ที่เป็นคำอธิบายในกรณีที่มันล้มเหลว
strace
ต่อท้ายคำสั่งดูว่ามีการเรียกระบบอะไรเกิดข้อผิดพลาด แจ้งให้เราทราบ
sudo
คำสั่งนี้?