algri14 писал: ↑15.01.2019 16:09
Этот вопрос можно было задавать во времена малых ж/д 80 или 40 Гб, когда каждый Гб был на счету.
Ну, гигабайты - они и сейчас вообще-то не бесплатные. Особенно с учетом нестыковок в единицах измерения. Это не совсем пустяки, поскольку вслед за решением создать swap непременно последует вопрос о размерах этого самого swap. И тут внезапно выяснится, что нужно не гиг-другой, а желательно по размеру RAM, а то и чуть больше - "на всякий случай". А это уже немного другая арифметика.
Поэтому выделять пространство под раздел, который с большой степенью вероятности никогда не понадобится - это слишком. Файл - ещё куда ни шло, но раздел - нет.
algri14 писал: ↑15.01.2019 16:09
лучше "подстелить соломки" размером хотя бы 4 - 6 Гб, так, на всякий случай.
Случай может быть только один: swap нужен для корректной отработки OOM при утечке памяти или чего-то в этом роде. Но именно этому случаю я подтверждения не нашёл.
Все остальные случаи должны предусматриваться при планировании разделов перед установкой ОС.
Выделить "на всякий случай" можно разве что от избытка, когда место девать некуда - всё распланировали, а пара гигов как-то вот осталась. Во всех остальных ситуациях выделять "на всякий случай" практически бессмысленно, так как нужно знать размер - сколько выделять. Без конкретной задачи размер раздела будет выбран наобум и в дальнейшем почти наверняка выяснится, что он (размер) не совсем подходит для конкретной возникшей здесь и сейчас задачи.
algri14 писал: ↑15.01.2019 16:09
И пусть он будет, поможет в подходящий момент, которые описаны здесь и на других форумах.
Если подходящий момент касается гибернации или чего-то такого, то такие вещи нужно планировать заранее. Со всеми вытекающими. А всё остальное - см. выше, насчет размера. Почти наверняка будет "не в масть", поэтому сомневаюсь, что поможет.
И опять-таки выделение раздела под swap - это всегда вопрос размера. Он же не динамический. Не способен расширяться, по мере надобности.
Вот конкретно мой случай.
У меня три дисковых устройства: HDD на 1Тб, HDD на 500Гб и SSD на 256Мб.
HDD на 1Тб полностью отведен под /home. Там пользовательские файлы, профили, торренты и т.д. Этот раздел сознательно выведен целиком на отдельное устройство - это позволяет в случае переустановки ОС или миграции на другой дистр без проблем перенести пользовательские файлы. Это отдельный раздел, который не зависит от системы. Поэтому свопу там делать нечего.
На SSD установлена часть системы. Понятно своп тут делать было бы легкомысленно. Лично мне жалко впустую убивать SSD свопом.
Остаётся HDD на 500Гб. Здесь оставшаяся часть системы - наиболее активная в смысле чтения/записи (раздел /var, локальный раздел tmp (есть ещё небольшой tmp в RAM), раздел с журналом ФС - это сделано для минимизации операций записи на SSD.
Здесь же раздел с локальными репами, файлы виртуальных машин - HDD и пр., сборочный раздел - тарболы, каталоги сборки, результаты сборки и т.п.).
Это всё довольно ёмкие вещи. Ну и где тут быть свопу? И, главное, зачем? У меня 8Гб RAM.
Если бы мне нужна была гибернация, я бы об этом думал в самом начале, когда размечал всё это дисковое хозяйство. Однако за четыре с лишним года я потребности в гибернации не ощутил. Равно, как и в свопе.
Какие-то другие ситуации, когда прям вот внезапно нужен своп, может быть, и возникают, но мне ничего такого не встречалось даже в теории. Поэтому, когда говорят "нужен обязательно", "нужен всегда", хотелось бы видеть основания. Или конкретные примеры из личной практики. Пример, приведенный выше (с фрагментацией свободной памяти по 80Мб и невозможностью выделить память из-за отсутствия свопа) - не в счет. Во-первых, он (пример) синтетический, а во-вторых, своп там всё равно не поможет - всегда можно подобрать такие цифры (начальные условия), при которых даже наличие свопа не позволит выделить память. Так что это не аргумент.
Ну, а в крайнем случае, если уж припрет и окажется что без свопа - никак, создам файл.