По умолчанию в RHEL 9 и производных дистрибутивах создаётся два LVM-раздела с XFS - / и /home. Задача - убрать раздел /home и расширить на освободившееся место корневой раздел, так чтобы остался один большой корневой раздел.Включаем возможность входа с правами root в sshd. В /etc/ssh/sshd_config:
PermitRootLogin yes
Перезапускаем sshd и перезаходим напрямую под root, без промежуточных пользователей:
systemctl restart sshd
ssh root@hostИмеющиеся разделы:
df
/dev/mapper/almalinux_desktop--481dr30-root 73334784 19606796 53727988 15% /
/dev/mapper/almalinux_desktop--481dr30-home 416977996 48002116 368975880 12% /homeСоздаём в корне новый домашний каталог и переносим в него содержимое /home:
mkdir /home2
rsync -a /home/ /home2/Закрываем сеансы всех пользователей и завершаем все процессы, которые могут использовать файлы в /home.
Отмонтируем старый /home и переименовываем новый:umount /dev/mapper/almalinux_desktop--481dr30-home
rm -f /home
mv /home2 /homeКомментируем в /etc/fstab запись для /home
/dev/mapper/almalinux_desktop--481dr30-root / xfs defaults 0 0
# /dev/mapper/almalinux_desktop--481dr30-home /home xfs defaults 0 0Находим к какому физическому разделу привязаны логические тома LVM:
dmesg| grep nvme0
nvme0n1: p1 p2 p3
grep -r "nvme0n1" /etc/lvm
...device = "/dev/nvme0n1p3"
Удаляем LVM-раздел для /home:
lvremove /dev/mapper/almalinux_desktop--481dr30-home
Расширяем размер корневого раздела, используя всё свободное пространство:
lvresize /dev/mapper/almalinux_desktop--481dr30-root /dev/nvme0n1p3
Расширяем файловую систему XFS до новых границ раздела LVM (можно делать это на лету без отмонтирования и перемонтирования в режим только для чтения):
xfs_growfs -d /dev/mapper/almalinux_desktop--481dr30-root
Было:
/dev/mapper/almalinux_desktop--481dr30-root 73334784 49606184 23728600 68% /Стало:
/dev/mapper/almalinux_desktop--481dr30-root 490516480 52516220 438000260 11% /
Блокируем возможность входа с правами root в sshd. В /etc/ssh/sshd_config:PermitRootLogin no
Перезапускаем sshd и проверяем:
systemctl restart sshd
ssh host
URL:
Обсуждается: http://www.opennet.dev/tips/info/3265.shtml
Героическое создание самому себе проблем для их преодоления?
Просто меняем настройки при установке и забиваем на "умолчания".
> Героическое создание самому себе проблем для их преодоления?причем от авторов "selinux изобрели ВРАГИ (то ли дело весь остальной rhel - его точно друзья!) нам на погибель!" (иначе его ждал бы очень занятный сюрприз)
> Просто меняем настройки при установке и забиваем на "умолчания".
ну тут тоже конечно хочется пере...ть индусов rhbm поленом по хребту за их идиотские умолчания.
Причем попытка просто использовать --nohome приведет к созданию совершенно феерично бесполезного xfs volume на 50G и игнорированию всего остального диска.
> причем от авторов "selinux изобрели ВРАГИ (то ли дело весь остальной rhel - его точно друзья!) нам на погибель!" (иначе его ждал бы очень занятный сюрприз)Причем делов-то, поставить метку на /home вручную, а остальное перенести. Ну или fixfiles relabel...
> ну тут тоже конечно хочется пере...ть индусов rhbm поленом по хребту за
> их идиотские умолчания.Ну вообще это вкусовщина совершенно. У меня например обратная претензия: я за то чтобы всегда выкидывать /var и /var/log на отдельные партиции, ну и куда софт будет ставится в будущем тоже (/opt, /srv, /var/lib/docker или что там в каждой конкретной ситуации, обычно один из них). Спасало очень много раз, когда переполнение логов например не приводит к переполнению /var, а переполнение / так же не приводит к переполнению /var.
> Причем попытка просто использовать --nohome приведет к созданию совершенно феерично бесполезного
> xfs volume на 50G и игнорированию всего остального диска.Ну так для автоэкстенда там другой ключик есть.
> Причем делов-то, поставить метку на /home вручнуюэто просто маркер - раз не поставлено, значит это один из ЭТИХ.
> Ну вообще это вкусовщина совершенно.
нет. Это во-первых очевидно - баг. Неисправляемый уже больше десяти лет. Что как бы говорит о многом (т.е. на самом деле о том что пирожник никогда не ест своих пирожков).
> я за то чтобы всегда выкидывать /var и /var/log на отдельные партиции
Поверь, после примерно сотого сервера, причем админом там не ты, и что и как там работает ты либо не знаешь совсем, либо знаешь в общих чертах - тебе это расхочется. Выяснять /var/lib/docker там переполнится сегодня, или что.
И захочется тебе предоставить установщику разгребать все это автоматически и при твоем минимальном участии. Но нет - он этому обучен только при беглом погляде. В деталях все плохо.
> Ну так для автоэкстенда там другой ключик есть.
нету. ЛИБО ты получаешь 50G с полностью автоматическим разбиением, что годится только для мелких и одноразовых поделок, либо ты получаешь 40G и все остальное совершенно ненужный на 99.9% серверов вообще /home, либо ты не пользуешься autopart вообще, каждый раз создавая вручную нужные тебе разделы, вручную заводя на них тома lvm (причем autopart так же автоматически включит в их названия имя сервера, что опять же очень здорово когда их много, а вот тебе либо каждый раз править, либо плюнуть и назвать их "rhbm", в автоматике такое не предусмотрено) и вручную распределяя по ним fs. Только в этом случае можно написать "--grow" - причем снова только одному разделу (если уж ты любишь много разделов - ты бы наверное хотел что-то вроде "30% этому, 20 тому, остальное вон туда", а не намертво захардкодить везде мегабайты. И lvm так умеет без необходимости вручную считать каждый раз байтики... а anaconda - нет.)
Отличное решение проблемы.
Почему все так rsync любят? Чем cp -a не угодил?
Rsync работает быстрее. По крайней мере с дефолтными параметрами. Да и можно сэкономить время, если команда прерывается.
Корректно пермишены переносит.
А cp-то с опцией -a (которая включает --preserve=all) некорректно?Не, если у вас фряха или там солярис, я могу еще понять. Но у вас же RHEL, там GNU cp, он все переносит.
> Находим к какому физическому разделу привязаны логические тома LVMИмхо, лучше до отмонтирования запустить `lsblk`, даже root не нужен. Может даже стоит с этого начать статью, чтобы было видно, что там как размечено.