Linux как отмонтировать home

Обновлено: 01.07.2024

Первое что необходимо сделать, это создать сами разделы.
В моём случае это был раздел /dev/sda3 находящийся на системном диске и раздел /dev/sdb1, который занимал весь второй диск.

Монтируем оба раздела. Для этого в /mnt создадим точки монтирования.

Смотрим что получилось

Далее устанавливаем специальную утилиту mhddfs, которая и позволит нам объеденить оба эти раздела в один.

Монтировать оба раздела будем в директорию в /home.
Для этого выполним:

Всё смонтировалось и в итоге мы имеем вместо двух раздельных точек монтирования размером 826Гб и 917Гб, одну объёмом 1.8Tб.

В оригинальной статье использовалась опция монтирования -o allow_other, которая позволяет иметь доступ к разделу другим пользователям, но мне она не нужна, потому что пользователь в системе один.

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

И теперь подправим /etc/fstab добавив в него следующие строки:

mlimit=10G показывает, что на любом из разделов должно оставаться не менее 10 гигабайт свободного места. Это значит, что если свободного места останется 10 гигабайт, то на этот раздел больше не будет производиться запись.

И теперь осталось проверить всё ли мы правильно прописали в fstab. Делаем:

Ошибок нет, следовательно всё в порядке. Проверяем:

Всё на месте, задача выполнена. Для уверенности можете перезагрузить систему.

И кстати, копировать файлы можно как в объединённую директорию /home, так и в директории /mnt/sda3 или /mnt/sdb1. Файлы всё равно появляются в /home как будто они лежат на одном разделе. Причём подмечено, что если копировать в /home, то файлы копируются на раздел, который находится первым в порядке монтирования, то есть на sda3. Предполагаю, что это будет происходить до тех пор, пока не будет достигнут лимит в 10 Гб, и только затем файлы начнут копироваться на sdb1.

CityCat4

Просто расширить том LVM несложно. Но вот освободить в нем место - это уже посложнее будет.

Кстати, НЕ ЛЕЗЬТЕ в тома LVM c помощью редакторов разделов! (gparted, partition magic, acronis и иже с ними) - угробите все нахрен.

Сначала нужно освободить место в /home. А это непросто, потому что система даст урезать том только в том случае, если блоки не используются. Потом освободившееся место приписать другому тому.

На словах все просто. На деле будет долгое и вдумчивое чтение документации по LVM, полный бэкап данных (потому что шанс при неаккуратном обращении с командами управления томами угробить все не просто высок - он охренительно высок!), и уже потом пробовать что-то сделать. Получится не сразу :) поэтому если есть возможность и нет времени - лучше попросите кого-нибудь.

т.е. lvm не дает свободы в распределении диска ??
а то с год назад я так плавно перенес кучу барахла с ntfs на ext4, копировал на ext4 а потом в оффлайне gparted менял размеры разделов с онными файловыми системами. за пять итераций все получилось.

CityCat4

pfg21, дает относительную свободу. Урезать задействованные блоки она не даст - скажет чтобы сначала перенес. Основное ее достоинство - для перемещения данных не нужно стопить сервер. Ведь раньше как - сервер остановить, загрузиться с носителя, запустить gparted/acronis, переместить-расширить-обрезать. LVM позволяет вот это вот "переместить-расширить-обрезать" делать не останавливая сервера. CityCat4, в таком случае(бэкапы мы и так делаем) не проще-ли будет форматнуть диск, перенарезать разделы и развернуть бэкапы уже на новые разделы? это вопрос, не ответ.

CityCat4

fpir, если есть возможность остановить сервер - можно делать все что угодно. Но такая возможность есть не всегда. CityCat4, т.е. на остановленном сервере, под гостевой осью никаких изменений нет, тот-же gparted актуален? тогда, мне кажется, Вы некорректно выразились. Стоило написать что-то типа: В фс ext4 появилась возможность двигать разделы прямо на живом сервере, но к этой возможности следует подходить осторожно и т.д по тексту. ИМХО.

CityCat4

fpir, Нет. У LVM своя структура, передвинув раздел с /dev/sda на /dev/sdb например, Вы все нафиг поломаете

mindtester

в общем случае, для любого линукса, обычно все просто делается с лайв носителя, gparted или patrtitionmanager, если кеды
.. это именно на случай простой разметки, без LVM (хотя.. возможно и с LVM все будет так же просто. почти как в акронисе)

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

pps и да - резервное копирование важных данных крайне желательно ДО

ppps запасной вариант (для чайников, но почему бы и нет?) - с лайва (под рутом):
- каментим строку home в /etc/fstab
- создаем в руте папку home
- rsync/grsync/и даже mc - мувивм хомяка
- убиваем раздел хомяка
- расширяем рут до физического предела (утилиты упомянуты выше)
. но ни когда не забываем о резервных копиях всего важного, прежде чем начать мясорубку..

Кстати, НЕ ЛЕЗЬТЕ в тома LVM c помощью редакторов разделов! (gparted, partition magic, acronis и иже с ними) - угробите все нахрен.

- акронис упомянут вообще для сравнения (и аналогия вполне уместна, см следующий пункт, все в гуях, но все работает), partition magic не упоминался вообще
- а вот кдешный patrtitionmanager прекрасно справился (kubuntu 18.04.* по крайней мере. LVM рзадел показан на физическом девайсе - мув/ресайз (не не менее контента конечно), а его подтома показаны уже как на отдельном девайсе - мув/ресайз велкам (опять же в пределах размера LVM тома)), так что не надо крошить батон в компот (при этом, обычно, gparted, во всяких блогах, часто заявляется более продвинутым, но сам это уже не проверял)

martin74ua

Центос ставится на LVM по умолчанию.
Ищите, как расширить LVM раздел.


Ресайз в оффлайне требуется только в каких-то хитрых случаях.

. например в случае уменьшения раздела, проверки fsck или некоторого тюнинга. Ну хорош тупить. Без оффлайна никуда.

Deleted ( 20.11.18 10:40:24 )
Последнее исправление: Deleted 20.11.18 10:41:02 (всего исправлений: 1)

Кто-нибудь знает, как понять, почему оно не срабатывает? Initrd генерится корректный, но после ребута ничего не происходит. Как логгировать выхлоп initrd? Эти скрипты вообще отрабатывают и чего им не хватает? (ROOT я задал, локально оно работает).

Deleted ( 20.11.18 10:42:57 )
Последнее исправление: Deleted 20.11.18 10:44:30 (всего исправлений: 1)

Так он шринкнуть хочет.

Deleted ( 20.11.18 10:44:56 )
Последнее исправление: MyLittleLoli 20.11.18 10:45:28 (всего исправлений: 1)


Про тюнинг и fsck - это да. А вот про уменьшение - никогда не приходилось пробовать.

А lsof что-нибудь, может, говорит про oldroot?

не, так же молчит, ниодного упоминания


fuse дает такой эффект


А перезагружаться по условиям челленжа можно?

Если да, то в grub'е переходишь в режим редактирования, в параметрах ядра указываешь break=premount, запускаешь загрузку. Она останавливается до этапа монтирования. В открывшемся шеле запускаешь vgchange -ay , затем временно монтируешь корневой раздел куда-нибудь, копируешь с него resize2fs к себе, вместе с библиотеками, которые будет просить при запуске. Потом отмонтируешь корневой раздел, и уже меняешь размер ФС на корневом разделе.

теперь я кажется понял, почему Отмонтирование корневого раздела наживую (комментарий) не срабатывал. надо делать vgscan;vgchange -ay. Ребутать можно, доступа физического нет.

На досуге надо будет вернуться, ибо сейчас решено тупо добавлением диска.

Прошу подсказать, есть ли способ в моем случае изменить размер /home напр. до 10ГБ, не прибегая к загрузке с Livecd, на живой системе без потери данных?

Filesystem Size Used Avail Use% Mounted on

devtmpfs 32G 0 32G 0% /dev

tmpfs 32G 0 32G 0% /dev/shm

tmpfs 32G 26M 32G 1% /run

tmpfs 32G 0 32G 0% /sys/fs/cgroup

/dev/sda2 30G 3.0G 27G 11% /

tmpfs 32G 90M 32G 1% /tmp

/dev/sda5 2.0G 1.2G 613M 67% /var

/dev/sda3 2.0G 508M 1.3G 28% /home

/dev/sda7 2.9G 105M 2.7G 4% /var/log

/dev/sda6 2.0G 6.1M 1.8G 1% /var/tmp

/dev/sda1 497M 173M 325M 35% /boot

/dev/sda8 988M 38M 884M 5% /var/log/audit

Может через последовательность команд для моих разделов это возможно?: umount resize2fs lvresize mount


Однако геморный это вариант, LiveCD будет даже быстрее, даже со скачиванием образа с сайта.

Korchevatel ★★★★★ ( 20.01.20 00:46:24 )
Последнее исправление: Korchevatel 20.01.20 00:47:42 (всего исправлений: 2)

После изменения ещё и UUID раздела поменяется и fstab отвалится. Но это не точно.

не прибегая к загрузке с Livecd, на живой системе без потери данных?

Логаут-то полюбасу делать.

есть ли способ в моем случае изменить размер /home напр. до 10ГБ

А есть место свободное где-то на диске? Или надо другой раздел уменьшить предварительно?

А у вас там LVM разве?

Самый простой вариант - подмонтировать куда-то в /home другой раздел, например у вас в /home/foobar валится весь тот хлам, что должен взлезть в 10Gb - берете новый кусок диска и в этот каталог и монтируете. Если нужно вот прям сам /home увеличить - лучше таки запланируйте даунтайм.


Недостаточно данных. Нет информации о схеме разметки на диске непосредственно.

Читайте также: