Difference between revisions of "General recommendations (Русский)"
Line 250: | Line 250: | ||
There are some programs and scripts that help building packages more convenient. See: a [[AUR Helpers|list of programs that help accessing the AUR]] | There are some programs and scripts that help building packages more convenient. See: a [[AUR Helpers|list of programs that help accessing the AUR]] | ||
+ | |||
+ | |||
+ | ===Лёгкая установка/обновление из AUR=== | ||
+ | |||
+ | Каждый должен знать, как пользоваться [[AUR]], [[ABS]], и [[makepkg]] | ||
+ | чтобы устанавливать пакеты программного обеспечения. Слежка и обновление за пакетами может стать утомительной, особенно при большом количестве пакетов. | ||
+ | |||
+ | Для облегчения проведения этих задач есть несколько программ/скриптов. | ||
+ | Смотри: [[AUR Helpers|list of programs that help accessing the AUR]] | ||
=== Using ABS to Recompile Packages === | === Using ABS to Recompile Packages === |
Revision as of 14:54, 8 December 2010
Вот некоторые популярные хитрости и общая информация, которая может пригодиться новичкам в Arch Linux.
Contents
- 1 Загрузка
- 2 Внешний вид
- 3 Общие улучшения консоли
- 3.1 Включение поиска по истории
- 3.2 Быстрое Bash дополнение
- 3.3 Расширенное Bash дополнение
- 3.4 Алиасы (псевдонимы) команд для экономии времени
- 3.5 Полезные команды и программы
- 3.6 Извлечение сжатых файлов
- 3.7 Использование 'less' Для Просмотра Сжатых Файлов
- 3.8 Включение поддержки мыши в консоли (gpm)
- 4 Локальная доставка почты
- 5 Управление пакетами и компиляция
- 6 Networking
Загрузка
Автоматическое распознавание устройств
- hwdetect дает информацию о том, какие модули необходимы для каждого устройства.
# pacman -S hwdetect
- Template:Package AURявляется альтернативой.
Повышение скорости загрузки Lilo
Чтобы ускорить процесс загрузки lilo, нужно добавить следующую команду в Template:Filename:
compact
Запуск X при загрузке
Смотрите: Start X at Boot (Русский)
Активация Numlock при загрузке
Смотрите: Activating Numlock on Bootup (Русский)
Конец процесса загрузки
После загрузки сситемы, экран очищается и появляется строка логина в системе, вследствие чего пользователь не может прочитать вывод инициализации или сообщения об ошибках. Это поведение по умолчанию может быть изменено несколькими путями:
Добавте одну из следующий записей в конец файла Template:Filename:
- Ждать нажатия клавиши перед очисткой экрана:
read -n1
- Очистка произойдет по прошествии 5-ти секунд или по нажатию клавиши:
read -t5 -n1
Или:
- Удалите первые 3 символа в Template:Filename, которые формируют escape-последовательность очистки экрана. Это также предотвратит очистку экрана после выхода из сессии.
- Запустите Template:Codeline из командной строки, чтобы отобразить все сообщение, сгенерированые ядром во время последней загрузки.
- Comment out the agetty instance that runs on
vc/1
in Template:Filename:
#c1:2345:respawn:/sbin/agetty -8 38400 vc/1 linux
Внешний вид
Раскрашивание вывода консоли (PS1)
Смотрите: Color Bash Prompt
Раскрашивание вывода 'ls'
Можно улучшить цветной вывод команды Template:Codeline; например, сломанные (ссылающиеся на несуществующие файлы или каталоги) символьные ссылки будут отображаться красным.
Файл Template:Filename уже должен содержать такую запись, скопированную из Template:Filename:
alias ls='ls --color=auto'
Следующий шаг - добавление следующей строки в Template:Filename и перезаход в учетную запись:
eval `dircolors -b`
Раскрашивание вывода 'grep'
Помимо запросов эстетов, цветной вывод Template:Codeline весьма полезен для изучения Template:Codeline и общей функциональности Template:Codeline. Чтобы включить его, добавьте следующие строки в Template:Filename:
export GREP_COLOR="1;33" alias grep='grep --color=auto'
Переменная GREP_COLOR
определяет цвет, в примере он светло-жёлтый.
Хотя ман-страница Template:Codeline сообщает, что переменная GREP_COLOR
устарела и вместо неё лучшеиспользовать GREP_COLORS
, эта переменная не работает (по крайней мере в grep 2.5.4) так что пока используйте GREP_COLOR
.
Colorizing and the Emacs Shell
By default, the emacs shell will rawly show escape sequences used to print colors. In other words, it will display strange symbols in place of the desired colored output.
Including the following into Template:Filename ammends the problem:
(add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on)
Получение раскрашенных Man-страниц
Смотрите: Man Page
Changing Console Fonts
Terminus популярен среди пользователей Arch. Устанавливается так:
pacman -S terminus-font
Отредактируйте Template:Filename:
CONSOLEFONT="ter-v16b"
Другие шрифты (с отличающимися стилями и размерами) могут быть найдены тут: Template:Filename
Переключайте шрифты налету с Template:Codeline:
setfont ter-v16b
Если шрифт в консоли изменился в процессе загрузки и init выводит странные символы, добавьте keymap ловушку (hook) в Template:Codeline и пересоздайте initramfs образ:
mkinitcpio -p kernel26
Смотрите: Mkinitcpio
Улучшение вида шрифтов для LCD мониторов
Смотрите: Font Configuration#LCD filter patched packages
Общие улучшения консоли
Включение поиска по истории
See: Bash:History Search
Быстрое Bash дополнение
С добавлением в Template:Filename:
set show-all-if-ambiguous on
нет необходимости дважды жать <Tab> чтобы получить список дополнений, теперь он будет появляться после одного нажатия.
Расширенное Bash дополнение
See: Bash:Advanced Bash Completion
Алиасы (псевдонимы) команд для экономии времени
alias ll="ls -lh" alias la="ls -a" alias exit="clear; exit" alias x="startx"
Персональные алиасы предпочтительно добавлять в Template:Filename, алиасы уровня системы (которые применяются ко всем пользователям) находятся в Template:Filename.
Полезные команды и программы
- grep - Ищет файл(ы) по шаблону.
grep -i syslog /etc/*
- Эта команда найдет все файлы в Template:Filename, в которых встречается слово "syslog". Опция Template:Codeline позволяет искать регистронезависимые совпадения.
- pkill и killall - Убивает процесс по имени.
killall kdm
- Убьет все потоки процесса Template:Codeline.
- pidof - Находит PID процесса по имени.
pidof init
- Выведет PID процесса init.
- ps - Показывает состояние запущенных процессов.
ps aux
- Покажет все активные процессы.
- locate - Быстро определяет местонахождение файлов на жестком диске.
locate egrep
- Найдет файлы и директории, в именах которых содержится egrep (перед использованием необходимо обновить базу (индексировать) путем выполнения Template:Codeline).
Извлечение сжатых файлов
Для Template:Codeline архивов используется комманда Template:Codeline, по умолчанию распаковывающая файл в соответствии с его расширением:
tar xvf file.расширение
В следующих примерах явно указываются типы архивов:
file.tar : tar xvf file.tar file.tgz : tar xvzf file.tgz file.tar.gz : tar xvzf file.tar.gz file.tar.bz : bzip -cd file.bz | tar xvf - file.tar.bz2 : tar xvjf file.tar.bz2 OR bzip2 -cd file.bz2 | tar xvf - file.tar.xz : tar xvJf file.tar.xz OR xz -cd file.xz | tar xvf - file.zip : unzip file.zip file.rar : unrar x file.rar
Некоторые из этих конструкций обеспечивают совместимость со старыми версиями, но они до сих пор бывают полезными при выполнении спецефических операций. Более подробную информацию ищите в руководстве(man tar) в секции Compatibility.
Чтобы не вводить каждый раз вручную комманды для распаковки архивов можно использовать приведенную ниже функцию. Добавьте следующий код в Template:Filename и используйте Template:Filename:
extract () { if [ -f $1 ] ; then case $1 in *.tar.bz2) tar xvjf $1 ;; *.tar.gz) tar xvzf $1 ;; *.tar.xz) tar xvJf $1 ;; *.bz2) bunzip2 $1 ;; *.rar) unrar x $1 ;; *.gz) gunzip $1 ;; *.tar) tar xvf $1 ;; *.tbz2) tar xvjf $1 ;; *.tgz) tar xvzf $1 ;; *.zip) unzip $1 ;; *.Z) uncompress $1 ;; *.7z) 7z x $1 ;; *.xz) unxz $1 ;; *.exe) cabextract $1 ;; *) echo "\`$1': неизвестный метод сжатия файла" ;; esac else echo "\`$1' нет такого файла" fi }
Функция сама выберет необходимую программу и аргументы для распаковки конкретного архива.
Использование 'less' Для Просмотра Сжатых Файлов
Юзеры, часто пользующиеся командной строкой, возможно захотят установить lesspipe:
# pacman -S lesspipe
Это позволяет использовать Template:Codeline для просмотра архивов:
less compressed_file.tar.gz
Результат будет примерно таков:
==> use tar_file:contained_file to view a file in the archive -rw------- username/group 695 2008-01-04 19:24 compressed_file/content1 -rw------- username/group 43 2007-11-07 11:17 compressed_file/content2 compressed_file.tar.gz (END)
Это также даёт воззможность использовать Template:Codeline для просмотра других типов файлов; как альтернативу для команд, ассоциированых с определённым типом файла (например просмотр html или pdf с помощью html2txt или pdftotext).
После установки Template:Codeline следует перелогиниться или запустить Template:Filename
Включение поддержки мыши в консоли (gpm)
Установка Template:Codeline предоставляет поддержку мыши в консоли:
# pacman -S gpm
Чтобы запустить его:
# /etc/rc.d/gpm start
Если мышь не работает должным образом, отредактируйте Template:Filename:
- Для PS/2 мышей, замените существующую строку:
GPM_ARGS="-m /dev/psaux -t ps2"
- Для USB мышей, замените существующую строку:
GPM_ARGS="-m /dev/input/mice -t imps2"
- Для устройств IBM Trackpoint, замените существующую строку:
GPM_ARGS="-m /dev/input/mice -t ps2"
Когда подходящая конфигурация найдена, добавьте Template:Codeline в DAEMONS
массив файла Template:Filename, чтобы демон Template:Codeline запускался при загрузке. Пример:
DAEMONS=(syslog-ng gpm network netfs crond)
Локальная доставка почты
Postfix
Настройка postfix для работы в режиме локальной доставки почты производится по следующей инструкции:Local Mail Delivery with Postfix. Смотри так-же, SSMTP и MSMTP.
Управление пакетами и компиляция
Pacman
Здесь преведены различные способы взаимодействия стандртного набора функций pacman'а с элементарным синтаксисом bash, что позооляет более удобно управлять пакетами.
- Установка нескольких пакетов, имеющий в названии общую часть, например пакеты
kdemod
:
pacman -S kdemod-{applets,theme,tools}
- Вы можете использовать более сложную структуру, необходимую вам:
pacman -S kdemod-{ui-{kde,kdemod},kdeartwork}
- Pacman имеет параметр Template:Codeline, который запретит вывод версий пакетов. Это позволяет переустановить все пакеты, содержащие в названии, к примеру, "compiz":
pacman -S `pacman -Qq | grep compiz`
- Тот же результат может быть достигнут без использования параметра Template:Codeline с использованием Template:Codeline:
pacman -S `pacman -Q | awk '/compiz/ { print $1 }'`
On the subject of reinstalling every package: listing currently installed packages will output everything, including packages that are local and/or might not be available for installation any longer.
Simply running:
pacman -S `pacman -Qq`
Will output errors because some (or many) of the packages were not found in the repositories. There needs to be a way to list only packages that can be installed from the repositories present in Template:Codeline's database. In order to do so, combining a command to list all packages, and another to hide the list of foreign packages is required.
This is achieved by using Template:Codeline to show only the packages that are not foreign packages:
pacman -S $(comm -3 <(pacman -Qq) <(pacman -Qqm))
Зеркала
Чтобы воспользоваться всеми преимуществами самых быстрых и актуальных зеркал, смотрите Mirrors.
Псевдомимы (aliases) pacman'а
Смотрите: Pacman Tips#Aliases
Accessing the AUR Seamlessly
Everyone should know how to use the AUR, ABS, and makepkg if they want to build packages. Tracking and updating custom built packages can become tedious, especially if they are numerous in quantity.
There are some programs and scripts that help building packages more convenient. See: a list of programs that help accessing the AUR
Лёгкая установка/обновление из AUR
Каждый должен знать, как пользоваться AUR, ABS, и makepkg чтобы устанавливать пакеты программного обеспечения. Слежка и обновление за пакетами может стать утомительной, особенно при большом количестве пакетов.
Для облегчения проведения этих задач есть несколько программ/скриптов. Смотри: list of programs that help accessing the AUR
Using ABS to Recompile Packages
The Arch Build System is a ports-like system of compile files used to make packages that are already in the repositories. To compile packages with different options see ABS.
Compiling Optimized Packages
When packages are compiled with Arch's package creation tool makepkg, the standard compiler (GCC) has options to be able specify machine type that can improve the load time, performance of a package. Generally any speed improvements are slight, but if you plan to compile a lot of packages you might want to consider setting your machine specifications.
For optimized the packages built using Template:Codeline, find your processor type in CFLAGS and edit Template:Filename. Example:
# For an Athlon CPU CFLAGS="-march=athlon -O2 -pipe -fomit-frame-pointer" CXXFLAGS="-march=athlon -O2 -pipe -fomit-frame-pointer"
Networking
Speeding up DNS Queries
Consider using Dnsmasq to improve load time by caching DNS queries.
Отключение IPv6
Пока ещё IPv6 не получил широкого распространения, может оказаться полезным отключение модуля IPv6.