Библиотека сайта rus-linux.net
Мини-HOWTO: Малый объем памяти версия 0.1
Todd Burgess, tburgess@uoguelph.ca
Перевод: Павел Гашев, SWSoft Pte Ltd.
Введение
Большинство дистрибутивов Linux рассчитаны на большой размер оперативной памяти. Они запускают много сервисов и предлагают множество возможностей, которые могут и не понадобиться. Снимая большинство таких сервисов, вы можете реально освободить несколько мегабайт памяти.
Ядро Linux
Если вы пересобираете ядро, запомните, что совсем не надо использовать все возможности ядра. Например, как часто вы включаете поддержку PLIP в ядро? Как часто вы будете это использовать? Маленькое ядро требует меньше времени для загрузки, меньше памяти и меньше загружает процессор.
Другая важная вещь - модули. Лично я не использую их, так как считаю, что они слишком громоздки. Рекомендация проста: если хотите действительно раздуть ядро, то используйте модули.
Виртуальные консоли
Большинство пользователей используют только 3-4 консоли. Сколько консолей вы уберете - это ваше личное дело. Просто запомните, что чем меньше виртуальных консолей вы используете, тем больше памяти остается для работающих приложений.
Количество используемых консолей описывается в файле /etc/inittab . Для того, чтобы убрать виртуальную консоль:
- Загрузите /etc/inittab в текстовый редактор
- Найдите строки, похожие на:
c1:12345:respawn:/sbin/getty tty1 38400 linux
c2:12345:respawn:/sbin/getty tty2 38400 linux
Начиная с наибольшего номера (например c6), закомментируйте строку, поставив знак '#' в начале строки. Повторите этот шаг столько раз, сколько вам нужно. Запомните, каждая закомментированная строка убирает одну виртуальную консоль. - Перезапустите систему, чтобы изменения вступили в силу.
- cd /etc/rc.d
- grep -n inetd rc.*
Демоны
Большинство дистрибутивов Linux запускают множество демонов, которые никогда не используются. Чаще всего они запускаются через скрипты. Где находятся скрипты и какие из них запускаются, зависит от дистрибутива. В Slackware они находятся в /etc/rc.d/rc.* .
Прежде чем продолжить, вам было бы неплохо уметь писать скрипты. Если же вы этого не умеете, могу предложить краткое введение в написание скриптов.
Возьмем следующий скрипт:
#!/bin/sh
echo "Привет!"
# echo "Пока!"
В результате, на экран будет выведена строка "Привет!". Скрипт должен начинаться со строки "#!/bin/sh", после которой каждая строка запускается командным интерпретатором так, как будто она была введена с клавиатуры (так что скрипт - не что иное, как простые макросы клавиатуры).
Строки, начинающиеся с '#', являются комментариями и не исполняются. Большинство скриптов запуска демонов выглядят следующим образом:
if условие then
что-то
fi
Все, что мы хотим сделать - это закомментировать строки, между if и fi.
Для того чтобы найти скрипт, в котором запускается демон, нужно поискать скрипт, на предмет наличия в нем названия демона. Если я хочу найти, где запускается inetd в Slackware, то должен сделать следующее:
inetd
inetd поддерживает такие вещи, как telnet, ftp и talk. Если вы не используете свою машину как сервер или не хотите иметь удаленный доступ к своей машине, то можете убрать inetd.
lpd
nfsd и mountd
Это два демона, образующие NFS сервер. Если вы не используете свою машину как NFS сервер, то можете спокойно убрать эти два демона.
portmap
Демон portmap используется для поддержки сервиса RPC. Если вы не используете NFS или любую другую программу, использующую RPC, то можете убрать portmap.
sendmail
sendmail - это еще один демон, требующий достаточно много памяти. Если вы не используете свою машину в качестве почтового сервера, то можете убрать sendmail. Если вы пользуетесь электронной почтой, то программу чтения почты можно настроить на другой почтовый сервер.
другие
Могут быть также другие демоны в системе, которые вам не нужны. Удалите их, если они не нужны. Вы должны обязательно оставить только два демона. Это syslogd и klogd.
Выводы
Вышеперечисленное иллюстрирует шаги, достаточные для работы Linux на компьютере с небольшой оперативной памятью. Надеюсь, я предоставил вам информацию о некоторых возможных действиях, которые позволят увеличить количество свободной памяти в Linux.
Удачи!
Todd Burgess
tburgess@uoguelph.ca
http://eddie.cis.uoguelph.ca/~tburgess
Авторские права
Авторские права на русский перевод этого текста принадлежат © 2000 SWSoft Pte Ltd. Все права зарезервированы.
Этот документ является частью проекта Linux HOWTO.
Авторские права на документы Linux HOWTO принадлежат их авторам, если явно не указано иное. Документы Linux HOWTO, а также их переводы, могут быть воспроизведены и распространены полностью или частично на любом носителе, физическом или электронном, при условии сохранения этой заметки об авторских правах на всех копиях. Коммерческое распространение разрешается и поощряется; но, так или иначе, автор текста и автор перевода желали бы знать о таких дистрибутивах.
Все переводы и производные работы, выполненные по документам Linux HOWTO должны сопровождаться этой заметкой об авторских правах. Это делается в целях предотвращения случаев наложения дополнительных ограничений на распространение документов HOWTO. Исключения могут составить случаи получения специального разрешения у координатора Linux HOWTO, с которым можно связаться по адресу, приведенному ниже.
Мы бы хотели распространить эту
информацию по всем возможным каналам. Но
при этом сохранить авторские права и быть
уведомленными о всех планах
распространения HOWTO. Если у вас возникли
вопросы, пожалуйста, обратитесь к
координатору проекта Linux HOWTO по электронной
почте: <linux-howto@metalab.unc.edu>
или к координатору русского перевода Linux HOWTO
компании SWSoft Pte Ltd. по адресу <linux-howto@asplinux.ru>