Який найпростіший спосіб злити / та / додому?


15

У мене є окремі /і /homeрозділи, з яких обидва використовують ext4 як свою файлову систему.
Як я можу їх об'єднати, і який найпростіший спосіб?


2
Мені відомо лише про використання GParted та живий компакт-диск. Змініть розмір мого / домашнього, а потім розгорніть /. Перемістіть /homeфайли в /і, нарешті, видаліть /homeі розгорніть /.
Apache

1
Я б сказав, скопіюйте / /homeстворіть резервну копію всього свого на зовнішній диск, перевстановіть Ubuntu за допомогою одного розділу, а потім скопіюйте свій будинок назад.
Marius

@Marius, виявляється, те, що я написав, працює чудово. (Про що htorqueйдеться у його відповіді.) Тож я прийму його. :)
Apache

Відповіді:


13

Я не думаю, що існує простіший спосіб. Вам потрібно скопіювати дані з одного розділу в інший. Потрібно видалити старий домашній розділ і змінити розмір кореневого розділу. Це неможливо зробити в запущеній системі, тому живий компакт-диск або USB здаються настільки ж хорошими, як і у нього.

  • Завантажте живий CD / USB.
  • Встановіть кореневий розділ до /mnt/root.
  • Монтуйте домашню перегородку на /mnt/oldhome.
  • Скопіюйте дані за допомогою rsync:

    sudo rsync -avz --hard-links --numeric-ids /mnt/oldhome/ /mnt/root/home
    
  • Відкрийте /mnt/root/etc/fstabта видаліть запис для домашнього розділу.

  • Демонтуйте кореневий та домашній розділ та перезавантажте систему. Якщо все працює, як очікувалося, ви можете перезавантажити його знову в живій системі, а потім:
  • Відкрити Gparted.
  • Видаліть старий домашній розділ, змініть розмір кореневого розділу.

Це повинно бути.


1
Є кілька вдосконалень, які можна зробити для цієї команди rsync. Перш за все, ви хочете нахилити косу рису в кінці шляху, або ви опинитеся в старому будинку в домашній папці. Ви також можете додати --hard-links, якщо у вас є хтось із тих, хто недоступний. Щоб бути на захищеному боці - чисел-ідентифікаторів також не зашкодить, залежно від того, що знаходиться в / etc / {passwd, group} на Live CD.
andol

Крім того, чи справді ви очікуєте великої користі від стиснення під час локальної rsync?
andol

Спасибі. Я додав їх до вищезгаданого дзвінка rsync.
qbi

@andol: Спасибі, я був занадто неохайний зі своєю відповіддю. Що стосується локального стиснення: так, я побачив деяке збільшення продуктивності, тому поки не буде досягнуто жодної ефективності, я схиляюсь до включення стиснення.
htorque

Хороша відповідь, але кілька зауважень: --hard-linksможе бути скорочено до просто -H, -zне було б бажано / ефективно для локальних файлових систем і --numeric-idsне матиме жодного впливу на локальну файлову систему (те, що знаходиться в / etc / passwd на інших інших дисках, не мало би ефекту при запуску локально).
thomasrutter

0

Я не знаю про найпростіший чи найкращий підхід, але ось як би це зробити. Я просто створив би папку, /а потім скопіював би всі дані з /homeнеї. Тоді я перезавантажувати систему з допомогою Live CD і видалити розділ для /homeі перейменувати папку , яку я створив в /до homeа потім видалити запис для /homeв Fstab. І останнім кроком було б змінити розмір мого кореневого розділу, щоб споживати порожній простір, створений видаленням розділу для / home.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.