Я хочу скопировать корневую файловую систему своей Ubuntu в другую папку (возможно, /home/rootfs
). Я не пытаюсь скопировать /
, который является корневым каталогом файла, но пытается скопировать корневую файловую систему. Кто-либо знает надлежащий способ сделать это?
Я делаю это, потому что я пытаюсь создать контейнерное использование, Идут (https://www.youtube.com/watch? v=Utf-A4rODH8), и в видео ей уже скопировали корневую файловую систему. Я также хотел бы сделать то же.
Спасибо!
Можно использовать dd
.
dd if=/dev/sdXX of=/home/rootfs.img
где/dev/sdX является блочным устройством, Вы надеетесь копировать (вход).
Ваша корневая файловая система является вероятным/dev/sda1, если у Вас есть стандартная установка, но Вы сможете сказать путем выполнения 'df' и выбора устройства, смонтированного на '/'.
аргумент указывает, где образ будет сохранен, когда Вы будете сделаны.
Вам, вероятно, придется выполнить это как корень.
Возможно, этот ответ больше не будет актуален для вас, но он может быть полезен для тех, кто также просматривает эту демонстрацию.
Хитрость заключается в использовании rsync
, но исключая ненужные каталоги, а также каталог, в который клонируется корневая папка, чтобы избежать бесконечного рекурсивного копирования.
Команда:
rsync -aAXv / --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/* ","/mnt/*","/media/*","/lost+found","/home/*"} /home/rootfs
Объяснение:
rsync — это программа для передачи файлов, более сложный, чем cp
. Вы можете узнать больше о нем и его возможностях, набрав man rsync
в своей оболочке. Флаг
-a
: ярлык для режима «архив». Это сохраняет символические ссылки,
устройства и т. д. -A
флаг: Сохраняет разрешения -X
флаг: Сохраняет расширенные атрибуты -v
флаг: Подробно
--exclude=... Флаг
: исключает (не копирует) каталоги, перечисленные внутри значения флага. Обратите внимание на последнюю запись: мы исключаем папку /home/*
, чтобы избежать бесконечного рекурсивного копирования.
Наконец, последний параметр — это каталог назначения. В вашем случае это /home/rootfs
(демонстрация хранит клон в /vagrant/ubuntu-fs/
)
После запуска этого я смог выполнить с демо. Надеюсь это поможет.