Rsync, не перезаписывающий файлы

Уверенный, что можно добавить отдельный домашний раздел.

Добавляют новый жесткий диск, делят его (использующий fdisk или gdisk), форматируют его (т.е. создайте фс с помощью mkfs), переместите файлы под / домой к новой фс и отредактируйте fstab соответственно так, чтобы система смонтировала новую фс сверху / домой.

при использовании SELinux у вас могут быть проблемы, входящие в систему из-за расширенных атрибутов, не будучи должным образом скопированным в новую файловую систему. Существуют средства сохранения расширенных атрибутов при копировании файлов, но я нашел, что лучше (на самом деле более простой) способ сделать это путем восстановления их после копирования файлов. Для достижения этого после копирования и прежде, чем зарегистрироваться с любым обычным пользователем (какие файлы находятся в / домой), вход в систему как корень, и выполнитесь restorecon-R-v / домой .

Следует за высоким уровнем шаг за шагом:

- Add the new harddisk to the system;
- run fdisk (or gdisk) to partition it;
- run mkfs (e.g. "mkfs.ext4 /dev/sdXn" where sdXn is the device referring partition you just created with fdisk);
- mount the new fs under a temporary directory so that you can still see your current /home directory;
- copy the files from your /home to the new fs using "cp -a", "rsync" or your preferred method;
- unmount the new fs;
- add an entry for the new fs in fstab (mine, for instance is: "LABEL=fc20.home /home ext4 defaults,auto_da_alloc,noatime 1 2"
  (notice that I use LABELs for referring to the devices, which you can set with -L with mkfs.ext4 or tune2fs, but of course you can use `/dev/sdXn` instead)
- Mount the new filesystem with "mount -a";
- Before logging with any regular user execute "restorecon -R -v /home"
- after making sure everything is working fine (including after reboot), you should be good to -- temporarily unmount the new /home first -- remove the old files from the original `/home` to free up space in the `/` filesystem.

, Который должен быть этим. Удачи.

0
04.03.2015, 01:48
1 ответ

rsync - ... ordroot / etc etc копирует исходный каталог etc в подкаталог каталога назначения, поэтому файл Oldroot / etc / foo заканчивается скопированным к etc / etc / foo . Если вы хотите скопировать каталог в каталог одного и того же имени, укажите родительский каталог целевого действия:

rsync -a oldroot/etc .

Если вы хотите скопировать каталог в другой каталог, скажите RSYNC, чтобы скопировать содержимое исходного каталога в цель Справочник, добавляя конечную косулью к источнику. (Трейливая слешь на цели не имеет значения.)

rsync -a oldroot/etc/ etc
2
28.01.2020, 02:36

Теги

Похожие вопросы