umount /home не работает

umount /home не работает

Я пытаюсь объединить свой отдельный раздел /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).

Затем перезагрузите компьютер и все будет хорошо.

Связанный контент