convert /home/bill/TempScan/*.png myfile.pdf
видає повідомлення про помилку:
convert-im6.q16: not authorized `myfile.pdf' @ error/constitute.c/WriteImage/1037.
Будь-яка допомога буде вдячна!
convert /home/bill/TempScan/*.png myfile.pdf
видає повідомлення про помилку:
convert-im6.q16: not authorized `myfile.pdf' @ error/constitute.c/WriteImage/1037.
Будь-яка допомога буде вдячна!
Відповіді:
convert
є потужним інструментом командного рядка для перетворення графіки. Нібито це створює ризики для безпеки, особливо там, де він використовується разом із веб-сервером. В останніх версіях Ubuntu реалізований файл політики, де певні можливості використання convert
обмежені. Мабуть, цей файл за замовчуванням забороняє "конвертувати" кілька графічних файлів в один PDF-файл.
Файл політики є /etc/ImageMagick-6/policy.xml
. Ви можете редагувати цей файл як root користувача, щоб змінити політику.
Усунення всіх обмежень щодо використання
Для користувачів настільних ПК, які не мають веб-сервера, просто усунення цих обмежень може бути досить хорошим. Для цього файл можна видалити, але краще "перенести файл", перейменувавши його. За допомогою цієї команди ви перейменовуєте файл. Як результат, усі політики скасовуються, але ви все одно можете повернути їх за потреби:
sudo mv /etc/ImageMagick-6/policy.xml /etc/ImageMagick-6/policy.xmlout
Щоб повернутися до початкової ситуації, просто перейменуйте його на початкове ім'я:
sudo mv /etc/ImageMagick-6/policy.xmlout /etc/ImageMagick-6/policy.xml
Усунення лише обмеження на об'єднання в PDF
Для вашого конкретного випадку, gene_wood у коментарі вказав на можливість вибірково послабити політику роботи з PDF-файлами, коментуючи один рядок:
<policy domain="coder" rights="none" pattern="PDF" />
Відредагуйте файл та поставте позначки коментарів навколо цього рядка, щоб відключити це правило:
<!-- <policy domain="coder" rights="none" pattern="PDF" /> -->
Якщо ви не хочете скасовувати всі політики безпеки, це шлях.
Відмова від відповідальності: вас попередили, що видалення цього файла політики видаляє певні політики безпеки.
policy.xml
файл і знайшов рядок, який заважав мені поєднувати png
файли в pdf
s, і прокоментував це. Цей рядок був, <policy domain="coder" rights="none" pattern="PDF" />
якщо ви хочете залишити інші правила недоторканими, але дозволити працювати з pdf
s.
Як розміщено ванадій , ви повинні змінити політику ImageMagick.
sudo vim /etc/ImageMagick-6/policy.xml
і замінити рядок
<policy domain="coder" rights="none" pattern="PDF" />
з
<policy domain="coder" rights="read|write" pattern="PDF" />
Якщо ви хочете лише дозволити писати, а не читати, ви можете також стерти read|
частину у рядку вище.
BTW, для тих, хто цікавиться вразливістю ImageMagick, ось два інформаційні посилання: