Перейти к содержимому

Как переместить домашнюю папку в linux

  • автор:

Как перенести папку home на другой диск?

Сейчас появился второй жесткий диск, как правильно на него перенести папку /home чтоб не какие программы не поломались?

  • Вопрос задан более трёх лет назад
  • 28979 просмотров

Комментировать
Решения вопроса 0
Ответы на вопрос 2

Xuxicheta

пусть /dev/sda1 это ваш старый диск и раздел
а /dev/sdb1 — новый, отформатированный раздел, куда вы хотите перенести /home

mkdir /mnt/newhome && mount /dev/sdb1 /mnt/newhome rsync -a /home /mnt/newhome

Проверяете все ли нормально перенеслось.

редактируете /etc/fstab
там ищете старый хоум, или если его нет вписываете что-то вроде

/dev/sdb1 /home ext4 defaults 0 1

Нужно чтоб адреса и тип ФС были правильными.
После чего
mount -a
Ответ написан более трёх лет назад
Нравится 9 5 комментариев

kotov666

. , @kotov666 Автор вопроса

Вот так у меня fstab выглядит:
# /etc/fstab: static file system information.
#
# Use ‘blkid’ to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
#
# / was on /dev/sda3 during installation
UUID=3a7d9cb3-80a0-40dd-bd8f-1193c86e9b26 / ext4 errors=remount-ro 0 1
# /boot/efi was on /dev/sda1 during installation
UUID=49E7-3A3F /boot/efi vfat umask=0077 0 1
# swap was on /dev/sdb3 during installation
UUID=26bce490-9995-4577-b6bb-8a78f38b1ab8 none swap sw 0 0

Тут еще UUID прописаны

Xuxicheta

Денис Котов: можно указать устройство через UUID, можно через адрес в /dev
UUID более надежно и точно указывает устройство, но если не перетыкать туда сюда диски адрес в /dev не изменится.

Как переместить домашнюю папку в linux


Next: Удаление файлов и каталогов Up: Работа с файлами Previous: Копирование файлов и каталогов Contents Index

Чтобы переместить файл в другое место или изменить его имя, используйте команду mv («move»). Она принимает два аргумента: имя файла или каталога для перемещения, а затем имя пути для перемещения. Если Вы перемещаете файл в каталог, в котором уже есть файл с таким именем, то он будет перезаписан.

Чтобы переместить файл `notes’ из текущего рабочего каталога в каталог `../play’, наберите:

$ mv notes ../play [Enter]

Если в родительском каталоге текущего каталога нет подкаталога `play’, эта команда переместит файл `notes’ в родительский каталог и переименует его в `play’.

Чтобы переместить файл или каталог, который не находится в текущем каталоге, укажите в качестве аргумента его полное имя и путь.

Чтобы переместить файл `/usr/tmp/notes’ в текущий рабочий каталог, введите:

$ mv /usr/tmp/notes . [Enter]

Чтобы переместить каталог, укажите путь к каталогу, который нужно переместить и путь к каталогу-приемнику.

Чтобы переместить каталог `work’ из текущего рабочего каталога в каталог `play’, введите:

$ mv work play [Enter]

Если каталог `play’ уже существует, mv поместит `work’ внутрь `play’ — эта команда не перезаписывает каталоги.

Переименование файла — это то же самое, что и его перемещение; просто укажите в качестве аргументов файл для переименования и его новое имя.

Чтобы переименовать файл `notes’ в `notes.old’, введите:

$ mv notes notes.old [Enter]

Alex Otwagin 2002-12-16

K210.ORG

после прочтения статьи об оптимальной разметке диска http://ubuntologia.ru/partitioning-recommendations, решил вынести /home на отдельный диск. Немного погуглив, напоролся на 2 статьи http://www.ubuntu4life.com/node/30 и http://www.psychocats.net/ubuntu/separatehome, которые были взяты мной за основу. Ниже, непосредственно, описан мой личный опыт, поэтому что то может не совпадать с исходными статьями. И так начнем:
Каким образом выделить диск и отформатировать в нужную вам файловую систему я пропущу, об этом есть статья на убунтологии http://ubuntologia.ru/prepare-computer.

Диск создан. Теперь создадим папку, в которую будем копировать наши файлы и примонтируем туда наш новосозданный диск. Для себя я выбрал ext3, а вы выбирайте на свой вкус. Соответственно, если вы выберете ext4 или что либо другое, то, необходимо будет внести соответствующие правки в команду.

$sudo mkdir /mnt/newhome
$sudo mount -t ext3 /dev/sda4 /mnt/newhome

ВНИМАНИЕ, у вас диск (sda4) может иметь другое название .
Перейдем в нашу домашнюю директорию и скопируем все содержимое

$cd /home/
$find . -depth -print0 | sudo cpio —null —sparse -pvd /mnt/newhome/

Обязательно убедитесь, что все скопировано правильно.
Теперь размонтируем диск

$sudo umount /mnt/newhome

Создадим бэкап, путем переноса всего содержимого.

$sudo mv /home /old_home

И так как папка перенеслась, создадим папку home по новой.

$sudo mkdir /home

Монтируем новый home

$sudo mount /dev/sda4 /home

Не забываем изменить sda4, согласно своего диска
Проверяем, все ли в порядке с нашим новым home
Теперь укажем, системе на новый /home
Открываем файл fstab вашим любимым тестовым редактором (в моем случае gedit).

sudo gedit /etc/fstab

И добавляем в конец эту строчку (не забываем заменить sda4 на свой)

/dev/sda4 /home ext3 nodev,nosuid 0 2

Сохраняем и выходим.
Перед перезагрузкой убедитесь, что ваш новый /home примонтирован и работает.

Теперь самое время поговорить о подводных камнях.
После перезагрузки, вы столкнетесь с проблемой, права доступа будут нарушены. Ниже решение данной проблемы.
При загрузке системы, выбираем recovery mode, как на картинке

Затем

После чего вводим следующее

chown -R username:username /home/username
chmod 644 /home/username/.dmrc
chmod 644 /home/username/.ICEauthority
exit

Вместо username вводим свое имя пользователя
Последний шаг данной процедуры

Вот результат моих действий

Если все грузится нормально, и вы довольны результатом делаем последний рывок, а именно удаляем наш бэкап (но если не хотите, можете оставить все как есть)

sudo rm -rf /old_home

Все.
Еще раз обращаю внимание на то, что здесь полностью описан проделанный мною процесс. Я не испробовал на себе функцию восстановления бэкапа, который описан в конце статьи из второй ссылки.

Перенос папки /home с отдельного раздела назад в корневую папку

Спросите зачем?На харде два раздела,на одном Linux OpenSuse 12.3,а на втором домашняя папка,но я хочу установить на второй Windows,но не хотелось бы терять данные и иметь две рабочие оси Везде пишут,как перенести на отдельный раздел домашнюю папку,но еще пока не встречал ни одной статье, объясняющей,как именно можно перенести обратно в корневой раздел Вся надежда на форумчан,ноутбук не мой. Буду очень благодарен тем,кто последовательно выложит все необходимые команды для терминала,Именно команды,ибо из фразы «нужно размонтировать и заново смонтировать» я не извлеку ничего полезного Заранее спасибо:3 И если оффтоп тоже извините

TheGoshka
10.07.16 14:13:38 MSK

Буду очень благодарен тем,кто последовательно выложит все необходимые команды для терминала

Для начала покажи вывод команд

lsblk lvdisplay pvdisplay vgdisplay 

anonymous
( 10.07.16 14:15:58 MSK )

mkdir -p /heroin
mv /home/* /heroin

mv /heroin /home

Reedych ★☆
( 10.07.16 14:21:43 MSK )
Ответ на: комментарий от anonymous 10.07.16 14:15:58 MSK
TheGoshka
( 10.07.16 14:31:13 MSK ) автор топика
Ответ на: комментарий от Reedych 10.07.16 14:21:43 MSK

Ненене. Надо уточнить, что делать такое надо зайдя из под рута (лучше консоль, но можно и в графику) или с загрузочного диска. Наживую переносить — не самая лучшая.

То есть, инструкция ТС. Заходишь тем или иным способом как root — в менеджере входа, либо с виртуальной консоли — потыкать Alt+Ctrl+F1..F12 и где будет консоль, ввести root и пароль. Из основного при этом надо выйти, а лучше перезагрузиться и зайти только в root.

Только после этого можно делать

После этого создаём где-нибудь в / директорию

cd / mkdir tmpdir/ 

Дальше копируем содержимое /home в неё

cp -R /home/* /tmpdir 

Потом — размонтируем /home

umount /home 

Затем перемещаем нашу содержимое нашей временной папки

mv /tmpdir/* /home 

Дальше — открываем файл /etc/fstab. Лучше всего это сделать через редактор nano

nano /etc/fstab 

Помощь по использованию будет на экране. Находим там все строки, где упоминается /home и закомментировываем (ставим в начало строки символ #) их. Это нужно, чтобы после перезагрузки система не пыталась примонтировать туда старый раздел с /home.

Ну, потом можно удалить директорию /tmpdir

rmdir /tmpdir 

Если ругается — значит в директории что-то ещё осталось, идём сюда выяснять причину. Ну и всё, перезагрузка. Если всё работает, кидаем сюда на всякий случай вывод (лучше всё же скопировать, а не картинкой) команды

cat /proc/mounts 

Если всё прошло хорошо, с освободившимся разделом можно делать, что душе угодно — например, форматировать и ставить туда Windows.

Все вопросы сюда 🙂

Falcon-peregrinus ★★★★★
( 10.07.16 14:45:16 MSK )
Последнее исправление: Falcon-peregrinus 10.07.16 14:46:54 MSK (всего исправлений: 2)

Ответ на: комментарий от Falcon-peregrinus 10.07.16 14:45:16 MSK

Спасибо за поправку

Reedych ★☆
( 10.07.16 14:51:11 MSK )
Ответ на: комментарий от TheGoshka 10.07.16 14:31:13 MSK

А просто скопировать из терминала или перенаправить в файл не вариант?

rezedent12 ☆☆☆
( 10.07.16 16:42:54 MSK )
Ответ на: комментарий от Falcon-peregrinus 10.07.16 14:45:16 MSK

Огромное спасибо за помощь))) Только возник вопрос по установке винды Полазив на разным форумам,я обнаружил,что некоторые люди предупреждают меня о том,что установщик винды грубо стирает grub,после чего пропадает Linux Что нужно сдлеать,чтобы такой ситуации не возникло у меня.Очень важно,ибо ноутбук рабочий,поэтому у меня на все есть только одна попытка)

TheGoshka
( 10.07.16 17:20:17 MSK ) автор топика
Ответ на: комментарий от TheGoshka 10.07.16 17:20:17 MSK

Линукс не пропадает, просто затирается загрузчик, ответственный за передачу управления системе. Избежать этого никак нельзя — виндовый загрузчик ничего не знает (и не хочет знать) про Linux. А вот линуховый GRUB как раз отлично видит Windows. Так что нужно перед установкой винды записать себе куда-нибудь загрузочный диск (Live-CD) или то же самое на флешку (Live-USB) и после установки Windows восстановить GRUB. Это сделать легко, инструкций по всему интернету много. Из под винды порекомендовал бы использовать для этой цели Rufus.

Если использовать Ubuntu в качестве загрузочного диска, то вот инструкция — http://help.ubuntu.ru/wiki/boot_repair . Сам не проверял, но должно работать и достаточно подробная.

Falcon-peregrinus ★★★★★
( 10.07.16 17:33:54 MSK )
Последнее исправление: Falcon-peregrinus 10.07.16 17:34:42 MSK (всего исправлений: 1)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *