This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
команда_tar [2014/01/31 15:38] val [Сценарий 1: архивирование каталогов с файлами конфигураций с использованием rsh/ssh] |
команда_tar [2018/03/26 07:01] val [Создание архива] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Команда tar ====== | ====== Команда tar ====== | ||
- | [[http://ru.wikipedia.org/wiki/Tar]] | + | * [[https://ru.wikipedia.org/wiki/Tar|tape archive]] |
===== Создание архива ===== | ===== Создание архива ===== | ||
<code> | <code> | ||
- | # cd /; tar -c -v -f /mnt/user_dirs.tar --exclude home/user2 root/ home/ | + | # cd /; tar -c -f /disk2/etc.tar etc/ |
- | $ cd /; sudo /bin/tar -cjf - etc/ | ssh archiveserver "cat > etc.tbz" | + | # tar -c -f /disk2/etc.tar -C / etc/ |
+ | |||
+ | userX$ cd /; sudo /bin/tar -cjf - etc/ | ssh backup.isp.un "cat > etc.tbz" | ||
</code> | </code> | ||
===== Просмотр содержимого архива ===== | ===== Просмотр содержимого архива ===== | ||
<code> | <code> | ||
- | # tar -t -f user_dirs.tar | + | # tar -t -f /disk2/etc.tar |
- | # tar -t -v -f user_dirs.tar | + | # tar -t -v -f /disk2/etc.tar |
</code> | </code> | ||
- | ===== Распаковка отдельных файлов/каталогов архива ===== | + | ===== Распаковка архива ===== |
<code> | <code> | ||
- | # cd /tmp | + | # cd |
- | # tar -xf user_dirs.tar root/.bashrc | + | # tar -xvf /disk2/etc.tar |
- | # tar -xOf user_dirs.tar root/.bashrc #вывести на экран (STDOUT) | + | |
- | # tar -xf user_dirs.tar root/ | + | |
- | # tar -xf user_dirs.tar '*bash*' | + | |
- | </code> | + | |
- | ===== Распаковка всего архива ===== | + | # tar -xvf /disk2/etc.tar etc/fstab |
- | <code> | + | |
- | # cd /; tar -x -v -f user_dirs.tar | + | # tar -xOf /disk2/etc.tar etc/fstab #вывести на экран (STDOUT) |
+ | |||
+ | # tar -xf /disk2/etc.tar etc/ssh/ | ||
+ | |||
+ | # tar -xf /disk2/etc.tar '*conf' | ||
</code> | </code> | ||
Line 40: | Line 42: | ||
===== Варианты использования ===== | ===== Варианты использования ===== | ||
- | ==== Сценарий 1: архивирование каталогов с файлами конфигураций с использованием rsh/ssh ==== | + | ==== Сценарий архивирования каталогов с использованием ssh ==== |
<code> | <code> | ||
- | # cat /etc/backup_conf.sh | + | # tar -c -f - etc/ | ssh userX@gate.isp.un "cat > etc.tar" |
+ | |||
+ | # cat /etc/backup.sh | ||
</code><code> | </code><code> | ||
#!/bin/sh | #!/bin/sh | ||
- | echo Backup conf | ||
CMD="/bin/tar" | CMD="/bin/tar" | ||
# CMD="/usr/bin/tar" | # CMD="/usr/bin/tar" | ||
- | RCMD="ssh userX@server" | + | RCMD="ssh userX@gate.isp.un" |
- | # RCMD="rsh -l userX server" | + | |
DIRS="etc/" | DIRS="etc/" | ||
Line 57: | Line 60: | ||
# DIRS="etc/ usr/local/etc/ var/named/etc/namedb var/cron/tabs/" | # DIRS="etc/ usr/local/etc/ var/named/etc/namedb var/cron/tabs/" | ||
- | cd /; $CMD -cjf - $DIRS | $RCMD "cat > `hostname`.backup_conf.`date '+%Y%m%d'`.tbz" | + | cd /; $CMD -cjf - $DIRS | $RCMD "cat > `hostname`.backup.`date '+%Y%m%d%H%M'`.tbz" |
</code><code> | </code><code> | ||
- | # chmod +x /etc/backup_conf.sh | + | # chmod +x /etc/backup.sh |
</code> | </code> | ||
- | ==== Сценарий 2: архивирование репозитория APT с разбиением на файлы размером не более 2GB ==== | + | ==== Сценарий архивирования репозитория APT с разбиением на файлы размером не более 2GB ==== |
<code> | <code> | ||
# tar -cvf - apt-mirror/ | ssh root@backup.corpX.un "cd /mnt/rep1004; split -b 2GB - apt-mirror.tar." | # tar -cvf - apt-mirror/ | ssh root@backup.corpX.un "cd /mnt/rep1004; split -b 2GB - apt-mirror.tar." | ||
</code> | </code> | ||