Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Всем привет,
Можно ли под Kubuntu 18 создавая командой 7z архив пропустить подкаталоги?
Я нашел в описании ключ -x и пробовал:
7z a -v20m -xnode_modules.* -xvendor.* /_diskE_Media/__Archieve/2018-08-28/TasksBs41_2018-08-28.zip "/_wwwroot/lar/TasksBs41"
Но получил ошибку :
Command Line Error:
Incorrect wildcard type marker
node_modules.*
А как правильно ?
Спасибо!
Не в сети
7-zip и rar под *nix неадекватны, в сравнении с zip или тем более с tar. Какой смысл использовать его? (В твоем примере, кстати, ошибка - расширение не .zip, а .7z.)
Я советую tar + xz, а если система многоядерная, то tar + pixz.
# gz
tar czf arch.tar.xz --exclude node_modules --exclude vendor /_wwwroot
# xz
tar cJf arch.tar.xz --exclude node_modules --exclude vendor /_wwwroot
# pixz
tar -Ipixz -cf arch.tar.xz --exclude node_modules --exclude vendor /_wwwroot
Не в сети
Как я понимаю в результатн будет файл arch.tar.xz ?
1) Что это за формат ? Он и под виндами может быть распакован ? смысл в том что это архивы - на всякий случай - и может быть не только рабочий linux...
2) А на тома tar распаковывать умеет?
Изменено mstdmstd (31.08.2018 17:45:55)
Не в сети
Как я понимаю в результатн будет файл arch.tar.xz ?
Да. Расширение можно сделать короче - вместо .tar.xz просто .txz.
tar cJf arch.txz ...
.
1) Что это за формат ?
Обычный формат, тот же tar, только сжатый. Стандартно на Windows открывается теми же 7-Zip и WinRAR.
Под *nix tar'ом бекапы лучше делать, чем zip/7z, так как он сохраняет специфичные вещи типа флагов доступа, владельцев, символических ссылок и т.д. Единственный минус - если надо из большого архива вытащить один файл, то это будет долго (в худшем случае по времени равно извлечению всего архива).
и может быть не только рабочий linux...
tar можно даже на Android распаковать, правда, из-за высокого сжатия смартфон может сам себя поджарить.
2) А на тома tar распаковывать умеет?
Нет, для этого используют отдельную команду split через связку команд (pipe):
tar zc --exclude foo /_wwwroot ... | split -b100M - arch.txz.
tar c --exclude foo /_wwwroot ... | pixz | split -b100M - arch.txz.
В результате получим файлы максимум по 100 Мб, с именами arch.txz.aa, arch.txz.ab (.ac ... .ba .bb ... .zz). Можно переключить с буквенных суффиксов на числовые:
... | split -d -b100M arch.txz.
Получим arch.txz.00, .01, ...
Собрать тома обратно можно банально через cat (tar tv = вывод содержимого архива и его проверка):
cat arch.txz.* | tar ztv
cat arch.txz.* | pixz -d | tar tv
Можно и recovery record добавить, как в WinRAR, только это делается отдельной командой (запускать уже после того как все тома заархивируются):
par2 c -n1 -r5 arch.txz.*
-r5 = максимум 5% томов может быть битыми, потом их нельзя будет восстановить.
В итоге имеем тома arch.txz.aa .ab ... и файл с recovery record arch.vol... (файл .par2 можно удалять).
Посмотри эту тему, там тоже про бекапы говорилось, в частности, как их можно в одну команду перекидывать на другой хост через ssh.
Не в сети
Страницы 1