Як стискати каталог?


0

Ей, хлопці, мені було цікаво, як би я отримати gzip 7z tar або просто звичайний zip-каталог, як це / var / Резервні копії / Тони звичайний gzip не зробить це, тому що Tones - це каталог, і цей сайт ss64.com/bash насправді не розповідає багато, і я шукав google, але те, про що говорять ті люди, це комп'ютер, який не є мобільним, і я хотів би також зробити пароль архіву захищеним, якщо це можливо? Якщо це допомагає будь-якому, я використовую bash для цього.

Це буде використовуватися на iDevice, як iPad iPhone та iPod, коли вона перебуває в режимі збройного руху; вони мають 7z gzip та tar.

Гаразд, я отримав стиснення для роботи каталогу за допомогою цього:

#!/bin/bash
cd /var/Backups
7z a -p{example} Tones.tar.7z

Моя проблема зараз полягає в тому, коли я йду добувати цей архів на своєму iPhone, він навіть не запитує пароль, чи я щось роблю не так?

Відповіді:


1

tar czf your_dir.tgz your_dir/ створить стислий архів, який більшість інших програм zip може принаймні зрозуміти та розпакувати, якщо потрібно.

Для захисту паролів, однак, немає прямої підтримки в tar / gzip. Використовуйте рішення, запропоноване ghoti, або налаштуйте GPG / PGP і зашифруйте дьоготь, перш ніж стискати.


Як мені захистити архів паролем?

Я думаю, що я зробив це неправильно tar cxf /var/Backups/Tones.tgz / var / Резервні копії / Тони /

Ні, я зробив це неправильно. Замініть "x" в команді на "z". Відредаговано вище.

Добре, що він буде використовуватися на iDevice, як iPad iPhone та iPod, коли у джейлбрейка у них 7z gzip та tar

1
Він сказав, що tar / gzip або 7z, а для стиснення смоли використовується алгоритм gzip.

1

У вас є різні варіанти.

7z

tar -cf tarfile.tar path/to/files/
7z a tarfile.tar.7z tarfile.tar

Це створило б tarfile.tar.7z. Щоб допомогти з очищенням, якщо він встановлений, ви можете використовувати:

p7zip tarfile.tar

замість цього.

Що стосується захисту паролем, то це варіант ні tarні, ні p7zip. Якщо вам зручно користуватися 7zкомандою, ви можете дати їй -p{password}можливість, відповідно до сторінки man.

7z a -p{password} tarfile.tar.7z tarfile.tar

Це залишає tarfile.tarна місці, тож вам потрібно буде почистити щось подібне:

if 7z q -p{password} tarfile.tar.7z tarfile.tar; then
  rm tarfile.tar
fi

Більш простим варіантом може бути компроміс щодо стиснення, і просто використовувати ZIP з -9можливістю найбільшого стиснення, яке він може створити.

Зауважте, що це не так безпечно, як правильно розроблена схема з використанням PGP або GnuPG, тому якщо ви зможете розібратися в цьому методі (а складність не загрожує вашій безпеці), ви будете далі вперед. Прочитайте про PGP або GnuPG , які обидва будуть робити все, що вам потрібно.

gzip

Як і 7z, ви не зможете захистити свій тар за допомогою єдиного командного рядка. Крім того, gzipкоманда також не забезпечує захисту паролем. Тож це також змушує вас скористатися другим кроком:

tar czf - path/to/files/ | openssl enc -aes-256-cbc -e > tarfile.tar.gz.enc

Прочитайте документацію для openssl, щоб дізнатися, як отримати його, щоб не запитувати пароль у командному рядку. Або:

tar czf tarfile.tar.gz path/to/files/
gpg --encrypt tarfile.tar.gz

Зауважте, що вам потрібно буде встановити gpg, перш ніж це буде спрацьовувати.

Можливо, існують (або "безумовно, є") інші способи зробити це. Ви можете розглянути це як вихідну точку подальшого власного дослідження.

блискавка

Якщо zipкоманда включена у ваш jailbroken iDevice, ви можете використовувати таку команду, як:

zip -e -P{password} zipfile.zip path/to/files/

Зауважте, що сторінка man для zip говорить про -Pваріант: ЦЕ НЕБЕЗПЕЧЕНО . Крім того, там , де безпека справді важлива, використовуйте сильне шифрування, таке як досить хороша конфіденційність, а не відносно слабке стандартне шифрування, що надається програмами zipfile.

Будь-яку з цих команд можна розмістити в сценарії. Якщо ви хочете допомогти в написанні сценарію, будь ласка, опублікуйте те, що ви отримали досі, щоб ми могли надати зворотній зв'язок.

Це все, що я маю.


7z використовує шифрування AES з ключем SHA-256 x 2 ^ 19. Як це не "правильно розроблена схема"?
Олег Вікторович Волков

7z - це добре. Це речі, обмотані навколо, майже напевно зламані. Підхід із загальним ключем вимагає, щоб пароль був розповсюджений (або принаймні зберігався в тій самій системі, яка буде читати журнали), що може бути ризикованіше, ніж рішення на основі відкритого ключа з PGP.
ghoti

Чи потрібен мені окремий файл із командним рядком, щоб це працювало?

Я використовую iPhone, мій сценарій також буде використовуватися з iPad та iPod

1
Я підозрюю, що у вас вже є ряд робочих рішень, але ви їх погано реалізуєте. Наприклад, завжди слід цитувати слова, які містять спеціальні символи. Ваша оболонка може інтерпретувати деякі символи так, як ви не очікуєте, незважаючи на цитування (наприклад, !у tcsh). Оскільки ви не сказали нам свою оболонку, ми не можемо вам допомогти там. Але для початку ви включаєте фігурні дужки у свій пароль? Ви розумієте, що {password}в прикладі код означає, що ваш пароль починається з відкритої фігурної дужки і закінчується в кінці?
ghoti
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.