Исходные тексты ядра занимают более 20 Мб, и, скорее всего, вы захотите их удалить. Если так, то откомпилируйте новое ядро, которое будет работать с вашей машиной, и освободитесь от исходных текстов.
Я НЕ советую удалять исходные тексты ядра до тех пор, пока вы не удостоверитесь, что система правильно установлена . Кроме того, вам понадобятся #includes ядра для того, чтобы компилировать программы на C. Подумайте дважды... !
Если вы все же на это решились, не удаляйте дерево include/linux, если собираетесь когда-нибудь компилировать приложения на своей машине.
Теперь решите, какие приложения вам на самом деле необходимы. Некоторые могут оказаться излишествами: например, уверены ли вы в том, что вам очень нужен emacs? Вместо него можно использовать jed.
От вас зависит, что оставлять, а что удалять. Несколько основных правил:
gcc - довольно большой файл. Он используется для компиляции ядра и всех пакетов Linux, у которых есть исходные тексты. Разумеется, он вам понадобится, если вы будете писать собственные программы на C или Fortran (с f2c или g77); поэтому определитесь с вашими потребностями, перед тем как удалить его. Другие компиляторы, например lcc, неплохи, но их уровень ниже, чем у gcc. Поэтому я бы оставил этот файл;
X11 еще больше, но это вещь, которую хотелось бы иметь под рукой. Если вы решились его удалить, то не удаляйте все, постарайтесь обойтись необходимым минимумом: нужный Х-сервер, один простенький менеджер окон, единственный xterm, никаких шрифтов на 100 dpi, и т.п.;
TeX и сопутствующие программы занимают большой объем. Уход от LaTeX и переход на чистый TeX сэкономит много места; это же дает удаление программ предварительного просмотра в X11, таких как xdvi и ghostview, и, возможно, если у вас есть dvitty, dvivga или некоторые им подобные. Если у вас нет необходимости в файлах формата dvi, то, в принципе, вам не нужен X11;
игры никогда не являются "необходимостью".
Давайте приступим к уменьшению объема программ. Перейдите в /usr/bin и наберите команду
machine:/usr/bin# strip * |
которая удалит все символы, не относящиеся к телу программы. Повторите это действие в /usr/X11R6/bin/ и других каталогах, содержащих исполняемые программы (не забывайте про программы TeX и gcc), но не делайте этого в /sbin, /bin, или /usr/sbin/ если дорожите тем, что у вас установлено!
Сначала, установите upx и прочтите документацию к нему. Затем перейдите в /usr/bin и запустите там команду upx *; он закомпрессирует все исполняемые файлы, включая и те, у которых установлен бит suid (tcx этого бы не сделал).Повторите эти действия во всех каталогах, описанных выше.
Помните, что надо архивировать все исполняемые файлы всякий раз, когда вы устанавливаете новую программу!
Есть множество других файлов, которые можно заархивировать раз и на всегда. Начнем с /usr/doc/; перейдите в этот каталог и наберите команду
machine:/usr/doc# find . -type f -exec gzip -9 {} \; 2> /dev/null |
Помните, что надо архивировать документацию всякий раз, когда вы устанавливаете новую программу!
Повторите эти действия в каталогах, содержащих документацию по TeX (на моей машине, /usr/lib/texmf/texmf/doc/. Если вы действительно уверены в своих действиях, то вы просто можете удалить все эти каталоги.
Теперь установите zlibc и откомпилируйте ее. Если у вас такая же система, как и у меня, то процесс компиляции не завершится со ссылкой на отсутствие (статической версии) libc. Не обращайте на это внимания, вы найдете файл под названием uncompress.o Это то, что нам надо. Переместите его в /usr/local/lib/ и добавьте следующую строку в ваш /etc/profile:
export LD_ELF_PRELOAD=/usr/local/lib/uncompress.o |
теперь, при помощи gzip можно архивировать не только файлы с документацией, но и с данными: программы, которые их используют смогут обращаться к ним. В теории, этот метод может работать с большинством программ, но на практике это не всегда получается. Моя попытка сделать это, так и не увенчалась успехом.