Я пытаюсь объединить свой отдельный раздел /home с разделом / в Linux Mint 13. Мне сказали размонтировать /home, смонтировать его в другом месте и скопировать содержимое в каталог /home на разделе /.
Я пробовал, но не могу размонтировать /home. Когда я пытаюсь это сделать, я получаю сообщение:
umount: /home device is busy (which processes use this device can be possibly be found with lsof or fuser)
Как мне размонтировать /home и смонтировать его в отдельном месте (/dev/sda2/mnt/home), чтобы иметь возможность скопировать его содержимое в /home?
решение1
umount: /home устройство занято
Это означает, что вы (или кто-то другой) в данный момент используете файлы в /home
файловой системе. Самое простое решение — заставить всех обычных пользователей выйти из системы, а затем снова войти в нее как root.
(Возможно, вам придется настроить систему так, чтобы она «Разрешила вход локальному системному администратору» в приложении «Окно входа в систему», на вкладке «Безопасность».)
Если umount по-прежнему выдает ошибку, то, как указано в сообщении об ошибке, посмотрите на вывод:
lsof /home
и,
fuser -mv /home
Эти команды покажут вам, какие процессы имеют открытые файлы в /home
файловой системе, чтобы вы могли закрыть их.
Обратите внимание, что даже такая, казалось бы, невинная вещь, как открытие терминала/консоли с /home
текущим рабочим каталогом, приведет /home
к его использованию и остановке umount /home
.
решение2
У меня возникла эта проблема в Google Compute Engine, где я настроил /home как отдельный раздел.
В этом случае вы никогда не сможете войти в систему как root, вы должны войти в систему как пользователь, а затем переключиться на root, поэтому это никогда не было возможнымumount /home
Моим решением было войти в систему как обычный пользователь.
ssh myuser@myvm
Затем, оказавшись внутри, я переключился на root-пользователя и закрыл свою сессию следующим образом:
cd /
exec sudo su
Сначала я перешел в корневую папку на случай, если моя домашняя папка пожалуется на то, что она используется. Затем я заменил текущую сессию bash на сессию root, добавив exec
кsudo su
Теперь я смогу umount /home
без проблем.
решение3
Поскольку сообщение об ошибке предполагает, что нужно запустить lsof
или , fuser
чтобы увидеть, какой процесс использует /home
, вам следует попробовать:
$ fuser -v /home/
USER PID ACCESS COMMAND
/home: root kernel mount /home
С lsof
выходом может быть дольше.
Простое решение для вас — попытаться изменить /etc/fstab
монтирование /home
на другой раздел. Что-то вроде этого:
/dev/sdb3 /home ext4 defaults,noatime 0 2
Обязательно прокомментируйте или удалите старую запись, перезапустите и посмотрите изменения.
решение4
Другая идея — перезагрузиться с помощью диска восстановления, получить root-shell, смонтировать все разделы, а затем выполнить cp -r старых данных в новое местоположение, затем выполнить синхронизацию и размонтировать все разделы и перезагрузиться. Кстати, вы также можете изменить таблицу /etc/fstab, чтобы сделать все так, как вам нужно на смонтированном корневом разделе (не в спасательном /etc/fstab).
Затем перезагрузите компьютер и все будет хорошо.