Linux Labs

Хранилище / Ступень 9 из 11

Архив есть — проверь восстановление

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 4 из 7 · теория · 7 мин

Куда ляжет файл

Распаковка кладёт каждый элемент по его пути от выбранного каталога и молча заменяет файлы с теми же именами.

Ключ -x распаковывает архив в текущий каталог, -C задаёт другой. Место файла — этот каталог плюс путь элемента: app/config/app.conf при -C restore станет restore/app/config/app.conf. Каталог из -C должен уже существовать, иначе tar откажет с ошибкой Cannot open: No such file or directory.

Файл с тем же именем tar заменяет без вопроса. Поэтому копию сначала распаковывают в отдельный промежуточный каталог, проверяют и только потом подменяют ею рабочую. Распаковка прямо в live затёрла бы и то, что в рабочей копии новее архива.

Владельцем распакованных файлов становится тот, кто распаковывает: у student — student, даже если в архиве записан root. Владельцев из архива восстанавливает только root. Права tar берёт из архива, но без ключа -p может их урезать: из rw-rw-rw- получится rw-rw-r--. С -p права будут ровно как в архиве.

Заметка

Архив в /srv лежит на том же диске, что и приложение. От испорченного файла такая резервная копия спасёт, от потери диска — нет: копию на этот случай хранят на другом носителе — диске или машине.

Проверь себя 1 вопрос

В архиве есть элемент app/config/app.conf. Где окажется файл после этой команды?

tar -xpf app.tar -C restore
  • Откуда файл архивировали, tar не помнит: место задают каталог из -C и путь элемента.

  • -C restore меняет каталог распаковки, и путь элемента дописывается к нему целиком, с app/config/.

  • Путь элемента начинается с app/: этот каталог появится внутри restore.

Место файла — каталог из -C плюс путь элемента. До распаковки путь виден в tar -tf app.tar, после — в ls -R restore.

Главное в шаге

  • Файл ложится в каталог из -C по своему пути из архива, а одноимённый файл tar заменяет молча.
  • Владельцем распакованного становится тот, кто распаковывает; -p переносит права ровно как в архиве.
Ubuntu 24.04
Загрузка…