понеділок, 7 лютого 2011 р.

Ручная чистка линукса

«Ну вот так всегда... Файл весит 700 мегабайт, а свободно лишь 500... И удалить ничего не могу — все нужно. Что делать - удалять нужное или бежать в круглосуточный магазин дисков?» Знакомая ситуация? А как же! Вот только не нужно спешить удалять нужное — сегодня я вам расскажу, как можно безболезненно освободить немного свободного места! Дело вот в чем. Линукс — это как живое существо. В процессе жизни он оставляет много продуктов своей жизнедеятельности. И вы, как настоящий заботливый хозяин, должны за ним убирать :-) Конечно, это только метафора, но в ней намек на то, чем мы сегодня будем заниматься. Наша цель — научится безопасно удалять ненужные файлы, при этом не повредив систему и освободить место на жестком диске. Могу сказать только одно — не бойтесь делать того, что я — все абсолютно безопасно. Итак, поехали!

Удаление настроек несуществующих программ. Программы приходят и уходят, а мусор, т.е. устаревшие настройки остаются. Обычно конфиги хранятся в домашней папке, в которой создаются файлы и папки, названые по такому принципу: [.]+[имя_программы]. Как вы знаете, файлы, название которых начинаются на точку, в UNIX, а соответственно и в Linux, являются скрытыми. Для их просмотра в Nautilus нажмите «Ctrl»+«H». Еще раз нажмете — они исчезнут. Их скрывают по понятным причинам — пользователю они не интересны. Посмотрите на эти папки — может каких то программ уже давно нет на компьютере. Только тут будьте осторожны — думайте, что удаляете, хотя ничего фатального произойти не может. Полагаюсь на вашу интуицию :) Также есть смысл заглянуть в папки ~/.config и ~/.gnome2 — некоторые программы там тоже настройки хранят.

Временные файлы fileroller. Эта программа служит стандартным менеджером архивов в GNOME. Когда мы с его помощью открываем архив, и прямо из окна архиватора открываем файл, то сначала создается папка ~/.cache/.fr-* (или ~/.fr-*). В нее распаковывается выбранный файл, который потом открывается в нужной программе. Обычно все удаляется после закрытия архиватор, но не всегда. Сейчас у меня там килобайты, но если вы открывали какой-нибудь «массивный» файл, туда стоит заглянуть.

Временные файлы mc. Этот отличный консольный файловый менеджер поддерживает множество разных форматов архивов. Распаковывает их очень просто — просто выделяем курсором архив и жмем «ENTER». А вот убирать после себя он не всегда может. Временная папка для распакованных файлов может быть как /tmp/mc-[username], так и ~/tmp/mc-[username], она же служит для командера виртуальной файловой системой. Давайте заглянем туда на моей машине:
[keed'0'@mandrivka ~]$ du -h $TMP/mc-`whoami`
du: не вдається отримати доступ до `/tmp/mc-keed': No such file or directory
[keed'0'@mandrivka ~]$ du -h ~/$TMP/mc-`whoami`
17M /home/keed/tmp/mc-keed
17 Мб — это немного, но помню один раз было почти 800 МБ — просматривал iso-образ и mc рухнул. Поэтому время от времени туда заглядывать было бы неплохо. Чистим так:
 [keed'0'@mandrivka ~]$ rm -Rf ~/$TMP/mc-`whoami`
 [keed'0'@mandrivka ~]$ du -h $TMP/mc-keed/
   0    /home/keed/tmp/mc-keed/
Эскизы (thumbnails). Мы уже привыкли к тому, что в nautilus отображаются эскизы для разных типов файлов — jpeg, png, xpm, pdf, djvu, avi, mpeg4... И вот как эта технология работает. Возьмем, к примеру, документ ~/document.pdf. Сначала наутилус определяет имя файла и его тип MIME. Затем он отправляет запрос программе evince-thumbnailer, которая обрабатывает первую страницу документа и создает ее уменьшенную png-копию. Далее миниатюра помещается в папку ~/.thumbnails/normal или ~/.thumbnails/large. Затем имя файла эскиза передается обратно наутилусу, а он в свою очередь, ставит его вместо стандартного значка. И так для многих файлов, только принцип создания может быть другим. Когда файл уаляется, эскиз для него еще остается, который, между прочем, занимает место:
keed'0'@mandrivka ~]$ du -h ~/.thumbnails/
   85K     ./.thumbnails/fail/gnome-thumbnail-factory
   85K     ./.thumbnails/fail
   6,5M    ./.thumbnails/large
   92M     ./.thumbnails/normal
   98M     ./.thumbnails/
Как видим, почти 100 МБ занимают эскизы. Для чистки их можно запустить специальный скрипт clean, который я написал пару лет назад, когда времени было побольше. Его можно скчать здесь: http://thumb-clean.narod.ru или здесь: http://keed.h1.ru/?page=clean. Он и почистит, и выведет подробную информацию. Clean также удобно ставить на задания в cron. давайте посмотрим на его работу:
[keed'0'@mandrivka ~]$ clean
   Видалено 6165 файлів.
   Звільнено місця: 95M /home/keed/.thumbnails/
   Використовуй -h або --help для отримання довідки,
   а також -v чи --version для отримання версії.
Временные файлы evince. Эта программа просмотра документов также создает временные файлы. Они находятся в папках /tmp/evince-* или ~/tmp/evince-*. В них лежат временные документы PDF, сканированные версии которых могут занимать очень много. Посмотрим, что у меня там:
[keed'0'@mandrivka ~]$ du -h $TMP/evince-*
   400K   /home/keed/tmp/evince-3123
   8,9M   /home/keed/tmp/evince-3825
[keed'0'@mandrivka ~]$ rm -Rf $TMP/evince-*
Вот еще 9 МБ освободили. Ура!

Кэш браузеров. Тут тоже много всякой всячины. Можно поудалять временные файлы и cookie вручную. Кэш оперы находится тут: ~/.opera/cache. Он у меня занимает аж 326 МБ. Кэш Mozilla Firefox хранится здесь: ~/.mozilla/firefox/[имя_пофиля]/Cache. У меня это папка /home/keed/.mozilla/firefox/47b0yujw.default/Cache и там 741 Мб! Сносим:
[keed'0'@mandrivka ~]$ rm -Rf ~/.opera/cache/* ~/.mozilla/firefox/*.default/Cache/*
Освободили 326+741=1067 Мб, чуть больше 1ГБ. Вот так. Только нужно помнить то, что потом и все сохраненные пароли будет нужно вводить заново (вроде как).

Индексы поисковика Beagle. Те, кто пользуется этим замечательным поисковиком, должны остаться довольны его возможностями и скоростью поиска. Однако такое удобство идет в ущерб занимаемому месту на жестком диске. Чем больше размер раздела и больше файлов на нем, тем больше места займут индексные файлы. Они хранятся по адресу ~/.beagle/Indexes. Так как жесткий у меня не маленький и Beagle сканирует все, кроме /boot, /dev, /proc и /sys, то и индексы у меня занимают аж 2,3 Гб. Ими можно смело пожертвовать при нехватке места, что сейчас и сделаем:
[keed'0'@mandrivka ~]$ rm -Rf ~/.beagle/Indexes/*

Заключение. В заключение давайте подсчитаем, сколько же мы сегодня места освободили: 17+98+9+1067+2300=3490 мегабайт, что составляет аж 34% моего 10 гигабайтного домашнего раздела. Хотя эта цифра могла быть и большей. Был ли смысл в этой статье? Цифры говорят, что был. Время от времени повторяйте описанные мной действия. И вам это надоест. И вы напишите скрипт, который автоматизирует эти действия и повысит знания языка shell.




0 коментарі:

Дописати коментар