LINUX.ORG.RU

LVM размышления


0

0

В Talks, потому что срочно.

Ставлю систему, один жёсткий диск. Решил сделать на основе LVM. Расклад:

/boot - EXT3 64 MB
/swap - 2 GB
/root - EXT3 1 GB
LVM - rest

Проблема в следующем. Директории /usr, /opt, /var, /tmp, /home не должны попасть на /root. Но при этом я не хочу создавать под каждый из них раздел, ибо привычка выделять место с запасом под флуктуации свободного пространства.

То-есть что я делаю. Создаю один раздел под /usr и /opt и монтирую его, к примеру, в /mnt/usr_opt. После чего нужно создать жёсткие сылки:

/usr -> /mnt/usr_opt/usr
/opt -> /mnt/usr_opt/opt

Мысли идут в верном направлении?

Перемещено JB из Talks

★★★★★

>Директории /usr, /opt, /var, /tmp, /home не должны попасть на /root. Но при этом я не хочу создавать под каждый из них раздел

А потом будешь искать дефрагментатор?

wfrr ★★☆
()
Ответ на: комментарий от mutronix

> для директорий нельзя создавать жесткие ссылки

Ну да, это меня занесло. Тем более между разделами. То-есть я создаю символические ссылки, верно?

Dendy ★★★★★
() автор топика
Ответ на: комментарий от Rubystar

> mount --bind вполне подойдёт для этих целей, думаю.

Согласен. Меня интересует мыслю ли я вообще в верном направлении. И если да, то как осуществить эти операции внутри графического инстяллятора.

Dendy ★★★★★
() автор топика

> /boot - EXT3 64 MB

Вот это снаружи, остальное в LVM. Или, лучше, все в LVM, если GRUB 1.9x осилишь вместо некрофилии.

> Но при этом я не хочу создавать под каждый из них раздел

Можно смонтировать и решить симлинками, можно unionfs/aufs поверх корня, можно смонтировать, скажем, в initramfs и там же собрать новый / руками (см. --bind и вообще mount namespaces), тем более что ты его, по сути, и собираешь, а потом переключаешься через pivot_root, это чтобы без симлинков.

> монтирую его, к примеру, в /mnt/usr_opt

И, да, выучи FHS.

anonymous
()

>Но при этом я не хочу создавать под каждый из них раздел, ибо привычка выделять место с запасом под флуктуации свободного пространства.

[censored], а LVM зачем тогда?

Тебе разделов жалко что-ли?

$ df -hT
Filesystem                  Type  Size  Used Avail Use% Mounted on
/dev/sda1                   ext3  130M   43M   81M  35% /boot
/dev/mapper/vg0-root64      xfs   500M  305M  195M  62% /
/dev/mapper/vg1-home        xfs   15G   12G   3.7G  76% /home
/dev/mapper/vg0-usr64       xfs   3.1G  2.7G  387M  88% /usr
/dev/mapper/vg0-var64       xfs   764M  333M  431M  44% /var
/dev/mapper/vg1-donkey      xfs   60G   22G   39G   37% /home/donkey
/dev/mapper/vg1-multimedia  xfs   20G   15G   5.7G  72% /home/multimedia
/dev/mapper/vg1-virtual     xfs     10G  6.6G  3.4G  66% /home/virtual
/dev/mapper/vg1-iso         xfs     30G   14G   17G  47% /home/sergey/iso
/dev/mapper/vg1-genesis     xfs    2.0G  1.4G  661M  68% /home/genesis
/dev/mapper/vg0-openvz      xfs     14G  1.1G   13G   8% /var/lib/vz

sdio ★★★★★
()
Ответ на: комментарий от wfrr

> А потом будешь искать дефрагментатор?

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

Dendy ★★★★★
() автор топика
Ответ на: комментарий от Dendy

Я так понял, ты хочешь создать один раздел в LVM, а в нем директории /usr, /opt и т.д. и связать их с корнем, так чтоли? Внимание вопрос: нафейхуа тебе тогда вообще LVM?

mutronix ★★★★
()
Ответ на: комментарий от sdio

> [censored], а LVM зачем тогда?

LVM предназначен не только для изменения размеров разделов. Хотя да, мне будет спокойно спать, если буду знать что можно откусить лишний гигабайт от /home, но разве что в критичном случае. Но не делать же эту операцию на каждый чих, нехватает лишних 100 Мб - пошёл двигать разделы. Поэтому с запасом.

> Тебе разделов жалко что-ли?

Жалко. Винт маленький. Не хочу чтобы накладные расходы на запас пространства (см. выше) были пропорциональны количеству разделов.

Dendy ★★★★★
() автор топика
Ответ на: комментарий от Dendy

>Но не делать же эту операцию на каждый чих, нехватает лишних 100 Мб - пошёл двигать разделы.

Почему нет? Две команды без отрыва от производства.
# lvextend ...
# $FS_growfs ...

sdio ★★★★★
()
Ответ на: комментарий от mutronix

Зачем - описал вкратце выше. Запас места на разделе обязан быть, верно? Я ж не знаю сколько юзер захочет поставить в /usr и насколько может флуктуировать /tmp. Поэтому выделяю сразу под максимально возможное, на глаз. А LVM в том числе и потому, что на глаз легко ошибиться и если я через год захочу двинуть разок раздел - сделать это будет легко и приятно.

Dendy ★★★★★
() автор топика
Ответ на: комментарий от Dendy

>можно откусить лишний гигабайт от /home

Откусывать от раздела -- извращение. просто не надо все доступное пространство сразу распределять между разделами, надо иметь запас

$ sudo vgdisplay | grep 'Free PE'
vg0 Free PE / Size 12775 / 49.90 GB
vg1 Free PE / Size 36451 / 142.39 GB

sdio ★★★★★
()
Ответ на: комментарий от sdio

> Почему нет? Две команды без отрыва от производства.

Если в процессе производства необходимы подобные операции - лучше выделить место заранее. Под самый плохой случай, но без фанатизма. Считаю, что двигать разделы нужно лишь в редких случаях. LVM даёт возможность исправить неверный размер раздела на этапе проектирования. Тем более что компьютер не мой.

Отвлеклись от темы. Я верно понимаю, что если в графическом инсталляторе (openSUSE 11.1) этого не предусмотрено, то создание разделов стоит делать на другой машине?

Dendy ★★★★★
() автор топика
Ответ на: комментарий от Dendy

>через год захочу двинуть разок раздел - сделать это будет легко и приятно.

Это будет не легко и неприятно
Если весь VG распределен еще год назад, то придется перераспределять (уменьшать) размеры ФС, а это опасная операция

sdio ★★★★★
()
Ответ на: комментарий от sdio

Спасибо за пример. Но компьютер не мой, постоянно менять размеры там никто не будет, поэтому место нужно распределить заранее. Кроме того у меня паранойя, мне кажется что фрагментация экстентов (со временем) по всему блину жёсткого диска - не совсем удачная идея. Или фобии напрасны?

Dendy ★★★★★
() автор топика
Ответ на: комментарий от sdio

> Почему нет? Две команды без отрыва от производства. > # lvextend ...

А на диске потом не будет веселый слоеный бутерброд? LVM умеет само, если есть возможность, «дефрагментироваться».

anonymous
()
Ответ на: комментарий от anonymous

Ну по 100М глупо дергаться, для активно растущих разделов.
А если и будет 10 областей на диске каждая по 2Г, например, то что?

sdio ★★★★★
()
Ответ на: комментарий от Dendy

Может у меня и кривые руки, но идея накрылась медным тазом. Инсталлятор openSUSE 11.1 (красивый, спору нет) отказался признать, что у меня хватает места установить необходимые программы. Кнопки игнорировать это предупреждение я не увидел. Возможности сделать монтирование с помощью --bind после форматирования нет. Символические ссылки в корне это чудо проверять не стало. В итоге чтобы инсталлятор остался доволен пришлось делать отдельные LVM разделы под каждую точку монтирования. Буду править уже после установки.

Всем спасибо.

Dendy ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.