Vui lòng xem xét các lệnh sau cho gói hình ảnh:
sudo convert -resize 460x200 /path/to/test1.jpg /path/to/test2.jpg
Bây giờ test1.jpg
là một hình ảnh khá lớn (12,5 MB), nhưng không phải là kích thước chưa từng thấy, nhưng máy chủ tôi đang làm việc chỉ có 1G bộ nhớ ( Amazon EC2 t2.micro nếu nó giúp)
Không có lỗi đang được ném, và không có test2.jpg
được tạo ra. Tôi đã thử nghiệm điều này với hình ảnh nhỏ hơn và nó hoạt động tốt. Tôi đã nghĩ 1G nếu bộ nhớ sẽ có nhiều để quản lý thay đổi kích thước, nhưng có lẽ không?
Lựa chọn của tôi là gì, tôi phải có thêm bộ nhớ hay tôi đang thiếu thứ gì?
Mọi góp ý đều rất được hoan nghênh!
Yêu cầu chỉnh sửa
đầu ra strace cho thấy: +++ killed by SIGKILL +++
cùng với rất nhiều lệnh trông bình thường (mở /usr/share/local
và đọc các chuỗi dài, mà tôi giả sử là dữ liệu hình ảnh)
miễn phí cho tôi:
total used free shared buffers cached
Mem: 1016292 278348 737944 6412 460 13356
-/+ buffers/cache: 264532 751760
Swap: 0 0 0
Vì vậy, có vẻ như trao đổi không được kích hoạt, vì vậy tôi sẽ xem xét việc tạo một tệp hoán đổi để xem điều này có sắp xếp các vấn đề của tôi không.
Tập tin cho tôi:
testprint10Mbv2.jpg: JPEG image data, EXIF standard
Tôi cũng sẽ dán đầy đủ / đường dẫn / đến / img nhưng không may nó chứa dữ liệu nhạy cảm (địa chỉ email của khách hàng, v.v.)
-limit memory 64MiB
(32MiB có thể hơi nhỏ một chút. Mặc định là 1,5GiB). Và nó sẽ cung cấp cho bạn một số đầu ra mô tả trong trường hợp nó không thành công.
strace
bổ sung phía trước lệnh, xem những gì các cuộc gọi hệ thống được thực hiện, lỗi được ném. Hãy cho chúng tôi biết
sudo
trong lệnh này?