ulimit
встроенная оболочка, не внешняя команда. Это должно быть встроено, потому что это действует на сам процесс оболочки, как cd
: пределы, как текущий каталог, являются свойством того конкретного процесса.
sudo bash -c 'ulimit -n 4096'
работал бы, но это изменит предел для процесса удара, вызванного sudo
только, который не помог бы Вам.
Существует два значения для каждого предела: жесткий предел и мягкий предел. Только корень может повысить жесткий предел; любой может понизить жесткий предел, и мягкий предел может быть изменен в любом направлении с единственным ограничением, что это не может быть выше, чем жесткий предел. Мягкий предел является фактическим значением, которое имеет значение.
Поэтому необходимо расположить, что все процессы имеют жесткий предел для открытых файлов по крайней мере 4 096. Можно сохранить мягкий предел в 1 024. Прежде, чем запустить тот процесс, который требует большого количества файлов, повысьте мягкий предел. В /etc/security/limits.conf
, добавьте строки
paislee hard nofile 4096
paislee soft nofile 1024
где paislee
имя пользователя, Вы хотите выполнить свой процесс как. В оболочке, которая запускает процесс, для которого Вы хотите более высокий предел, работать
ulimit -Sn unlimited
повысить мягкий предел жесткому пределу.
Без подкачки будут уничтожены приложения (вместо того, чтобы быть подкачанным), если у Вас закончится память; у Вас также будет больше замедления при отключении кэширования файловой системы поскольку оно должно будет считать диск больше.
Что касается требования подкачки, Вы смогли избегать его (или использовать маленькую подкачку), если Вы истратили RAM на своей машине.
Компиляция некоторых приложений C++ может легко использовать огромные объемы памяти, который делает свопинг удобным, даже на современных компьютерах.
В эти дни подкачка является в основном анахронизмом. Я рекомендую не работать с подкачкой никогда. Поршень является дешевым, и диск является медленным и, что замедление стало настолько большим в эти дни (диски только утроились в скорости, в то время как поршень стал в 100 раз быстрее), что, если Вы действительно когда-либо на самом деле начинаете подкачивать систему, станет неприменимым. Если у Вас нет достаточного количества поршня для выполнения то, что Вы хотите выполнить, просто необходимо добавить больше, не подкачать к диску.
Вы также не можете отключить кэш фс, и он только использует память, которая иначе свободна.
Именно так у Вас есть ответ от кого-то, кто испытал его - я взломал свою опытную хромовую книгу с Ubuntu и более поздним Бодхи Linux, и не использовал подкачку на нем (так как он только имел диск на 16 ГБ). Это имело 2 ГБ поршня и никогда не давало мне проблему, быть этим просмотр, компиляция ядер андроида или использование Eclipse.
Однако если Ваш жесткий диск является более крупным, то я предлагаю просто использовать некоторую подкачку. Поршень является дешевым, но SSD не является точно дорогим сегодня также. Я думаю, что это все еще очень выгодно.
У меня есть hp мини-1 000 нетбуков, которые я использовал в течение нескольких лет теперь (3, возможно, 4), который имеет очень раннюю модель 8GB ssd и 1 ГБ поршня.
Я всегда решил не использовать раздел подкачки для уменьшения записей на диск, и он никогда не вызывал меня проблемы несмотря на довольно тяжелую компиляцию (я работаю разработчиком и часто компилирую ядро Linux).
Однако я использую минимальный менеджер окон, и не много крупных приложений (большая часть моей работы от терминала), таким образом, это, вероятно, помогло.
Существует большая статья о archwiki, затрагивающем эту тему.
Никакая подкачка не означает, что приложения откажут, если у Вас закончится RAM. С подкачкой Вы получаете предупреждение, потому что Ваша система становится медленной сначала.
Никакая подкачка также не означает, что память приложения не может быть выгружена для создания места для дискового кэша. В типичной системе существует несколько редко необходимых фоновых процессов или частей процессов, которые не необходимы в течение больших промежутков времени. Для производительности лучше позволить этим страницам быть выгруженными для создания места для большего дискового кэша.
Если Вы только хотите минимизировать записи на диск, то отключение подкачки является шагом в правильном направлении. Это будет обычно уменьшать производительность: пересмотр ядра когда дело доходит до этого почти всегда контрпродуктивен. Уменьшение записей на диск для продления времени жизни SSD в основном иллюзорно: это взяло бы необычный объем действия, чтобы иметь диск, начинают становиться только для чтения, прежде чем это перестанет работать по некоторой другой причине старости или станет совершенно устаревшим.
Подкачка необходима для спящего режима. У Вас должно быть, по крайней мере, столько подкачки, сколько виртуальная память, занятая данными приложения во время спящего режима (т.е. “- / + буферизует/кэширует” строку free
вывод), плюс несколько мегабайтов для ядра.