Переместить каталог при перезапуске

Я использую Ubuntu Server 20.04 и имею доступ к удаленному серверу через SSH.

Мне нужно больше места в корневой файловой системе, поэтому я сделал копию каталога / var на другом разделе.Затем я добавил в свой / etc / fstab , чтобы он монтировал новый / dev / sdX2 поверх старого / var .

Все в порядке ... df -h / var указывает, что используется только что смонтированная версия.

Однако теперь я не могу удалить оригинал, чтобы освободить место, которое мне так нужно. Если я запустил mount --bind / / mnt / root , а затем попробую сделать что-нибудь, например mv / mnt / root / var /mnt/root/var.old, я get: mv: невозможно переместить 'var' в 'var.old': устройство или ресурс занят .

Поскольку это действительно доступно только через SSH, я не могу войти в однопользовательский режим.

Итак, единственное, что я могу придумать, - это сценарий, который переместит исходный каталог / var в /var.old , а затем, как только я смогу посмотрите, все работает правильно, удалите раз и навсегда.

Основная проблема заключается в том, что этот сценарий должен будет загрузить до того, как fstab или что-либо подключится к var , и я даже не уверен, что это возможно?

Есть другие идеи?

1
задан 7 June 2020 в 14:33

2 ответа

Ваша команда монтирования не подходит. Вы должны называть устройство дисковода, а не корневой символ, т.е.

sudo mount /dev/sdZX /mnt/root
sudo mv /mnt/root/var /mnt/root/var.old
sudo umount /mnt/root
1
ответ дан 19 June 2020 в 21:29

Вы не можете mv или rm папка / mnt / root / var , поскольку / var используется в качестве точки монтирования для вашего нового раздела. Вместо этого mv это содержимое:

mkdir /var.old
mount --bind / /mnt/root
mv /mnt/root/var/"*" /mnt/root/var.old/
umount /mnt/root

Убедившись, что все работает нормально, вы можете удалить /var.old

rm -r /var.old 
1
ответ дан 19 June 2020 в 21:29

Другие вопросы по тегам:

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