Пожалуйста, рассмотрите следующую команду для пакета imagemagick:
sudo convert -resize 460x200 /path/to/test1.jpg /path/to/test2.jpg
Теперь test1.jpg
это довольно большое изображение (12,5 МБ), но не неслыханные размеры, но сервер, с которого я работаю, имеет только 1 ГБ памяти ( Amazon EC2 t2.micro, если это помогает)
Не выдается никакой ошибки, и все же не test2.jpg
создается. Я проверил это с меньшими изображениями, и это работает отлично. Я бы подумал 1G, если бы памяти было достаточно для управления изменением размера, но, возможно, нет?
Какие у меня варианты, мне нужно больше памяти или я что-то упустил?
Любые предложения приветствуются!
Запрошенные правки
Выходные Трассирования показывает: +++ 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
Таким образом, похоже, что своп не включен, поэтому я попытаюсь создать файл подкачки, чтобы посмотреть, решит ли это мои проблемы.
Файл дает мне:
testprint10Mbv2.jpg: JPEG image data, EXIF standard
Я также вставил бы полный путь / путь / к / img, но, к сожалению, он содержит конфиденциальные данные (адреса электронной почты клиента и т. Д.)
-limit memory 64MiB
(32 МБ, вероятно, слишком мало. По умолчанию 1,5 ГБ). И это должно дать вам некоторый описательный вывод в случае неудачи.
strace
добавив ее перед командой, посмотрите, какие системные вызовы сделаны, и были выданы ошибки. Дайте нам знать
sudo
в этой команде?