Поиск программ
Для быстрого поиска программ служит программа eix (пакет app-portage/eix), имеющая собственную базу данных для ускорения поиска.
Пример:
eix mozilla
eix -S browser
Отобразить список установленных пакетов можно при помощи команды:
qlist -I
Отобразить список установленных пакетов с версией:
qlist -Iv
Отобразить список установленных пакетов с версией и USE флагами:
qlist -Uv
Если вы не нашли интересующей вас программы в дереве портежей, вы можете поискать ее в оверлеях. Для поиска воспользуйтесь сайтом http://gpo.zugaina.org . Название оверлея будет справа в нижней строке результата поиска.
Прежде чем установить программу, найденную на сайте, подключите оверлей в вашу систему, выполнив:
layman -a <оверлей>
Список оверлеев можно получить командой:
layman -L
Установка и удаление программ
Для установки и удаления программ используйте программу [[emerge]] (sys-apps/portage).
emerge kde-base/kgoldrunner
emerge -C mc
В приведенном примере будет установлена игра kgoldrunner и удалена программа mc (Midnight Commander).
В случае если программа замаскирована, вы можете воспользоваться опцией --autounmask для вызова справки по размаскировке пакетов.
Пример установки замаскированной версии пакета:
emerge --autounmask =www-client/opera-11.10.2092
В конце перечня пакетов, подлежащих установке, вы увидите следующие рекомендации:
The following keyword changes are necessary to proceed:
#required by =www-client/opera-11.10.2092 (argument)
=www-client/opera-11.10.2092 ~amd64
Поместите текст под фразой "The following keyword changes are necessary to proceed:" в файл /etc/portage/package.keywords/opera(комментарии можно опустить).
echo "=www-client/opera-11.10.2092 ~amd64" >> /etc/portage/package.keywords/opera
Исправление зависимостей
Когда вы вносите изменения в установленные пакеты, может наступить случай нарушения зависимостей. Чтобы выявить и исправить такие нарушения, мы рекомендуем после обновления или удаления какой-либо программы выполнять команду revdep-rebuild.
Пример:
revdep-rebuild
Настройки программ
Во время обновления программ, для предотвращения ошибок, новые файлы настроек создаются с суффиксом ._cfg0000 _. Для некоторых сервисов важно после обновления заменять старые настройки новыми. Иногда старые настройки могут привести в нерабочее состояние установленную программу, например, старые скрипты запуска сервисов, расположенные в директории /etc/init.d.
Для своевременной замены конфигурационных файлов используйте программу dispatch-conf.
Пример:
dispatch-conf
После запуска программа будет показывать отличия новой версии каждого конфигурационного файла от старого. Обратите внимание: если настройки файла были модифицированы программой [[calculate]] (вы увидите соответствующий комментарий), заменять эти настройки не следует - нажмите клавишу "z" для пропуска изменений. Для замены файла новым нажмите клавишу "u".
Загрузка сервисов
Для добавления и удаления скрипта из уровня запуска служит скрипт rc-update.
Пример:
rc-update show
rc-update add numlock default
rc-update del numlock
Показать запущенные сервисы можно командой:
rc-status --all
Содержимое пакета
Получить перечень файлов установленного пакета, а также узнать, какому пакету принадлежит файл в системе, можно при помощи программ qlist и qfile (app-portage/portage-utils).
Пример:
# список файлов пакета app-portage/portage-utils
qlist -ae app-portage/portage-utils
# узнать пакет в который входит qfile
qfile qfile
Вам также может пригодиться программка which (sys-apps/which), показывающая путь к файлу.
Пример:
# which equery
/usr/bin/equery
Обеспечение безопасности
Постоянное обновление системы - одно из важнейших мероприятий по обеспечению безопасности.
Можно следить за обновлениями посредством GLSA - glsa-check (app-portage/gentoolkit).
Просмотреть пакеты, которые необходимо переустановить:
glsa-check -p $(glsa-check -t all)
Переустановка уязвимых пакетов:
glsa-check -f $(glsa-check -t all)
Не помешает после этой операции проверить зависимости, см. выше Исправление зависимостей.
Полезное
Зависимости пакетов
Получить информацию о зависимостях пакетов можно с помощью программы qdepends (app-portage/portage-utils).
Пример:
qdepends -Q python
Экономия трафика
Если у Вас дорогой или лимитированный трафик, то можно сэкономить с помощью пакета getdelta.
Для его установки, если у вас архитектура i686, выполните:
ACCEPT_KEYWORDS=~x86 emerge getdelta
если x86_64, то:
ACCEPT_KEYWORDS=~amd64 emerge getdelta
Необходимо добавить в файл /etc/make.conf строку:
FETCHCOMMAND="/usr/bin/getdelta.sh \${URI}"
Далее, все действия не отличаются от обычной установки программ, с той лишь разницей, что качаются дельты исходников, что в разы сокращает объем необходимого на обновление трафика.
Чистка distfiles
С течением времени может накопиться достаточно большое количество разных версий пакетов программ. При нехватке дискового пространства вы можете удалить пакеты с устаревшими версиями программ, для этого воспользуйтесь программой eclean-dist (app-portage/gentoolkit):
eclean-dist
Дефрагментация дисков
Современные файловые системы, используемые в Linux, минимизируют фрагментацию дисков, поэтому существует достаточно небольшое количество программ для дефрагментации.
Для файловой системы XFS - пакет sys-fs/xfsdump (утилиты для дефрагментации и настройки xfs).
Пример команды для просмотра текущей фрагментации диска:
xfs_db -r -c frag /dev/sda2
Пример команды для дефрагментирования:
xfs_fsr -v /dev/sda2
Проверка жесткого диска
Для проверки жесткого диска на битые сектора используйте утилиту badblocks.
badblocks -svn -o /sda_log.txt -b 4096 -c 256 -p 2 /dev/sda