
Ты никогда не задумывался о том, почему свежеустановленный Ubuntu с базовым графическим интерфейсом и мизерным набором
стандартных приложений занимает целых 2 Гб дискового пространства?
Если да, то читай дальше — мы посадим пингвина на диету и
сделаем так, чтобы он занимал гораздо меньше места.
Сегодняшние дистрибутивы Linux не только быстры , удобны и приятны глазу, но и невероятно громоздки. В стандартной комплектации большинство из них занимает больше 4 Гб. И это при том, что они способны обеспечить пользователя только одной графической средой и небольшим набором приложений ‘ К
слову сказать, нет даже кодеков для воспроизведения аудио- и видеофайлов. Куда же утекают заветные гигабайты свободного пространства? Как это ни странно, причина прожорливости Linux скрывается в его главном достоинстве. Хороший дистрибутив Linux — очень гибкая операционная система, способная подстроиться под любого пользователя и любое оборудование. В нем есть все для того, чтобы удовлетворить потребности 99% юзеров:огромное количество драйверов, способных вдохнуть жизнь практически в любую железку; куча разных демонов, апплетов и виджетов, делающих общение с этими железками простым и понятным; набор из самых востребованных пользователями приложений, поддержка нескольких языков; различные инструменты для людей с ограниченными возможностями и многое другое. Все это может и должно
занимать определенное пространство на жестком диске.
Linux предоставляет не меньшую свободу выбора и программистам. Не имея какого-либо стандартизированного интерфейса общения с операционной системой в виде единого API, такого как wiп З2 в Windows или Сосоа в Мас 05 Х , Linux поощряет использование любых удобных для прoграммиста интерфейсов и сред исполнения. Разработчик волен сам выбирать библиотеки графических интерфейсов, будьто GTK, О! или даже FLTK. Он может использовать любые подручные либы, небеспокоясь о том, что их не окажется на целевой системе, ведь менеджер пакетов все равно самостоятельно установит их. Он может писать приложения практически на любом из существующих языков программирования, и все необходимые интерпретаторы, виртуальные машины и библиотеки точно так же будут доустановлены в автоматическом режиме. Само собой разумеется, что при комплектации установочного диска все эти бесконечные зависимости будут включены в комплект, а во время установки попадут на жесткий диск пользователя . И не стоит даже надеЯТЬСЯ,на то, что разработчики дистрибутива будут подбирать софт, основываясь на его количестве зависимостей и следя за тем, чтобы они не тащили в систему ничего лишнего. Например, стандартная комплектация дистрибутива Ubuntu включает в себя простую программу для ведения заметок ТотЬоу, и эта небольшая программа тащит за собой весь рантайм топо , занимающий более 30 Мб дискового пространства. В устройстве Liпu х-дистрибутива есть еще много различных нюансов , которые делают его более тяжеловесным, но описанные выше — это основа, от которой мы будем отталкиваться, избавляя
пингвина от жирового слоя.Освобождаемся от хлама
Начнем с того , что попытаемся очистить систему от явно ненужного шлака , сохранив при этом оригинальный рабочий стол Ubuntu в почти неизменном виде и оставив все сколько-нибудь нужные приложения на месте. Итак, ставим Ubuntu и выполняем «df -h». Объем занятого дискового пространства составляет ни много ни мало 1.9 Гб. Сразу
смотрим в меню приложений . Здесь у нас есть раздел Games, который врядли представляет какую-то ценность . Удаляем все его содержимое одной командой:
$ sudo apt-get purge gnome-games-common gbrainy
Пакет gnome-games-common утянет за собой aisleriot, gnomemahjongg, gnome-sudoku, gnomine, quadrapassel вместе со всеми конфигурационными файлам и и освободит для нас 20 Мб про- странства. Снова идем в меню, самое бесполезное теперь лежит в пункте Accessories. Это калькулятор (gca lctool] , программа для исследования шрифтов (gucharmapl, анализатор использования дискового пространства (ЬаоЬаЫ, программа для поиска файлов
(gпоmе-sеагсh-tооll и тот самый ТотЬоу.
$ s udo apt-get purge gcalctool gucharmap
ЬаоЬаЬ gnome-search-tool tomboy
Эта операция даст нам еще 1О Мб места и откроет возможность избавиться от mопо.
$ sudo apt-get purge mono-2 ,e -gac mono-charp-shell mono-gac mono-gmcs mono- runtime
Это еще 30 Мб.
Вновь возвращаемся в меню. Из совсем неинтересного : программа для записи с микрофона и редактор видео pitivi. К сожалению, сразу определить принадлежность диктофона к какому-либо пакету трудно, поэтому мы установим утилиту apt-fi le, которая поможет
это сделать :
$ sudo apt-get install apt-file $ apt-file update $ apt-file search / usr/ bin /gnome-sound -recorder gnome-media : /usr/ bin/gnome-sound-recorder Нужный (точнее, не нужный нам пакет зовется gпоmе-mеdiа, удаляем:
$ sudo apt-get purge gnome-media
Всего 2.5 Мб, зато меню будет чище. Далее на очереди идет словарь , VNС-вьюер и клиент Remote Desktop. Врядли они тебе нужны , но если вдруг нужны, ты можешь просто пропустить этот шаг:
$ sudo apt-get purge gnome-dictionary
wamerican vinagre tsclient rdesktop
Еще 5 Мб и более чистое меню. Остальные программы можно пока оставить на месте и избавиться от хлама типа документации,
плюшек для людей с ограниченными возможностями, примеров, хранителя экрана и системы тестирования UЬuпtu:
$ sudo apt-get purge gnome-accesibility-themes gnome-doc-utils gnome-mag gnome-screensaver screensaver-default-images xs creensaver- * gnome-user-guide example-content checkbox* branding-ubuntu Так мы освободим еще 167 Мб пространства. Далее разберемся с «повисшими » зависимостями — пакетами, которые были перечислены в зависимостях уже удаленных нами пакетов и теперь не нужны. Для этого нам понадобится программа orphaner, включенная в пакет deborphan:
$ sudo apt-get iпstаll dеЬоrрап
Запускаем программу, видим список «сирот », отмечаем их с помощью пробела и выбираем кнопку «ОК». В конце процедуры снова будет выведен список, на этот раз в нем перечислены «сироты сирот ». Повторяем все действия до тех пор, пока список не окажется пуст. Дальнейшая чистка неизбежно скажется на функциональности и внешнем виде дистрибутива, поэтому тем , кто любит UЬuпtu таким, какой он есть, лучше остановиться на достигнутом. Всем остальным — добро пожаловать в следующий раздел статьи. Эта команда удалит не только реализацию Bluetooth- протокола, распространяемую в пакете bluez, но и все ее зависимости в виде gпоmе-библиотек и графических интерфейсов. Выигрыш скромный:12Мб. Далее , у тебя дома есть сканер? Если нет, то и поддержка сканеров в системе не нужна. В Ubuntu доступна простая программа для сканирования документов под названием Simple Scan, она опира- ется на стандартную библиотеку для работы со сканерами SANE.
Удалив последнюю, мы удалим поддержку сканеров полностью :
$ sudo apt-get purge libsane
Это даст нам дополнительные 15 Мб. Третье: принтер есть наверняка, и, скорее всего, он подключен к домашней машине, поэтому если ты чистишь Ubuntu , установленный на ноутбук , то от поддержки принтеров тоже можно избавиться: $ sudo apt -get purge cups cups- common hpijs hplip-data
gsfonts
Настал черед видеодрайверов. Ubuntu содержит полный комплект драйверов Xorg, но видеокарта у нас всего одна. Соответственно, все остальное можно удалить , но для этого придется с начала выяснить, какие драйвера поддерживаются железом, чтобы ненароком не удалить нужный. Это можно сделать с помощью следующей
команды
$ cat / var/ log/Xorg . log.e I grep ‘autoconfigured driver’
Сразу после слова «Matched» будет указано имя драйвера, его нужно запомнить. При этом драйверов может быть несколько, это вполне нормально, и лучше оставить их все. Остальные можно
удалить с помощью apt — get Просто набираем
«a pt -get purge xse rve r -xorg-video-» , два раза нажимаем < Enter> и удаляем все по порядку, кроме тех имен, которые мы запомнили. Для примера можешь взять следующую команду, которая удаляет все драйвера,
кроме fbdev и vesa:
$ sudo apt-get purge xserver- xorg — video — {apm,ati , chips , irrus, geode, Н28 , i74e, intel, mа с hб4 , mga, neomagic , поиуеаи , пу , open chrome, r128 , radeon , rendition , s3 , s3virge, savage, siliconmot ion , sis , sisusb, tdfx, trident, tseng, vmware, voodoo} Также можно потереть различные плюшки для драйверов nVid ia и ATi: $ sudo apt -get purge nvidia-* fglrx-modaliases radeontool
А вместе с ними и заголовочные файлы ядра, которые в Ubuntu включены только для того, чтобы собирать и устанавливать модули для проприетарных видеодрайверов, но в обычной ситуации они нужны редко, а занимают 90 Мб: $ sudo apt-get purge linux- headers- * В системе осталось еще не мало различных утилит и библиотек, специфичных для конкретных железяк , но мы можем потратить весь день , разбираясь с каждой из них. Вместо этого мы избавимся от хлама, скрытого глубоко внутри системы. Например, compiz’a l если,
конечно, тебе не нужны эффекты рабочего стола ) :
$ sudo apt -get purge compiz * Систему синтеза речи также можно выбросить, она нужна людям, у которых проблемы со зрением: $ sudo apt-get purge espeak* speach — dispatcher gnome-rca
Инструменты для разработчиков тоже, скорее всего, не нужны конечно, если ты сам не разработчик): $ sudo apt -get purge gcc -4.4 gdb make
База данных courchdb вместе с erlang, и с пользуемая для хранения разной инфы в Gnome, также не нужна : $ sudo apt -get purge erlang* courchdb Библиотека smbclient, используемая для доступа к виндовым шарам, не нужна на обособленных машинах [к тому же занимает
больше 50 Мбl:
$ sudo apt-get purge smbclient linsmbclinet
Не нужен нам и xulrunner, используемый для создания XULинтерфейсов:
$ sudo apt-get purge xulrunner-l, 9,2 Также можно подрезать следующий консольный софт: dc, Ьс, ed, Itp, lftp, pcmciutils, screen, rsync, strace , xterm, lsol, w3m, telnet,
tcpdump, vim*’
При этом руководствоваться следует простым nравилом: не знаешь, что это такое — значит, не нужно. Вроде это все. Теперь запустим orphaner, чтобы он подчистил за
нами оставшиеся зависимости:
Смотрим количество свободного места: 1.4 Гб, команда «sudo du -sh /» выдаст более точные 1.3 Гб. Вычитаем из них размер каталога /уаг [ег о можно получить так: «du -sh /уаг» 1 и получаем 1.1 Г б. Почти двукратное снижение веса при сохранении полной работоспособности Gnome, включая утилиты настройки, администрирования, установки и удаления пакетов, создания сетевых соединений . Также нам по-прежнему доступны браузер Firelox, просмотрщик документов Evince, файловый менеджер Nautilus, программа просмотра фотографий Еуе 01 Gnome и архиватор lile-roller.
Но более того, мы можем освободить еще около 90 Мб пространства , если удалим документацию и ненужные локали:
$ sudo apt-get install localepurge Отмечаем в списке «е п» И «en_GB» [ если мы работаем в англоязычной версии UbuntuJ, или «ru» И «ru_RU» [для русской версииl.
Запускаем программу:
Теперь удаляем документацию:
$ sudo / usr/s hare/{ doc,gtk-doc}
Возвращение к истокам 2-готовая и обработанная Теперь поговорим о том, что делать людям, которые не хотят видеть Gnome на рабочем столе и хотели бы заменить его на что-нибудь более легкое. В случае с любым другим дистрибутивом рецепт был бы чрезвычайно прост : удалить все пакеты, имеющие в названии слово gnome, плюс зачистить остатки, удалив приложения и библиотеки. Но с Ubuntu этот трюк не пройдет, в него встроена «защита ОТ дурака», которая, если любой из пакетов, нарушающих работоспособность Gnome, будет удален, принудительно установит пакет kubuntu-desktop, тянущий за собой весь КОЕ [ просто попытайся удалить gnome, и ты увидишь, что apt-get предложит для установкиl. Поэтому полностью очистить Ubuntu от Gnome можно только двумя более-менее простыми способами: либо скачать Ubuntu Server и установить его в минимальной конфигурации, а затем доустановить все, что требуется, либо обойти систему защиты, удалив все gпоmе-пакеТbI разом. Выводы Описанная в статье методика очистки отлично работает и была не раз проверена автором. Конечно, мы могли бы добиться и более впечатляющих результатов, ужав Ubuntu вместе с Gnome мегабайт до 500, но для описания всех действий, необходимых для достижения
такой цели, понадобилась бы целая книга.