LINUX.ORG.RU

Содержимое /etc/fstab для Gentoo

 , ,


0

3

1. Если много оперативной памяти (8G), то что можно (и полезно) примонтировать в неё кроме tmp? Конкретно для Дженты.

И имеет ли смысл отдавать больше умолчательных четырёх гигабайт?

2. Что меняет установка на ssd?

3. Мой текущий фстаб:

tmpfs      /tmp      tmpfs   nodev,nosuid         0 0
/dev/sda1  /         ext4    defaults,noatime     0 0

4. Читаю вики и хандбук, но пока не увидел зачем нужны эти две строчки:

proc       /proc     proc    defaults             0 0
shm        /dev/shm  tmpfs   nodev,nosuid,noexec  0 0

Буду признателен тем, кто ускорит мои поиски и скажет зачем они нужны (и нужны ли).



Последнее исправление: ksevelyar (всего исправлений: 2)

man fstab

// Это не направление, это прямо в консоли можно ввести.

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

первое - вирт фс ядра - оно точно надо второе - надо для многих программ

Только в fstab их не обязательно прописывать, сейчас все распространённые иниты, включая systemd, OpenRC/SysVinit и upstart монтируют /dev, /proc, /sys, /dev/pts, /dev/shm, /run и без записей в fstab, а systemd так вообще монтирует всевозможные виртуальные ФС типа debugfs и т.п.

fstab, конечно, та ещё свалка, если там и так, и так работает (это не говоря о локальных и сетевых ФС вперемешку), но я бы или вообще ни одну из вышеперечисленных ФС туда не прописывал, или прописал бы их все, а промежуточные варианты — зло.

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

поудивлялся, что без proc и shm всё работает

Потому что они монтируются и без записей в fstab.

gentoo_root ★★★★★
()

что можно (и полезно) примонтировать в неё кроме tmp?

/var/run, /var/lock. Места им много не давать, метров по 3 хватит.

Конкретно для Дженты.

/var/tmp/portage перенести в другой каталог (изменив PORTAGE_TMPDIR) и смонтировать его в tmpfs.

Что меняет установка на ssd?

В третьей колоночке напротив корня станет btrfs.

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

они монтируются openrc без прописывания в fstab
не слушай школоло выше

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

/var/run, /var/lock. Места им много не давать, метров по 3 хватит.

А зачем им ограничивать место? Если я правильно понимаю, то оперативная память общая между всем, что подмонтировано в неё.

То есть крохи из /var/run, /var/lock в любом случае много места не отнимут.

Это просто мера предосторожности?

/var/tmp/portage перенести в другой каталог (изменив PORTAGE_TMPDIR) и смонтировать его в tmpfs.

Ок, перенесу в /portage. Но зачем переносить в другой каталог? Почему нельзя примонтировать tmpfs прямо в /var/tmp/portage?

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

перенос не нужен, да
а монтировать можно и через fstab в tmpfs, а можно и скриптом-обёрткой для emerge
у меня второе, но собрать 3 gcc одновременно не получается на 8 гигах рамы, 6.3 из которых под tmpfs
потому скрипт, а не постоянное через fstab - появляется выбор

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

Если я правильно понимаю, то оперативная память общая между всем, что подмонтировано в неё.

Не совсем так, при монтировании задаётся опция size=, которая ограничивает максимальный объём памяти, который может сожрать одна конкретная tmpfs. Если примонтировать tmpfs в 5 каталогов с дефолтными опциями (size=50% ОЗУ), то получим, что в сумме возможно занять 2,5 объёма ОЗУ, т.е. всё ОЗУ и ещё много свопа (если столько хватит), что может привести к значительному ухудшению скорости работы системы из-за постоянного своппинга при определённых условиях. Поэтому лучше руками указывать, сколько какая tmpfs займёт, чтобы в сумме не получилось очень много (я бы сделал не больше размера свопа).

То есть крохи из /var/run, /var/lock в любом случае много места не отнимут.

Это если там будут крохи, но возможно всякое.

Это просто мера предосторожности?

Да, перестраховаться в любом случае нужно, чтобы какой-нибудь сервер из-за сбоя или атаки не начал создавать кучу файлов — даже если они пустые, как lock-файлы, они всё равно занимают место, поэтому может возникнуть DoS при большом размере tmpfs. Чтобы этого не случилось, нужно просто не дать создать много файлов, т.е. ограничить место. Например, в убунте по дефолту /var/lock занимает 5 метров, а /var/run — 10% ОЗУ. Я обычно /var/run ограничиваю ещё сильнее.

Но зачем переносить в другой каталог? Почему нельзя примонтировать tmpfs прямо в /var/tmp/portage?

Можно примонтировать и прямо в /var/tmp/portage, но есть 2 обстоятельства. Во-первых, содержимое /var/tmp по FHS не может быть удалено без предупреждения (в отличие от /tmp), а размонтирование /var/tmp/portage будет именно таким удалением. Во-вторых, по всей логике в /var/tmp/portage не должно быть мусора, остающегося из загрузки в загрузку (после прерывания emerge он там остаётся), поэтому очищать извне его таки надо (например, tmpfs-ом), что противоречит FHS'у, поэтому /var/tmp/portage лучше смотрится в другом месте. /tmp тоже не подходит: он может чиститься по cron, тогда сборка нарушится. Поэтому лучше выбрать отдельную точку монтирования вместо /var/tmp/portage. У меня это /build/portage, а /build монтируется с другого раздела, и там находится дерево, дистфайлы, кэш ccache, бинарные пакеты.

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

т.е. корень нам станет не нужен? о_О

Это был толстый намёк на смену ФС. И да, btrfs достаточно стабилен для корня на десктопе.

gentoo_root ★★★★★
()

В общем сделал пока так:

#tmpfs
tmpfs      /tmp                tmpfs   nodev,nosuid,size=3G          0 0
tmpfs      /var/run            tmpfs   nodev,nosuid,noexec,size=10m  0 0
tmpfs      /var/lock           tmpfs   nodev,nosuid,noexec,size=5m   0 0

#gentoo portage
tmpfs      /var/tmp/portage    tmpfs   size=5G                       0 0

#main
/dev/sda1  /                   ext4    defaults,noatime              0 0

Скрипт возьму на заметку. Пока я разбираюсь с Джентой мне будет проще fstab.

FHS

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

btrfs

Пока не упрусь в проблемы с ext4, что-то другое ставить не буду. Но на досуге почитаю о btrfs, для общего развития.

Всем спасибо за ответы и разъяснения.

ksevelyar
() автор топика

что можно (и полезно) примонтировать в неё кроме tmp?

/var/tmp

/var/lock

/var/run

ещё укажи в make.conf

PORTAGE_TMPDIR=/dev/shm

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

Во-первых, содержимое /var/tmp по FHS не может быть удалено без предупреждения

да пофигу на FHS, в /var/tmp ничего ценного нет

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

да пофигу на FHS

<немного_ненужной_статистики>

Если усреднить всех лоровцев, то странная картина получается: часть кричит, что на FHS пофиг, а часть гонит на Поттеринга за то, что он нарушает FHS при том, что это неправда. Причём один и тот же человек в зависимости от ситуации может кричать либо то, либо другое.

</немного_ненужной_статистики>

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

Причём один и тот же человек в зависимости от ситуации может кричать либо то, либо другое.

если это намёк на меня, то ты ошибся - я FHS никогда в грош не ставил

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

если это намёк на меня

Нет, не на тебя. На личности я не переходил. Я про тот контингент, который кричит о ненужности systemd (казалось бы, при чём он тут?), но при этом сам разводит срач у себя в ФС.

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

да пофигу на FHS, в /var/tmp ничего ценного нет

У меня там кэш ccache. Не то, чтобы ценная вещь, но просто так удалять я бы не стал.

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

Это просто мера предосторожности?

Да. И ещё вариант словить каких-нибудь глюков на ровном месте, когда их не ждёшь в случае если переусердствовать с ограничением. Поэтому да, можно не ограничивать. Они не займут памяти больше, чем туда напишется.

Почему нельзя примонтировать tmpfs прямо в /var/tmp/portage?

Можно монтировать и без переноса.

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

Во-первых, содержимое /var/tmp по FHS не может быть удалено без предупреждения

т.е. портаж нарушает FHS? o_O
вот те раз...
ты сейчас написал обычную херню

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

Научись читать, что тебе пишут. В каком это месте я написал, что portage нарушает FHS?

Я написал, что PORTAGE_TMPDIR обладает необычными свойствами. В обычном случае он хранит временные файлы, которые нельзя удалять без предупреждения (по FHS это /var/tmp). Но если прервать сборку по ^C и не вычистить мусор в PORTAGE_TMPDIR вручную, то чтобы он там не занимал место, его нужно удалять автоматически. Чтобы мусор удалялся автоматически, какая-то программа должна его удалять (например, размонтирование tmpfs при выключении). И такая программа поступит против FHS, а вовсе не portage.

Вообще, гораздо удобнее для сборки выделить отдельную ФС. У меня там лежит всё дерево, дистфайлы, собранные пакеты, кэш ccache и точка монтирования для PORTAGE_TMPDIR. Смысл в том, что эту ФС можно сделать общей для нескольких систем или даже компьютеров. И если станет не хватать места в tmpfs, можно просто размонтировать /build/builddir и собирать на винте, не занимая место и не создавая файлов в / или /var (если монтируется отдельной ФС).

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