OpenSCADAWiki: Roman Savochenko/ Linux Short All ...

Home | Index | Changes | Comments | Users | Registration | Login  Password:  
 
This is an old revision of RomanSavochenko/LinuxShortAll from 2006-12-11 18:07:50..

Linux -- кратко обо всём.


Автор: /RomanSavochenko
Примечание: Документ создаётся автором с 2002г. До настоящего момента документ создавался в среде LaTeX. На текущий момент выполняется публикация документа в среде Wiki с последующим оформлением в среде dockbook. LaTeX версию документа можно взять PDF Documentздесь и исходник здесь. Документ оформляется в среде WIKI для привлечения к его развитию пользователей ОС Linux занимающихся изучением ОС Linux и желающих опубликовать свой опыт работы в данной ОС. Разрешается вносить изменения в данный документ с целью исправления обнаруженных ошибок или с целью его дополнения.


Внимание. Документ доступен только для чтения. Если вы желаете его дополнить воспользуйтесь ссылкой: http://www.freesource.info/wiki/Stat'i/KratkoOboVsjom/Linux


Contents

1 Конфигурационные и информационные файлы/каталоги

1.1 Общесистемные

/dev/ -- содержит специальные файлы устройств:

pts/ -- файлы устройств открытых псевдотерминалов.

/etc/ -- основная директория конфигурационных файлов:

anacrontab -- конфигурация задач выполняемых anacron;
aspldr.conf -- конфигурация boot-загрузчика ASPLoader (дистрибутив ASPLinux);
auto.misc, auto.master -- конфигурации автомонтировщика;
crontab -- конфигурация задач выполняемых cron;
csh.login -- профиль системы для для TCSH (выполняется после регистрации);
fstab -- конфигурация файловых систем(ФС) автоматически монтирующихся при загрузке;
group -- системные группы пользователей;
gtk/ -- файлы указателей шрифтов для графического тулкита GTK;
HOSTNAME -- текущее имя машины;
inittab -- конфигурация последовательности загрузки (для init);
issue -- сообщение выдаваемое перед локальной регистрацией;
issue.net -- сообщение выдаваемое перед сетевой регистрацией;
login.defs -- описывает поведение login и su;
logrotate.conf -- конфигурация демона автоматической обработки логов (ротация, упаковка, удаление);
logrotate.d -- директория конфигурационных файлов демона автоматической обработки логов;
ld.so.conf -- конфигурация динамического линковщика;
lilo.conf -- конфигурация boot-загрузчика LILO;
man.conf -- конфигурация системы страниц помощи, команда man;
motd -- сообщение выдаваемое после удачной регистрации;
mtab -- список смонтированных ФС;
nologin -- наличие этого файла запрещает пользователям входить в систему с выдачей сообщения в файле;
nsswitch.conf -- конфигурация последовательности поиска имен по различным источникам;
pam.d/ -- содержит файлы конфигурации PAM:
su -- описывает поведение команды su;
sudo -- описывает поведение sudo.

password -- системные пользователи;
profile -- профиль системы для BASH (выполняется после регистрации);
rc.d/ -- директория системы инициализации init (в стиле UNIX):

init.d/ -- содержит скрипты, для управления системными демонами (сервисами);
rcX.d/ -- директории уровней запуска X, содержат ссылки на скрипты в init.d;

sysconfig/ -- содержит системные Файлы конфигураций:

keyboard -- описание текущей раскладки клавиатуры;
desktop -- установка графической среды (KDE,GNOME..);
i18n -- конфигурация общесистемной локали (локаль отдельных пользователей может содержаться в {home}/i18n);
harddisks -- общие параметры дисков системы:
harddiskhd[x] -- параметры конкретно взятого диска <x>.

security/ -- содержит Файлы описывающие безопасность системы:

console.apps/ -- содержит файлы указывающие на функции доступные непривилегированному пользователю из консоли;
console.perms -- правила изменения прав доступа к устройствам, при аутентификации;
limits.conf -- конфигурация лимитов пользователей.
sysctl.conf -- содержит команды для автоматической инициализации sysctl-параметров ядра;
syslog.conf -- конфигурация демона системного логера (syslogd);
shadow -- содержит закодированные пароли пользователей (для системы хранения паролей TCB пароли хранятся в /etc/tcb/*);
skel/ -- шаблон директории пользователя (в момент создания пользователя содержимое директории пользователя копируется отсюда);
sudoers -- указание на то какие пользователи и какие программы могут быть запущены с привилегиями root используя sudo.

/proc/ -- виртуальная ФС отражающая параметры ядра:

sys/ -- содержит файлы с параметрами системы (большая часть допускает модификацию):
kernel/ -- содержит файлы с параметрами ядра:
cap-bound -- управление дополнительными правами (root) (0 - root права аннулируются);
hostname -- имя хоста (системы);
osrelease -- версия ядра системы;
ostype -- тип ОС (Linux, *BSD, ...);
panic -- признак паники ядра;
version -- дата сборки ядра.

fs/ -- содержит файлы с параметрами ФС:

file-max -- максимальное количество открываемых файлов.
devices -- список типов устройств в системе;
modules -- список модулей подключенных к ядру;
self -- ссылка на информацию о текущем процессе;
cpuinfo -- информация о процессорах системы.

/usr/lib/locale/ -- содержит локали различных стран и языков;
/usr/share/locale/ -- локализации отдельных программ под конкретный язык;
/usr/share/man/ -- страницы помощи man (в том числе и локализованные);
/var/spool/cron/ -- задачи пользователей для cron (формируются с помощью "crontab -e" от пользователя);
/var/spool/at/ -- задачи пользователей для at;
/home/{user}/ -- домашняя директория пользователя:

.bashrc -- профиль конкретного пользователя для BASH (запускается единожды);
.cshrc -- профиль конкретного пользователя для TCSH;
.bash_profile -- профиль конкретного пользователя для BASH (запускается при каждом запуске bash).

1.2 Сеть

/etc/ -- основная директория конфигурационных файлов:

ethers -- Файл соответствия аппаратных MAC адресов сетевым IP адресам в сети, в случае несоответствия доступ для хоста будет закрыт;
export -- конфигурация NFS-ресурсов доступных извне;
hosts -- перечень хостов и соответствующих им IP-адресов;
host.allow -- список хостов которым вход разрешен;
host.deny -- список хостов которым вход запрещен (для libc ver 5);
host.conf -- указывает где и в каком порядке искать имена хостов (для libc ver 6);
nsswitch.conf -- конфигурация последовательности поиска имен по различным источникам;
resolv.conf -- конфигурация резолвера имён, содержит список DNS-серверов;
samba/ -- содержит файлы конфигурации samba:
smb.conf -- главный конфигурационный файл SAMBA;
smbusers -- описывает соответствие SAMBA пользователей к системным пользователям;
smbpasswd -- содержит хеши пользователей SAMBA, пароли устанавливаются утилитой smbpasswd.

services -- содержит сопоставления номеров портов/сокетов их именам;
sysconfig/ -- содержит системные Файлы конфигураций:

network -- конфигурация сети;
network-scripts/ -- скрипты и файлы конфигурации сетевых интерфейсов.

xinetd.conf -- конфигурация суперсервера Internet (централизованное управление сокетами/портами);
xinetd.d/ -- директория содержит файлы конфигураций отдельных сервисов для суперсервера xinetd;
ppp/ -- директория содержит конфигурации PPP-соединений:

options -- содержит общую для всех PPP-соединений конфигурацию;
options.* -- конфигурация конкретно взятого соединения (например модемное options.ttyS1);
ip-up -- скрипт выполняемый при/для соединения (демоном pppd);
ip-down -- скрипт выполняемый при/для разъединении (демоном pppd).

1.3 Железо

/etc/ -- основная директория конфигурационных файлов:

printcap -- Файл конфигурации принтеров;
inputrc -- конфигурация ресурсов ввода с клавиатуры;

/usr/lib/kbd/ -- содержит файлы необходимые для корректной работы клавиатуры:

keymaps/i386/qwerty/*.kmap.gz -- файлы консольных роскладок клавиатуры.

/home/{user}/ -- домашняя директория пользователя:

.inputrc -- конфигурация ресурсы ввода с клавиатуры конкретного пользователя.

1.4 X (графическая система)

/etc/X11/fs/config -- содержит перечень каталогов со шрифтами для X;
/etc/X11/XF86Config -- Файл конфигурации X (XFree86);
/etc/X11/xorg.conf -- Файл конфигурации X (XOrg);
/usr/X11R6/bin/X -- ссылка на текущий X сервер;
/home/{user}/.Xauthority -- файл авторизации для запуска X-приложений удаленно, файлы на удаленных машинах должны соответствовать;
/home/{user}/.xinitrc -- сценарий загрузки X сервера конкретного пользователя;

2 Утилиты

2.1 Основные пользовательские

awk -- утилита манипуляции файлами данных, выборка и обработка текста;
bg -- работа с множеством задач в терминале: перевод остановленной (Ctrl+Z) задачи на задний план;
cal -- календарь (за любой год);
cat, zcat -- выдает указанные файлы на STDOUT;
cd -- смена директории;
clear -- очистка экрана терминала;
cp -- копирование файлов и директорий;
cpio -- копирование файлов в архив и из архива (может использоваться для архивов);
cut -- вырезает из входного файла столбцы, строки;
date -- отображает текущую дату и время;
dd -- преобразование, создание и другие манипуляции с файлами в двоичном виде:

dd if=/dev/zero of=/swap bs=1024 count=8208 - создание пустого файла swap размером 8Мб
dd if=/dev/fd0 of=boot.img bs=18k - создание образа из дискеты

echo -- выполняет эхо-повтор строки на терминале;
exit -- завершить процесс с указанным кодом возврата;
fg -- работа с множеством задач в терминале: перевод остановленной (Ctrl+Z) задачи на передний план;
file -- определение типа любого файла;
find -- поиск:

-type -- тип выводимых файлов;
-name -- имя искомого файла;
-size -- размер искомого файла.

gpg — утилита шифрования и подписывания электронной подписью;
grep -- поиск указаной строки в указанных файлах или потоках;

grep 'str' mifile.txt

gzexe -- архивирование в исполняемый модуль, с распаковкой при запуске;
gzip -- компрессия и декомпрессия файлов:

Опции:
-<n> -- выполнить компрессию с уровнем <n>=(1..9);
-d -- декомпрессия.

Примеры:

gzip < /dev/cdrom > cdrom.iso.gz — чтение и упаковка образа CD;

head -- показывает заголовок/начало указанного файла;
hexdump -- печать входного потока в указанном формате (DEC,HEX,OCT,ASCII);
history -- показывает нумерованный список истории команд;
ipcs -- показывает ресурсы IPC(inter process communication);
ipcrm -- удаляет ресурсы IPC(inter process communication);
kill, skill -- посылка сигнала процессу;
let,bc,expr -- выполняет арифметические, логические и другие действия над числовыми значениями в переменных окружения;
ln -- создание и обслуживание ссылок;
locate -- поиск файла в уже созданной базе;
ls -- листинг директории или информация про файл/директорию;
md5sum -- подсчёт md5 суммы;
mkfifo -- утилита создания именованных каналов;
mknod -- утилита для создание специальных файлов;
more, less, zless -- просмотр файла постранично;
mpage -- печать нескольких страниц на одной;
nice,snice -- запуск команды с указанным приоритетом (-20 -- +20);
nohup -- запуск команды с отвязкой от текущего терминала;
pidof -- показать PID работающей программы;
pr -- форматирование, текстового файла для печати;
printenv, env -- показывает переменные окружения;
ps -- показывает запущенные в системе процессы;
pstree -- показывает дерево запущенных процессов;
renice -- изменение приоритета активного процесса (в скрипте);
rm -- удаление файлов и директорий;
rpm -- утилита для работа с RPM-пакетами:

-i packet -- установить пакет;
-e packet -- удалить пакет;
-U packet -- обновить пакет;
-V packet -- проверка корректности установки/текущего состояния указанного пакета;
-a -- выполнение указанной операции для всех пакетов;
-q -- запрос данных о пакете:
f -- поиск пакета которому принадлежит указанный файл;
i -- вывод информации о пакете;
l -- список файлов, принадлежащих пакету;
s -- состояние файлов пакета;
d -- список файлов документации пакета;
c -- список конфигурационных файлов пакета;
p -- выполнить операцию над ещё неустановленным пакетом;

-b файл.spec -- частичная или полная обработка *.spec файла для сборки пакета:

a -- создание бинарного и исходного rpm пакета;
b -- создание бинарного rpm пакета;
c -- выполнение этапов: %pre и %build с распаковкой и компиляцией;
i -- выполнение этапов: %pre, %build и %install;
l -- проверка списка файлов в %files;
p -- выполняется этап %pre (распаковка архива);
--rebuild my.src.rpm -- скомпилировать и создать бинарный rpm из исходного rpm;
--recompile my.src.rpm -- скомпилировать из исходного rpm;
--test -- проверка файла спецификаций;
--clean -- удаление дерева каталогов BUILD;

screen -- консольный экранный менеджер, позволяет открывать команды в новом окне того же терминала с возможностью переключения (Ctrl+A), временного отключения (Ctrl+A,D) и восстановления сессии (screen -r);
sed -- потоковый редактор;
sleep -- усыпляет данный процесс на указанное количество секунд;
slocate -- поиск файла по ранее созданной базе (slocate bash);
sort -- сортировка данных в файле/потоке;
split/csplit -- разбиение/сбор больших файлов на куски;
stat -- информация о файле/директории;
strings -- выделение символьных сообщений из не текстового файла;
symlinks -- утилита обслуживания символьных ссылок в системе;
tar -- создание архивов и пакетов;

-v -- отображать список обработанных файлов;
-с -- создавать новый архив;
-x -- распаковать архив;
-f <file> -- упаковывать в указанный файл <file>;
-z -- выполнять компрессию полученого пакета с помощью gzip;
-j -- выполнять компрессию полученого пакета с помощью bzip2;
-t -- просмотр содержимого архива;

tail -- показывает хвост указанного файла;
test -- проверка типов файлов и сравнение значений;
tee -- читает из стандартного входа, а затем записывает в стандартный выход и в файл;
touch -- обновление/установка отметки времени файла или создание пустого файла при его отсутствии;
time -- определение времени и ресурсов выполнения команды;
tr -- трансляция символов (преобразование/замена одних на другие);
tree -- дерево части файловой системы;
updatedb -- создание и обновление базы данных для команды locate;
vi, vim -- очень мощный текстовый редактор с оригинальным управлением;
vimdiff -- просмотр сравниваемых файлов в vim;
wc -- подсчет количества строк, символов слов в файле;
which,whereis -- показывает полный путь к искомой программе;

2.2 Базовые для администрирования

adduser, useradd -- добавление пользователей в систему;
anacron -- периодический запуск программ без чёткой привязки ко времени, но обязательно;
apropos -- поиск man-страницы по ключевому слову;
arch -- архитектура текущей системы;
at, batch -- автоматизация разовых запусков программ в указанное время;

echo 'wget url' | at 01:00 — запустить загрузку в 01:00

basename -- выделение имени файла/директории из полного пути;
badblock -- поиск плохих блоков на носителе (HDD, FDD);
chfn -- изменение имени пользователя и информация о нем;
сhgrp -- смена группы файла, каталога ...;
chkconfig -- конфигурация уровней загрузки различных сервисов;
chmod -- смена режима доступа к файлу;
chown -- смена владельца и группы владельцев файла, каталога ...;
chroot -- смена корня текущей сессии;
chvt -- переключение на указанный терминал;
chsh -- смена типа командного интерпретатора;
consolechars -- загрузка консольных экранных шрифтов;
convmv -- перекодировка имён файлов/директорий с одной кодировки в другую (может понадобиться для перекодирования файлов на ФС: ext2, ext3, reisrfs);
cron -- планирование периодического запуска программ;
crontab -- формирование пользовательской конфигурации cron;
df -- информация о файловых системах данной машины;
dirname -- выделение имени директории из полного пути;
dmesg -- показать лог о загрузке ядра;
du -- получение информации о размере содержимого файла или директории;
dumpkeys -- dump карты клавиатуры;
export -- встроенная команда BASH, для определения переменной окружения и экспортирования её для общей доступности;

export EDITOR=xemacs -- определение переменной <EDITOR> значением <xemacs>;

fgconsole -- номер текущего терминала;
finger,who -- информация о всех пользователях системы;
free -- информация о состоянии памяти;
fuser -- выдает список процессов использующих указанный файл или сокет, а также позволяет закрывать процессы занимающие ресурс;
getconf -- запрос системных конфигурационных переменных;
groupadd -- добавление группы пользователей;
groupdel -- удаление группы пользователей;
iconv -- преобразование содержимого файла из одной в другую кодировку;
id -- информация о пользователе;
info -- показать документацию из страниц связанной помощи (GNU-doc);
init -- утилита начальной загрузки;

q -- перезапуск init для активизации изменений в /etc/inittab;

loadkeys -- установка раскладки клавиатуры;
locale -- получение информацию о настройках локали (/etc/sysconfig/i18n);
localedef -- создание новой локали на основе базовой;
login -- вход в систему;
logrotate -- утилита для автоматической упаковки, чистки и другой обработки логов;
lsof -- печатать списка открытых в системе файлов, сокетов, каналов, разделяемых библиотек;

-p <n> -- список системных ресурсов используемых <n> процессом;
<name> -- список процессов использующих ресурс <name>.

man,xman -- показать страницу руководства;

-k <word> -- поиск страницы по ключевому слову;

mesg -- управление доступом на запись к текущему терминалу (для посылаемых сообщений);
mpage -- размещение нескольких страниц текста в одной и печать их на PostScript принтере;
ntpdate -- утилита синхронизации времени через Internet(www.ntp.org);
passwd -- смена пароля пользователя;
popd — извлечь директорию из стека директорий;
pushd — помещение текущей директории в стек директорий;
pwd -- получение полного имени текущей директории;
rlogin -- вход на удаленную систему;
service -- утилита для операций над сервисами в /etc/rc.d/init.d;

service smb start -- запуск сервиса Samba;

set -- выполняет операции над переменными окружения (встроенная команда BASH);
setfont -- установка консольного шрифта;
setsid -- запуск программы в новой сессии;
sg -- смена основной группы пользователя, или выполнение команды от имени указанной группы;
slogin -- вход в систему по шифрованому протоколу ssh (тоже что и ssh);
ssh -- вход в систему по шифрованому протоколу ssh;
stty -- получение и установка параметров терминала, переопределение специальных клавиш;
su -- смена пользователя текущей сессии или выполнение команды от имени указанного пользователя (по умолчанию root);

-l -- с перечитыванием конфигурационных файлов;

sudo -- запуск отдельных программ от имени другого пользователя (нужно прописать в /etc/sudoers);
shutdown -- выключение системы;
talk -- двухсторонний разговор с другим пользователем;
tload -- информация о загрузке системы;
top, htop -- вывод информации о процессах с сортировкой по занимаемому времени;
tput -- управление терминалом;
tset, reset -- инициализация терминала на curses;
tty -- имя текущего псевдотерминала;
ulimit -- управление ограничениями пользователей.
umask -- определяет маску прав по которой будут создаваться новые файлы;
uname -- печатает информацию о текущей OС;
unset -- очистка/удаление переменных окружения (встроенная команда BASH);
uptime -- время непрерывной работы системы;
users -- список пользователей в системе;
userdel -- удаление пользователей из системы;
usermod -- изменение учетной записи пользователя;
vmstat -- информация об использовании виртуальной памяти;
w -- информация о том что делает текущий пользователь;
wall -- передача широковещательного сообщения (всем пользователям системы);
watch -- периодический запуск указанной программы;
whoami -- сообщает имя текущего пользователя;
write -- написать сообщение указанному пользователю;
ytalk -- расширенная версия talk, с возможностью работы в X;


2.3 Файловая система

cdrecord -- запись CD дисков;

cdrecord -v speed=2 dev=0,6,0 -data my.img

cfdisk -- конфигурация разделов диска;
edquota -- редактирование квот файловой системы;
fdformat -- Форматирование дискеты;
fdisk -- работа с разделами диска;
fsck -- проверка файловой системы указанного типа;
fsck.<fs> -- проверка файловой системы типа <fs>;

fsck.vfat /dev/fd0 -- проверка файловой системы FAT12 на флоппи диске.

hdparm -- установка параметров дисковой подсистемы;
loadlin.exe -- загрузка ядра linux из ОС DOS;
losetup -- создание петлевого устройства(loop) с криптованием;

losetup -k 192 -e aes /dev/loop4 /tmp/file.iso -- создание loop4 на file.iso с криптованием.

mkfs -- создает FS указаного типа как на физический раздел так и в файл;
mkfs.<fs> -- создание FS типа <fs>;

mkfs.vfat /dev/fd0 -- создание файловой системы FAT12 на флоппи диске.

mkisofs -- создание ISO образа из каталога;

mkisofs -r -o my.iso /usr/games

mount -- монтирование файловых систем:

Важные опции:
quiet -- позволяет копировать/переносить файлы без вопросов о невозможности смены прав доступа (для ФС типа FAT);
iocharset -- кодировка в которой производится ввод/вывод (для ФС FAT);
codepage -- кодовая страница в которой хранится монтируемая файловая система (для ФС FAT);
showexec -- отображать корректно запускаемые файлы (для ФС FAT);
rw -- монтировать в режиме чтение-запись;
ro -- монтировать в режиме только для чтения.

Примеры:

mount -t smbfs - o username=tridge, password=foobat //c:/data/test -- монтирование сетевого диска //c на каталог /data/test;
mount -t ext2 /dev/fd0 /mnt -- монтирование флоппи диска с FS ext2 на каталог /mnt;
mount [-t auto] /dev/fd0 /mnt -- монтирование флоппи диска на каталог /mnt с автоматическим определением системы;
mount host:/mnt/export /mnt/local -- монтирование директории /mnt/export удаленной машины host на локальную директорию /mnt/local;
mount -t iso9660 -o ro,loop=/dev/loop0 /my.iso /mnt/cdrom2 -- создание loop устройства из образа CDROM;
mount -t cdfs /dev/cdrom /mnt/cdrom -- позволяет увидеть/отредактировать CD диск как есть (с сессиями);
mount -bind /home /var/local -- подключить каталог /home к каталогу /var/local.

parted -- очень мощный манипулятор дисковыми разделами;
quota -- квоты для текущего пользователя;
quotaon -- включение квот;
quotaoff -- выключение квот;
quotacheck -- проверка квот файловой системы;
quotastats -- состояние квот файловой системы;
tune2fs -- изменение параметров смонтированной ext2/ext3;
resize2fs -- изменение размера файловой системы ext2/ext3 на разделе (в связке с LVM);
resize_reiserfs -- изменение размера файловой reiserfs системы на разделе (в связке с LVM);
swapoff -- отключить свопинг;
swapon -- включить свопинг;
sync -- экстренный сброс буферов на диск;
umount -- отмонтировать файловую систему;
xcdroast -- X-оболочка для записи CD/DVD (над cdrecord и mkisofs).

2.4 X (графическая система)

appres -- информация о ресурсах X-приложений;
glxingo -- информация о расширении GLX (OpenGL);
gnome-session -- запуск дисплей-менеджера GNOME(GDM);
import -- создаёт снимок X-экрана или конкретного окна;
listres -- вывод списка X-ресурсов;
mkfontdir -- создает раскодировщик шрифтов в текущем каталоге (из указаного каталога);

mkfontdir -e /usr/X11R6/lib/X11/fonts/encodings

showrgb -- наименования и значения стандартных цветов;
startkde -- запуск оконного менеджера KDE;
startx -- скрипт запуска X-сервера;

startx - :2 -- запуск еще одного экземпляра X, под номером 2;
startx - -depth 24 -- запуск X-сервера с глубиной цвета 24 бита;

ttmkfdir -- создание директории TTF шрифтов.

ttmkfdir > fonts.scale -- после можно скопировать в fonts.dir

xdpyinfo -- информация о дисплее;
xev -- просмотр информации о событиях в окне;
xf86config -- конфигурация X-сервера;
xfontsel -- выбор шрифтов для X-сервера;
xfs -- сервер шрифтов;
xhost -- утилита управления доступом удалённых хостов к X-серверу;
xinit -- утилита запуска X, а затем указанного приложения (по умолчанию - xterm);

xinit /usr/bin/icewm - :1

xkill -- завершение оконного приложения;
xlsfonts -- вывод списка шрифтов X-сервера;
xmag -- увеличение части экрана;
xmodmap -- изменение раскладки клавиатуры в X;
xosview -- выводит основную информацию об ОС;
xprop -- вывод реквизитов окна;
xrefresh -- перерисовка экрана;
xset -- утилита установки параметров X-сервера;
xsetroot -- установка вида корневого каталога;
xvidtune -- настройка параметров монитора (частоты кадров и строк);
xvinfo -- информация о расширении Xv;
xwininfo -- показать информацию об указанном окне;
xwd -- захват изображения на экране.

2.5 Железо

alsaconf -- установка звуковой карты на подсистеме звука ALSA;
hwclock -- установка/считывание аппаратных часов (CMOS);
kbd_mode -- установка режима работы клавиатуры (RAW, MEDIUMRAW, XLATE, UNICODE);
lpr -- печать с файла или с потока на указанный принтер;

lpr -P lp1 my.txt -- печать файл my.txt на принтер lp1

lpq, lpstat -- состояние очереди печати;
lprm -- удаление задания печати из очереди;
lspci -- выводит список устройств на PCI - шине;
pbm* -- преобразование, из графического формата *.pdm в формат принтера [*];
pciscan -- сканирование PCI-шины и отображение модулей(драйверов) необходимый для работы с устройствами на PCI-шине;
setleds -- установка светодиодов на клавиатуре;
setserial -- установка/конфигурация COM портов;
setterm -- установка параметров терминала;
showkey -- утилита для отображения сканкодов клавиш и кодов мапированных системой;
statserial -- утилита для контроля за состоянием последовательного(COM) порта;
tunelp -- установка параметров параллельного порта;
usbview -- утилита для просмотра и конфигурации USB-устройств.

2.6 Мультимедиа

alsamixer -- ALSA-миксер;
aumix -- консольный AUDIO-миксер;
cdparanoia -- позволяет «грабить» Audio-CD;
lame -- преобразование *.wav в *.mp3;
mencoder -- перекодировка видеофайлов с одного видеоформата в другой;

mencoder dvd://1 -oac mp3lame -ovc xvid -xvidencopts bitrate=800 -o 1.avi -- перекодировка первой дорожки DVD-диска с битрейтом 800 аудио-кодеком mp3lame и видео-кодеком xvid.

oggenc -- преобразование *.wav в *.ogg;
play -- проигрывание звуковых файлов;
rec -- запись в звуковой файл.

2.7 Сеть

arp -- манипуляция системным ARP кешем (манипуляция аппаратными адресами);
ethereal -- мощный анализатор трафика сети;
ettercap -- cнифер сети;
iptraf -- мощный и удобный сканер сети;
ifconfig -- утилита конфигурации сетевых интерфейсов (eth0, ppp0, lp0 ...);

down -- выключить интерфейс;
up -- включить интерфейс;
inet <ip> -- интерфейс с <ip> адресом;
hw ether <mac> -- установить MAC адрес интерфейса;
eth0:0 -- псевдоним eth0:0 на интерфейс eth0.

iftop -- контроль общего трафика по интерфейсам;
ipchains -- утилита конфигурации firewall на основе IP-цепочек (ядра 2.2.*);
iptables -- утилита конфигурации firewall на основе IP-таблиц (ядра 2.4.*);
lynx — консольный WEB-браузер. Может использоваться для выполнения различных действий над WEB-страницами в скриптах.

lynx -dump -width=100 file://mypage.html > mypage.txt — преобразование html-страницы в текст.

minicom, xminicom -- установка соединения с другой системой через модем(COM);
netstat -- состояние сети (отображает используемые сокеты и их состояния);

-a -- вывод всех сокетов;
-e -- показать какой пользователь работает с сокетом в настоящий момент.

nmap,nmapfe -- сканер сети и его GUI, можно получить перечень открытых портов и т.д;
nmblookup -- утилита работы с NetBIOS (для SMB);

nmblookup -B Host '*' -- возвращает IP адрес <Host>;
nmblookup -d 2 '*' -- посылка широковещательных сообщений.

ping -- проверка связи с удаленным хостом, путём посылки служебных тестовых сообщений;
route -- управление таблицей маршрутизации;

delete -- удаление указанного роутинга;
add -- добавление указанного роутинга;

rsync -- утилита для работы с протоколом rsinc, который, в свою очередь, используется для синхронизации по сети;

rsync -va --partial --stats --delete-after -e ssh ./ devel:/incoming/backports/2.4/ — отправка пакетов в репозиторий ALTLinux Sisyphus путём синхронизации локальной директории с удалённым сервером.

smbclient -- утилита для организации клиентских запросов к SMB-серверу;
smbprint -- печать на SMB-принтер;
traceroute -- проверка прохождения сетевых пакетов через сервера в сети;
tcpdump -- дамп TCP протокола, позволяет отслеживать различные запросы;
testparm -- проверка конфигурации файла smb.conf для SMB-сервера;
wget -- мощная утилита для выкачивания файлов из сети по протоколам: HTTP, HTTPS, и FTP.

2.8 Почта

mail -- создать сообщение;
mailq -- показать очередь отправляемых сообщений;
mutt,pine -- консольный почтовый клиент;
newaliases -- добавляет новые почтовые алиасы сервера исходящих сообщений;
procmail -- утилита автоматизации обработки почтовых сообщений;
sendmail -- управление сервером исходящей почты.

-q[time] -- обработать сообщения в очереди;
-v -- режим печати сопровождающих сообщений.

2.9 Ядро

depmod -- проверка зависимостей модулей (выполняется при добавлении новых модулей);

-a -- проверка модулей по всей структуре /lib/modules и внесение соответствующих изменений;

installkernel -- скрипт инсталляции ядра (используется после компиляции ядра - make install);
lsmod -- получение списка загруженных и работающих модулей;
insmod -- подключение модуля к ядру;
modinfo -- получение информации о модуле и его параметрах;
modprobe -- утилита управления модулями ядра, без параметров подключает модуль к ядру;

-с -- перечисляет все сконфигурированные сокращения, опции и команды для модулей;
-l -- перечисляет все возможные модули;
-r -- выгружает модуль;

mkinitrd -- скрипт автоматического создания загрузочного образа RAM-диска (для подключения к ядру);
powertweak -- утилита для тонкого управления настройками ядра (через sysctl);
procinfo -- получить информацию о процессах и системе (из /proc);
ramsize -- конфигурация размера диска в памяти используемого образом ядра по умолчанию;
rdev -- конфигурация корневого каталога используемого образом ядра по умолчанию;
rmmod -- отключение модуля от ядра;
sysctl -- конфигурация параметров (/proc/sys/) ядра во время его работы;
vidmode -- конфигурация видеорежима используемого образом ядра по умолчанию.

2.10 Программирование

aclocal -- утилита из инструментария Automake, генерирует макрос aclocal.m4 на основе файла configure.in;
ar -- создание/редактирование архивов(статических библиотек) из объектных модулей;
autoconf -- утилита из инструментария Autoconf, генерирует скрипт configure на основе configure.in;
automake -- утилита из инструментария Automake, генерирует Makefile.in на основе Makefile.am;

r -- добавление новых и замена старых файлов;
c -- создание библиотеки при её отсутствии.

cpp -- препроцессор языка C (обычно вызывается из gcc);
ctags -- генерирует тег-файл для облегчения навигации по коду (используется редактором VIM);

-e -- эмуляция etags для генерации тег-файлов для emacs.

ctrace -- для прослеживания выполнение C-программы по операторам;
cxref -- анализирует группу .c-файлов и строит для каждого файла таблицу перекрестных ссылок на автоматические, статические и глобальные имена.
dialog -- позволяет создавать диалоги в консоли, из скрипта (на основе ncurses);
diff -- поиск изменений в сравниваемых текстовых файлах;

diff -uNr каталог.orig каталог > my.patch -- создание патча;

f2c -- транслирует исходный код программы на языке "Fortran" в исходный код на языке "C";
gcc -- GNU коллекция компиляторов языка С,С++,ASM (с вызовом линкера);

-x lang -- определяет язык исходных модулей;
-c -- компилирует и собирает ранее или позже перечисленные исходные файлы;
-S -- компилирует перечисленные исходные файлы в *.s файлы;
-E -- производит первичную обработку исходных файлов;
-o rez -- собрать перечисленные obj-файлы в один файл <rez>;
-L -- определяет пути поиска библиотек;
-l -- определяет перечень статических библиотек (без lib* и *.a);
-w -- запрет отображения предупреждений компилятора;
-Wall -- генерировать все возможные предупреждающие сообщения;
-pedantic -- проверка исходного текста на соответствие стандарту ANSI;
-Wl -- различные опции линковщика:
,rpath -- определяет дополнительные пути поиска динамических библиотек (-Wl,rpath,/usr/newpath);
,soname -- название разделяемой библиотеки (-Wl,-soname,libfuncs.so.1).
-fPIC -- создание объектных файлов для динамических библиотек (PIC - Position Independent Code.)
-shared -- создание динамической библиотеки (совместно с -o);
-nostdlib -- не использовать стандартные системные запускающие файлы или линкующиеся библиотеки;
-static -- принуждает использовать статические библиотеки вместо динамических;
-rdynamic -- включает возможность использования символьной информации для разрешения ссылок в динамически загружаемых библиотеках;
-M -- для каждого файла с исходным текстом препроцессор будет выдавать на стандартный вывод список зависимостей в виде правила для программы make;
-MM -- аналогичен ключу -M, но в список зависимостей попадает только сам исходный файл, и файлы, включаемые с помощью директивы #include "имя_файла";
-MD -- аналогичен ключу -M, но список зависимостей выдается не на стандартный вывод, а записывается в отдельный файл зависимостей;
-MMD -- аналогичен ключу -MD, но в список зависимостей попадает только сам исходный файл, и файлы, включаемые с помощью директивы #include "имя_файла";
-pipe -- компилятор будет работать через каналы;
-O[n] -- установить уровень оптимизации (n=0..3);
-g -- добавить отладочную информацию;
-p, -pg -- добавить в модуль код для отслеживания узких мест, после выполнения генерируется mon.out файл, который можно обработать утилитой gprof;
-masm -- использовать стандарт ассемблера (att|intel).

gdb -- мощный консольный GNU дебагер;
indent -- утилита форматирования исходного текста под указанные требования;
lclint -- утилита проверки синтаксиса исходных модулей;
ldconfig -- активизировать изменения в файле /etc/ld.so.conf;
ldd -- показывает динамические библиотеки используемые программой;
lint -- обнаруживает в C-программах конструкции, которые могут привести к ошибкам во время выполнения, расточительно используют ресурсы или могут снизить мобильность программ;
ltrace -- трассировка динамических библиотек, программы указанной в параметре;
make -- используется для организации сложных проектов из десятков файлов;

-directory -- указывает рабочую директорию;
-makefile -- указывает на используемый makefile;
-p -- вызывает вывод списка всех установок по умолчанию;
-j3 -- установить количество параллельно компилирующих процессов;

memprof -- программа для определения утечек памяти в программах и др;
mtrace -- обработка лога созданного С-функцией mtrace;
nm -- используется для получения различной информации из таблицы имен объектных файлов обычного формата;
objdump -- позволяет получить много информации об объектном файле, а также дизасемблировать его;
od -- печать дампа файла;
p2c -- транслирует исходный код программы на языке "Pascal" в исходный код на языке "C";
patch -- внесение изменений в файл исходя из файла изменений;

patch -p1 < ../my.patch -- внесение изменений в текущий каталог из my.patch;
patch -p1 < my.diff

prof, gprof -- получение статистики по времени выполнения каждой функции программы, для использования этой функции, необходимо скомпилировать с ключом -p;
ranlib -- добавление таблицы индексов библиотеки созданной ar в эту же библиотеку;
SCCS (Source Code Control System) -- это набор утилит, предназначенных для управления версиями исходных текстов программ, в состав SCCS входят утилиты admin(1), cdc(1), comb(1), delta(1), get(1), prs(1), rmdel(1), sccsdiff(1), val(1), what(1);
sdb -- символьный отладчик (Symbolic Debugger);
shar -- создание самораспаковывающихся кодированных архивов для отправки по почте;
size -- выдает количество байт, занимаемое тремя секциями (.text, .data и .bss) объектного файла обычного формата при загрузке его в память для выполнения;
strace -- трассировка системных вызовов, осуществляемых программой указанной в параметре;
strip -- удаляет из объектного файла обычного формата таблицу имен и информацию о номерах строк;
sum -- расчет контрольной суммы;
Xdialog -- позволяет создавать диалоги в X из скрипта.


3 Процедуры

3.1 Компиляция ядра

$ cd KernelTree/  #Переход к распакованому корню дерева исходников ядра
$ make config(menuconfig, xconfig)  #Конфигурация
$ make dep  #Создание файлов зависимостей
$ make clean  #Очистка от ранее скомпилированных модулей
$ make bzImage  #Компиляция ядра
$ make install  #Установка ядра
$ make modules  #Компиляция модулей
$ make modules_install  #Установка модулей

3.2 Создание swap в файле

$ dd if=/dev/zero of=/swap bs=1024 count=8208  #Создание файла необходимого размера для swap
$ mkswap /swap  #Инициализация структуры swap в файле
$ /bin/sync  #Сброс изменений на диск
$ swapon /swap  #Включение swap (отключение - swapoff)

3.3 Смена имени системы

3.4 Удалённое подключение с использованием X-сервера, для запуска GUI приложений

Вариант 1 (обычный):

client$ xinit - :1  #Запустить X-сервер на клиенте (должен запуститься xterm)
client$ xhost +server  #Зарегистрировать машину сервера у клиента
client$ telnet server -l UserName  #Подключиться к удаленной машине (серверу)
server$ export DISPLAY=client:0.0  #Установить переменную DISPLAY
server$ startkde  #Запустить оконный менеджер

Вариант 2 (используя ssh):
client$ xinit - :1  #Запустить X-сервер на клиенте (должен запуститься xterm)
client$ ssh -X UserName@server  #Подключиться к удаленной машине (серверу)
server$ startkde  #Запустить оконный менеджер

3.5 Установка русской консоли

$ consolechars -f UniCyr_8x16 -m koi8-r;
$ echo -ne "\033(K";
$ loadkeys ru1;

3.6 Подготовка и компиляция проектов на основе autoconf/automake

$ gettextize -f -c  #Генерация локализационных файлов
$ autoheader  #Генерация файла
$ autoscan  #Автоматическая генерация cofigure.scan и проверка configure.in
$ ifnames  #Создание списка идентификаторов которые используются в препроцессоре
$ aclocal -I -m4  #Генерация макроса aclocal.m4
$ autoconf  #Генерация скрипта configure. Для реконфигурации использовать autoreconf
$ automake -a -c  #Генерация файла Makefile.in
$ configure  #Генерация Makefile
$ make  #Компиляция проекта
$ make install  #Установка программы

3.7 Форматирование дискет, создание FS, проверка FS

$ fdformat  /dev/fd0
$ mkfs.vfat /dev/fd0
$ ckfs.vfat -ta /dev/fd0

3.8 Создание зашифрованных ФС

$ dd if=/dev/zero of=./sequre_disk bs=1024 count=50000  #Создание файла для будущей FS
$ losetup -e aes /dev/loop0 ./sequre_disk  #Создание шифрованого loop устройства
$ mkfs.ext3 /dev/loop0  #Создание файловой системы на loop устройстве
$ losetup -d /dev/loop0  #Отключение loop устройства
$ mount -o loop,encryption=aes ./sequre_disk /mnt/tmp/  #Обычное монтирование шифрованной ФС

3.9 Подготовка к проверке выделения памяти с помощью Electric Fence

3.10 Подготовка к проверке выделения памяти с помощью mtrace

3.11 Подключение дисковых квот

3.12 Печать страниц документации

3.13 Настройка ssh

client$ ssh-keygen  #Генерация ключей на локальной машине в директорию " /.ssh/"
client$ scp ./identity.pub rserver: ~/.ssh/  #Передача публичного ключа на удалённый сервер (любым способом)
rserver$ cat ~/.ssh/identity.pub >> ~/.ssh/authorized_keys  #Авторизация своего открытого ключа на сервере
# либо 'client$ ssh-copy-id rserver'  вместо предыдущих двух строчек
client$ ssh rserver  #Подключение к удалённому серверу

3.14 Создание ramdisk (диска в памяти)

$ mkfs /dev/ram0
$ mount /dev/ram0 /mnt/disk

3.15 Создание, использование и обслуживание LVM

$ vgscan  #Поиск по системе виртуальных групп VG
$ vgchange -ay  #Активизировать виртуальную группу (-an - деактивизировать)
$ pvscan  #Поиск доступных физических томов и отображение сравнительной информации о них
$ pvdisplay /dev/hda1  #Просмотр информации о физическом томе
$ pvcreate /dev/hda1  #Подготовка физического тома PV (тип раздела 8Eh)
$ pvmove /dev/hda1  #Освобождение физического тома (перенос данных на другие физические тома)
$ vgdisplay vg00  #Просмотреть информацию о виртуальной группе
$ vgcreate vg00 /dev/hda1 /dev/hdb1  #Создание виртуальной группы на основе двух физических томов
$ vgremove vg00  #Удаление виртуальной группы
$ vgextend vg00 /dev/hdc1  #Добавление физического тома к виртуальной группе
$ vgreduce vg00 /dev/hda1  #Удаление физического тома из виртуальной группы
$ vgexport vg00  #Подготовка виртуальной группы для переноса на иную машину
$ vgimport vg00 /dev/hda1 /dev/hda2  #Импорт виртуальной группы (с другой машины)
$ lvcreate -L1500 -nlv00 vg00  #Создание логического тома (LV) с именем nlv00 и размером 1500 Мб
$ lvremove /dev/vg00/home  #Удаление логического тома
$ lvextend -L120M /dev/vg00/home  #Увеличение размера логического тома до указаной величины
$ lvextend -L+100M /dev/vg00/home #Увеличение размера логического тома на указанную величину
$ lvreduce -L120M /dev/vg00/home  #Уменьшение размера логического тома до указаной величины
$ lvreduce -L-100M /dev/vg00/home  #Уменьшение размера логического тома на указанную величину
$ e2fsadm  -L+100M /dev/vg00/home  #Изменение размер логического тома с файловой системой ext2/ext3

3.16 Добавление в программу поддержки i18n

3.17 Свободная запись на перезаписываемые оптические носители (пакетный режим)

# Включение пакетного режима. Для оптических носителей всех типов.
$ cdrwtool -d /dev/cdrom -q  # Подготовка CD-RW носителя
$ dvd+rw-format /dev/dvd  # Подготовка носителей: DVD-RW, DVD+RW, DVD-RAM
$ pktsetup /dev/pkt_dev /dev/cdrom  # Включение режима пакетной записи на устройство /dev/pkt_dev
$ mkudffs /dev/pkt_dev  # Создание файловой системы UDF. Только для DVD+RW и DVD-RAM
$ mount /dev/pkt_dev /mnt/pkt_cd -t udf -o rw,noatim  # Монтирование пакетного устройства на /mnt/pkt_cd
#Прямая запись (без пакетного режима) на носители DVD+RW и DVD-RAM
$ dvd+rw-format /dev/dvd  # Подготовка носителей (один раз).
$ mkudffs /dev/dvd  # Создание файловой системы UDF (один раз).
$ mount /dev/dvd /mnt/cdrom  # Обычное монтирование устройства. Т.е совершенно прозрачно и стандартно!

3.18 Запуск терминальной задачи на сервере и продолжение её работы в фоне

$ screen  # Запуск терминального экранного менеджера
$ wget ftp://workserv.org/mydownloadfile.iso  # Запуск задачи
Ctrl+A D  # Отключение экрана от терминала (выполнение в фоне)
$ screen -r  # Подключение к фоновому терминалу.


4 Устройства

4.1 Типы

b - блочные;
c - символьные;
- - обычный файл;
d - каталог;
l - символьная ссылка;
p - именованный канал;
s - сокет;


4.2 Файлы устройств (в каталоге /dev)

null - Нулевое устройство, данные в котором исчезают;
full - Имитация полного устройства, при записи и генерация нулей, при чтении (для отладки программ);
port - Порты IO;
zero - Неисчерпаемый источник нулей;
random - Источник случайных чисел (медленный; более случайный);
urandom - Источник случайных чисел (быстрый; менее случайный);
psaux - Порт мыши PS/2;
scd[x] - SCSI устройства (x=0..n);
sg[x] - Обобщенные устройства SCSI аппаратуры (x=0..n);
hd[x][y] - Стандартное IDE устройство, где x отдельное устройство, y - раздел устройства (x=a..z; y=1..n);
fd[*] - Флоппи устройство;
loop[x] - Петлевые устройства (x=0..n);
mem - Физическая память;
kmem - Виртуальная память ядра;
tty - Управляющий терминал выполняемого процесса;
tty[y][x] - Терминальные устройства (y=S - COM порты);
vcs[x] - Получение снимка экрана виртуальной консоли <x> (x=0..n);
vcsa[x] - Получение снимка экрана виртуальной консоли <x> с заголовком и байтами атрибутов (x=0..n);
eth[x] - Интерфейс сети Ethernet (различные сетевые карты) (x=0..n);
sl[x] - Интерфейсы для связи по протоколу SLIP (x=0..n);
lp[x] - Параллельные порты (x=0..n);
ram[x] - Виртуальный диск, в памяти (x=0..n);
ramdisk - -//-
sndstat - Состояние звукового драйвера;
audio[x] - Устройство звукового вывода, совместимое с форматом Sun (x=0..n);
dsp[x] - Устройство квантования звука (x=0..n);
mixer[x] - Для управления микшерными аппаратными средствами на звуковой плате (x=0..n);
music - Интерфейс высокого уровня для последовательного воспроизведения звука;
midi[x] - Устройство непосредственного доступа к Миди-порту (x=0..n).


5 Горячие клавиши

5.1 BASH

Ctrl+H(?) - Erase "<-"
Ctrl+C - Прервать текущий процесс (сигнал SIGINT)
Ctrl+\ - Прервать текущий процесс с дампом памяти(core damp)
Ctrl+D - Eof (выход из консольного пользовательского процесса)
Ctrl+S - Остановить процесс
Ctrl+Q - Запустить процесс
Ctrl+Z - Перевести процесс в фоновый режим
Ctrl+J - Сброс параметров терминала
Crtl+W - Удалить последнее слово
Ctrl+M - Аналог клавиши "Enter"
Ctrl+R - Переводит в режим поиска команды по истории. Повторное нажатие перебирает сходные по маске строки
Ctrl+L - Очистка экрана
TAB - Автозавершение команд
ScrLock - Приостановка выполнения(печати) текущей команды
Ctrl+Alt+Del - Закрыть систему и перегрузится
Up; Down - Просмотр и редактирование истории команд
Alt+Left - Переключение по терминалам влево(консоль)
Alt+Right - Переключение по терминалам вправо(консоль)
Sh+PgUp - Прокрутка текста вверх
Sh+PgDown - Прокрутка текста вниз
Ctrl+B - На символ назад
Ctrl+F - На символ вперёд
Alt+B - На слово вперёд
Alt+F - На слово назад
Ctrl+A - Переводит курсор в начало строки
Ctrl+E - Переводит курсор в конец строки
Ctrl+D - Удаление символа в позиции курсора
Ctrl+H - Удаление символа перед позицией курсора
Alt+D - Удаление символов до ближайшего справа пробела
Ctrl+W - Удаление символов до ближайшего слева пробела
Ctrl+U - Очистить строку ввода слева от курсора
Ctrl+K - Очистить строку ввода справа от курсора
Ctrl+T - Смена положения соседних символов
Ctrl+_ - Откат редактирования
Ctrl+X,Ctrl+U - -//-
MidlMouse - Вставляет текст, выделенный в данный момент в другом месте

5.2 X

Ctrl+Alt+F[n] - Переключение между псевдотерминалами
Ctrl+Alt+<+> - Сменить разрешение на следующее (прописаных в XF86Config)
Ctrl+Alt+<-> - Сменить разрешение на предыдущее (прописаных в XF86Config)
Ctrl+Alt+ESC - Режим удаления указанного окна
Ctrl+Alt+BkSpc - Закрыть текущий X сервер
MidlMouse - Вставляет текст, выделенный в данный момент в другом месте

5.3 KDE

Alt+Tab - Переход между окнами в прямом направлении
Alt+Sh+Tab - Переход между окнами в обратном направлении
Ctrl+Tab - Переход между рабочими столами в прямом направлении
Ctrl+Sh+Tab - Переход между рабочими столами в обратном направлении
Ctrl+Esc - Показать таблицу активных процессов (ksysguard)
Alt+F1 - Вызвать K-меню
Alt+F12 - Эмулировать мышь стрелками клавиатуры
Alt+LeftMouse - Перенести окно схватив его за любую видимую его часть
Alt+PrScreen - Сделать снимок текущего окна в буфер обмена
Ctrl+Alt+l - Запереть рабочий стол
Ctrl+Alt+d - Спрятать/показать рабочий стол

5.4 SysRQ ядра (Alt+SysRq+Key)

r - Отключает режим непосредственной передачи символов с клавиатуры и устанавливает её в режим XLATE
k - Уничтожает все процессы на текущей виртуальной консоли
b - Немедленно перезапускает систему
o - Отключить питание системы через АРМ
s - Синхронизировать все файловые системы
u - Демонтирует и перемонтирует все смонтированные файловые системы в режиме только для чтения
p - Вывести текущее значение регистров и флагов на консоль
t - Вывести список текущих задач и информацию о них на консоль
m - Вывести текущее состояние памяти на консоль
0-9 - Устанавливает уровень выдачи сообщений на консоль для фильтрации сообщений ядра
e/i - Посылает сигналы term или kill всем процессам, кроме init
l - Посылает SIGKILL всем процессам, включая init

6 Форматы основных конфигурационных файлов

6.1 xorg.conf

Identifier - идентификатор устройства ввода
Driver - драйвер устройства ввода:
kbd - клавиатура;
mouse - манипулятор мышь.
Option - опция:
XkbLayout - список раскладок клавиатуры ("us,ru,ua")
XkbOptions - опции клавиатуры, обычно указывается комбинация клавиш для переключения раскладки клавиатуры ("grp:ctrl_shift_toggle", "grp_led:scroll")
XkbVariant - вариант раскладки клавиатуры (default, winkeys)
XkbModel - модель клавиатуры (105,104 ...)
Device - файл устройства мыши (/dev/input/mice)
Protocol - Протокол интерфейса мыши (PS/2, IMPS/2, ...)
ZAxisMapping - Расключение дополнительных клавиш мыши (колесо - "4 5")
  • Секция "Monitor" - описание монитора
  • Identifier - идентификатор монитора
    DisplaySize - размер дисплея (пропорции - 320 240)
    Option - опция:
    dpms - включение режима энергосбережения
  • Секция "Device" - описание устройства видеовывода
  • Identifier - идентификатор видеокарты
    Driver - драйвер видеокарты (nv, nvidia, radeon, fglrx, ...)
    Identifier - идентификатор экрана
    Device - идентификатор устройства видеовывода, видеокарта (описана в секции "Device")
    Monitor - идентификатор монитора (описан в секции "Monitor")
    DefaultDepth - глубина цвета устанавливаемая по умолчанию
    SubSection "Display" - подсекция экрана (описывает допустимые разрешения с глубинами цвета):
    Depth - глубина цвета (8,15,16,24,32)
    Modes - допустимые разрешения экрана ("1152x864" "1024x768" "1024x736" "1024x600" "960x720" "848x480" "832x624" "800x600")
  • Секция "ServerLayout" - обобщающая конфигурационная секция (корень)
  • Identifier - идентификатор сервера
    Screen - идентификатор экрана используемого сервером (описан в секции "Screen")
    InputDevice - идентификатор устройства ввода (описано в секциях "InputDevice")
    Load - загрузка указанного модуля:
    dbe - ???
    glx - Модуль языка GLX (для OpenGL)
    dri - Direct rendering infrastructure (для OpenGL)

    6.2 Управляющие последовательности консоли

    \007 - издать звук;
    \033[10;#] - установить частоту звукового сигнала в герцах;
    \033[11;#] - установить продолжительность звукового сигнала в миллисекундах.
    \033[0m - все атрибуты по умолчанию;
    \033[1m - жирный шрифт (интенсивный цвет);
    \033[2m - полу яркий цвет (тёмно-серый, независимо от цвета);
    \033[4m - выделение (ярко-белый, независимо от цвета);
    \033[5m - мигающий;
    \033[7m - реверсия (знаки приобретают цвет фона, а фон - цвет знаков);
    \033[22m - установить нормальную интенсивность;
    \033[24m - отменить подчеркивание;
    \033[25m - отменить мигание;
    \033[27m - отменить реверсию;
    \033[30 - чёрный цвет знаков;
    \033[31 - красный цвет знаков;
    \033[32 - зелёный цвет знаков;
    \033[33 - коричневый цвет знаков;
    \033[34 - синий цвет знаков;
    \033[35 - фиолетовый цвет знаков;
    \033[36 - цвет морской волны знаков;
    \033[37 - серый цвет знаков;
    \033[40 - чёрный цвет фона;
    \033[41 - красный цвет фона;
    \033[42 - зелёный цвет фона;
    \033[43 - коричневый цвет фона;
    \033[44 - синий цвет фона;
    \033[45 - фиолетовый цвет фона;
    \033[46 - цвет морской волны фона;
    \033[47 - серый цвет фона.
    \033[#A - передвинуть курсор вверх на # строк;
    \033[#B - передвинуть курсор вниз на # строк;
    \033[#С - передвинуть курсор вправо на # столбцов;
    \033[#D - передвинуть курсор влево на # столбцов;
    \033[#E - передвинуть курсор вниз на # строк и поставить в начало строки;
    \033[#F - передвинуть курсор вверх на # строк и поставить в начало строки;
    \033[#G - переместить курсор в указанный столбец текущей строки;
    \033[#;#H - задает абсолютные координаты курсора (строка, столбец).
    \033]Pnrrggbb - изменяет палитру. n - номер цвета; rr, gg и bb - значения RGB-компонент в шестнадцатеричной форме;
    \033]R - восстанавливает палитру, принятую по умолчанию.
    \033[12;#] - сделать текущей консоль с указанным номером.
    \033]0;text\007 - присваивает имя окну и иконке;
    \033]1;text\007 - присваивает имя иконке;
    \033]2;text\007 - присваивает имя окну.
    \033c - сброс терминала;
    \033(K - переключение на загружаемый шрифт.

    6.3 BASH

    6.3.1 Общее

    ![numb] - запуск строки <numb> из истории (history);
    !str - запуск ближайшей строки соответствующей маске str из истории (history);
    \ - продолжение текущей строки на другой строке или экранирование специального символа после данного символа (\$);
    ; - разделитель команд;
    () - выполнения сценария в скобках в другой подоболочке;
    (()) - включение выражений с "С" синтаксисом;
    [] - включение условных операций с синтаксисом команды test;
    "pwd" - определение строки с разрешением подстановки значений переменных;
    'pwd' - определение строки с запрещением подстановки значений переменных;
    `pwd` - результат выполнения команды pwd;
    x=pwd - определение переменной окружения x и присвоение ей строки pwd;
    x='34' - определение переменной окружения x и присвоение ей строки '34';
    x[2]=pwd - определение массива x и присвоение его элементу 2 строки pwd;
    x=(zero one two three) - определение массива x и заполнение четырех его элементов;
    x=([0]=zero [3]=three [2]=two [1]=one) - определение массива x и заполнение четырех его элементов по выбору;
    $(( 100/3 )), $[100/3] - выполнение простых целочисленных операций.

    a=4; echo $[a=$a+4] $[a+=4] $[a=a+4]
    a=4; echo $[a=$a+4, a+=4, a=a+4]
    $[2!=2] $[2!=3]
    $[a=2<3] $a
    id++, id-- - постфиксное увеличение/уменьшение значения переменной на 1
    ++id, --id - префиксное увеличение/уменьшение значения переменной на 1
    -, + - унарные минус и плюс
    !, ~ - логическое и побитовое отрицание
    ** - возведение в степень
    *, /, % - умножение, деление, получение остатка от деления
    +, - - сложение, вычитание
    < <, > > - побитовый сдвиг влево и вправо
    <=, >=, <, > - сравнение
    ==, != - равенство и неравенство
    & - побитовое И
    ^ - побитовое исключающее ИЛИ
    | - побитовое ИЛИ
    && - логическое И
    || - логическое ИЛИ
    выр1?выр - условное вычисление
    =, *=, /=, %=, +=, ?=+ - присваивание
    выр1,выр2 - запятая
    () - выделение более приоритетного участка выражения

    $x, ${x} - подстановка значения переменной/параметра x
    ${!x} - косвенная подстановка значения переменной/параметра указанного в x;
    ${#x} - косвенная подстановка значения переменной/параметра указанного в x,

    если параметр - * или @, подставляется количество позиционных параметров,
    если параметр - массив с индексом * или @, подставляется количество элементов массива;

    ${x:?"Error, no bar"} - генерировать ошибку если x не определена или равна нулю;
    ${x?"Error, no bar"} - -//-;
    ${x:="foose"} - присвоить значение по умолчанию если x не определена или равна нулю;
    ${x="foose"} - -//-;
    ${x:offset:lenght}, ${x:offset} - возвращает часть от x начиная с offset длиной lenght;

    В качестве длины и смещения могут выступать:

    ${x:+"foose"} - если переменная определена то вместо неё используется "foose";
    ${x+"foose"} - -//-;
    ${x:-"foose"} - если переменная определена то она используется иначе используется "foose";
    ${x-"foose"} - -//-;
    ${пар#шабл} - ??
    ${пар##шабл} - ??
    ${пар%шабл} - ??
    ${пар% %шабл} - ??
    ${пар/шабл/стр} - заменяется первая, самая длинная подстрока значения параметра, на указанную строку;
    ${пар/ /шабл/стр} - заменяются все самые длинные подстроки значения параметра, на указанную строку;
    ${array[@]} - обращение сразу ко всему массиву;
    $(x) - выполнение команды x и возврат результата (подобно `x`);
    $0 - имя команды в командной строке;
    $n, ${n} - аргумент n командной строки (n = 1...);
    $* - раскрывает единственное слово, содержащее список всех позиционных парам;
    $# - количество аргументов;
    $@ - ссылка на все аргументы команды отделенные пробелами;
    $$, $PPID - PID текущего процесса (скрипта);
    $? - код возврата последней команды;
    $! - PID последнего фонового процесса;
    $'\n' - вставка управляющего символа в строку;
    Comm && - выполняет действие после выражения если команда <Comm> неудачна;
    Comm || - выполняет действие после выражения если команда <Comm> удачна;
    MYVAR#*fo - отсекает от начала переменной MYVAR самую короткую часть удовлетворяющую маске *fo;
    MYVAR##*fo - отсекает от начала переменной MYVAR самую длинную часть удовлетворяющую маске *fo;
    MYVAR%fo* - отсекает от конца переменной MYVAR самую короткую часть удовлетворяющую маске fo*;
    MYVAR% %fo* - отсекает от конца переменной MYVAR самую длинную часть удовлетворяющую маске fo*;
    MYVAR:2:5 - возвращает часть строки MYVAR которая начинается с 2 символа и заканчивается 5;

    6.3.2 Основные переменные окружения оболочки

    PWD - текущий рабочий каталог;
    UID - цифровой идентификатор текущего пользователя;
    umask - содержит маску прав доступа по которой создаются новые файлы;
    BASH - полный путь вызова BASH;
    BASH_VERSION - версия данного экземпляра BASH;
    EDITOR - содержит имя редактора используемого для редактирования некоторых конфигурационных файлов;
    PAGER - содержит имя программы для отображения информационных страниц (типа more);
    SHLVL - количество запущенных BASH;
    REPLY - содержит последнюю строку ввода;
    RANDOM - содержит случайное число в диапазоне 0..32767;
    SECONDS - время в секундах от запуска BASH;
    HISTCMD - номер текущей команды в истории;
    IFS - внутренний разделитель полей;
    PATH - пути поиска команд;
    HOME - домашний каталог текущего пользователя;
    MAIL - имя файла в который поступает электронная почта;
    LOGNAME - имя пользователя использованное для входа в систему;
    SHELL - имя интерпретатора команд;
    LD_LIBRARY_PATH - описания пользовательских путей к динамическим библиотекам;
    DISPLAY - описывает адрес дисплея для X-приложений;
    LANG - переменная локали;
    TERM - содержит имя терминала;
    INPUTRC - содержит имя файла параметров для библиотеки readline, определяющей параметры ввода с клавиатуры;
    PS1,PS2 - описывает вид приглашения в командной строке;
    MALLOC_CHECK_ - указывает что делать с ошибками в функциях malloc, free:

    = 0 - молча игнорировать все ошибки;
    = 1 - сообщить об ошибке и продолжить работу;
    = 2 - прервать (без сообщения);
    = 3 - прервать и сообщить об ошибке.

    MALLOC_TRACE - определяет путь для команды mtrace и функции в программе mtrace;

    6.3.3 Основные операторы

    . - выполнить все команды в файле после точки;
    & - выполнить команду до него в фоновом режиме;
    if [ Condition ] - условный оператор ( if ( Condition ) - tch);
    then - выполнение условия;
    else - невыполнение условия;
    elif [ Condition ] - совмещенная команда else if;
    fi - окончание условного оператора;
    for x in 1 2 3 4 - оператор цикла, в x перебираются значения за in ( foreach x (1 2 3 4) - tch );
    while [ Condition ] - выполняет цикл пока верно условие Condition ( while ( Condition ) -tch );
    until [ Condition ] - выполняет цикл до равенства условия Condition;
    (repeat x expression - tch ) - выполняет повторение выражения <expression> x раз;
    select x in list; - запрашивает выбор из списка <list> и присваивает выбранное значение переменной <x>;
    do - начало цикла определенного for, while, until;
    done - конец цикла определенного for, while, until;
    break - завершение цикла;
    continue - продолжение цикла сначала;
    case x in - команда выбора. Имеет структуру:

    case "${x##*.}" in
    gz) gzunpack ${SROOT}/${x} ;;
    bz2) bz2unpack ${SROOT}/${x} ;;
    esac

    function func() { } - определяет функцию с именем func;
    export x - создает переменную окружения x и экспортирование её в систему;
    local x - создает локальную переменную окружения которая не перекрывает глобальной (часто используется для функций);
    declare - встроенная команда bash для декларирования переменных и изменения их атрибутов;
    set x = str - инициализация переменной;

    +V,+X - выключение отладочного режима;

    unset x - отмена инициализации переменной;
    read x y - ввод строки из двух слов;
    exit - выход из сценария;
    eval - означивание строки (т.е. замена записей типа "$5" на их значения);
    shift - сдвиг параметров командной строки на единицу (для доступа к параметрам с номером > 9 );
    trap - установка обработчиков сигналов в скрипте;
    alias - создание псевдонимов или альтернативных имен команд;
    unalias - удаление псевдонима;

    6.3.4 Операторы сравнения файлов

    -e - существует;
    -d - каталог;
    -f - обычный файл;
    -c - специальный файл;
    -L - символическая ссылка;
    -r - для чтения;
    -w - для записи;
    -x - исполняемый;
    -z - файл пуст;
    -s,(-z) - имя файла не нулевой длины;
    (-o) - пользователь является владельцем файла;
    fname1 -nt fname2 - fname1 новее fname2;
    fname1 -ot fname2 - fname1 старше fname2;

    6.3.5 Операторы сравнения строк

    -z - строка пуста;
    -n - строка не пуста;
    = ,(==) - строки равны;
    != - строки неравна;

    6.3.6 Арифметические операторы сравнения

    -eq - равно;
    -ne - неравно;
    -lt,(< ) - меньше;
    -le,(<=) - меньше или равно;
    -gt,(>) - больше;
    -ge,(>=) - больше или равно;

    6.3.7 Логические операторы

    ! - отрицание логического выражения;
    -a,(&&) - логическое "И";
    -o,(||) - логическое "ИЛИ"

    6.3.8 Перенаправления вывода

    | - перенаправление вывода в канал
    < file - file записать в STDIN
    > file - STDOUT записать в file
    ҐҐ<div class="center"> file - STDOUT добавить в file<br />
    </div>ҐҐ str - определяет слово <str> как признак окончания ввода
    2> file - STDERR записать в file
    1>&2 - STDOUT записать в STDERR
    2>&1 - STDERR записать в STDOUT
    &> file - STDOUT и STDERR записать в file

    6.3.9 Специальные символы

    \n - новая строка
    \b - возврат на один символ
    \c - печать строки без символа новой строки
    \f - переход к новой странице/экрану
    \r - возврат каретки
    \t - табуляция
    \v - табуляция по вертикали
    \\ - обратная косая черта
    0nnn - восьмеричное число
    xNN - шестнадцатеричное число

    6.3.10 Маски (подстановка, может быть отключена опцией -f или set)

    * - любая строка
    ? - любой одиночный символ
    [...] - соответствует любому символу в скобках [A-Z]; "! и ^" - исключение символа.

    6.3.11 Представление численных значений

    045 - восьмеричное число (начинается с 0)
    0x45, 0X32 - шестнадцатеричное число
    [основание#]n - число с основанием <n> (по умолчанию основание 10)

    Примеры:
    $[2#101] $[10#101] $[16#101]
    $[16#FF] $[16#ff] $[0xFF]
    $[64**2] $[64#@@]
    $[64#z] $[64#Z]

    6.3.12 Полезные обороты

    wc -l  # получить количество строк
    wc -w  # получить количество слов
    sed -n 4p  # получить указанную строку
    ls -1 /etc  # получить содержимое каталога по строкам
    head -c8 /dev/random | uuencode -m - | sed -n '2s/=*$//;2p'  # cгенерировать случайный пароль

    6.4 GDB

    run - запуск отлаживаемой программы
    break func - установка точку прерывания на функцию func
    list func - просмотр содержимого функции или исходного файла
    next - следующая команда;
    quit - выход;

    6.5 MAKE

    Формат правила:

    <цель_1> <цель_2> ... <цель_n>: <зависим_1> <зависим_2> ... <зависим_n>
    <команда_1>
    <команда_2>
    ...
    <команда_n>

    Цель это некий желаемый результат может представлять собой:


    Зависимость, также может быть файлом или командой которая должна выполнится ранее.

    6.5.1 Шаблонные правила

    .cpp.o: - файлы с расширением *.o зависят от соответствующий файлов с расширением *.cpp
    %.o: %.cpp - проверяет все файлы с расширением .cpp и заменяет цель на расширение .o
    .PHONY: x - объявление специальной цели (не файл)
    all: - выполняет эту цель при отсутствие параметров команды make

    6.5.2 Ключевые слова и команды

    =,:= - оператор объявления переменных (x = test)
    += - добавление текста к существующей переменной
    #define - определение переменных. (#define x "test 1")
    include - включение внешнего файлы и его обработка, с прерыванием при отсутствие файла
    -include - включение внешнего файлы и его обработка, без прерывания при отсутствие файла
    $(function par1, par2 ...) - вызов функции и получение значения переменной
    addprefix - добавляет префикс в первом параметре к каждому элементу в списке второго параметра
    addsuffix - добавляет суффикс в первом параметре к каждому элементу в списке второго параметра
    wildcard - расширяет переданные шаблоны до списка файлов соответствующих этим шаблонам
    notdir - выделение имени файла из полного пути
    patsubst - изменяет указанным образом слова подходящие под шаблон

    object_files = $(patsubst %.cpp, %.o, man.cpp) -> man.o

    override - позволяет изменять переменные заданные через пораметры make
    for x in 1 2 3 4; - оператор цикла, в x перебираются значения за in
    do - начало цикла определенного for
    done - конец цикла определенного for

    6.5.3 Специальные переменные

    VPATH - описывает список каталогов для поиска зависимостей
    CC - указывает компилятор языка С
    СXX - указывает компилятор языка С++
    СFLAGS - указывает флаги компилятора С
    CXXFLAGS - указывает флаги компилятора С++
    LDLIBS - описывает опции линкера

    6.5.4 Автоматические переменные

    `command` - вставить в сценарий выхлоп команды <command>
    $@ - имя цели обрабатываемого правила
    $< - имя первой зависимости обрабатываемого файла
    $^ - список зависимостей обрабатываемого правила

    6.6 Makefile.am

    bin_PROGRAMS - определяет имя программы
    <prog>_SOURCES - определение исходников от которых зависит программа
    CXX - имя C++ компилятора
    CXXFLAGS - определение опций С++ компилятора
    AUTOMAKE_OPTIONS - определение опций automake:

    6.7 configure.in

    AC_INIT(file) - инициализация скрипта и проверка на наличие исходников
    AC_CONFIG_AUX_DIR(dir) - использовать скрипты типа install-sh из каталога <dir>
    AM_INIT_AUTOMAKE(prog, 1.0) - определение имени и версии проекта
    AC_PROG_CC - проверка наличия С компилятора
    AC_PROG_CXX - проверка наличия С++ компилятора
    AC_OUTPUT([file ... [, extra-cmds [, init-cmds] ] ]) - создаёт выходные файлы <file> типа Makefile (копирует входной file.in и подставляет значения переменных).

    extra-cmds - дополнительные команды с их инициализацией в init-cmds

    AC_OUTPUT_COMMANDS(extra-cmds [, init-cmds] ]) - дополнительные команды с их инициализацией в init-cmds. Выполняются в конце config.status

    6.8 Сonfigure

    --bindir - директория для исполняемых файлов
    --build - платформа сборки
    --cache-file - файл для помещения результатов проверок
    --datadir - директория для хранения файлов данных
    --enable-...(-disable-...) - включить(выключить) возможность/функцию
    --exec-prefix - похож на опцию - -prefix
    --help - список всех опций командной строки
    --host - имя платформы домашнего(host) компьютера
    --includedir - директория заголовочного файла
    --infodir - директория информации типа <info>
    --libdir - директория библиотек
    --mandir - директория c руководствами
    --no-create - не создавать конечные файлы
    --norecursion - не вызывать вложенные configure
    --prefix - директория корневого каталога
    --sbindir - директория для системных исполняемых файлов
    --silent - подавляет вывод результатов исполнения на экран
    --srcdir - каталог исходных текстов
    --sysconfdir - каталог данных только для чтения(/etc)
    --target - имя целевой платформы
    --tmpdir - каталог для хранения временных файлов Configure

    6.8 RPM *.spec

    %description - Полное описание пакета.
    %prep - Подготовка архива. Задаются команды для извлечения исходного текста программы и его распаковки.
    %setup - Макрокоманда извлечения файлов из архива (-n - каталог приёмник).
    %build - Макрокоманда компиляции (обычно задаётся make).
    %files - Задаёт список файлов, входящие в состав пакета.
    %config - Задаёт список файлов, которые будут помещены в каталог /etc.
    %doc - Задаёт список файлов, которые будут помещены в каталог документации.
    %install - Этап установки программного обеспечения. Задаются команды установки файлов.
    %pre - Действия которые будут выполнены до инсталляции пакета.
    %post - Действия которые будут выполнены после инсталляции пакета.
    %preun - Действия которые будут выполнены перед удалением пакета.
    %postun - Действия которые будут выполнены после удалением пакета.
    %clean - Удаления дерева BUILD.
    %changelog - Содержит log изменения spec файла.
    $RPM_BUILD_ROOT - корень исходников данного пакета.
    $RPM_OPT_FLAGS - дополнительные опции переданные команде rpmbuild.

    6.9 /etc/syslog.conf

    [!NameProg] <facility>.[op]<level>[;<facility>.<level>] <Name file>
    где:

    <NameProg> - имя программы посылающей сообщения;
    <facility> - категория журналирования:

    <level> - Уровень детализации:

    <op> - Метод журналирования. При отсутствие выводит сообщения указанного и более высокого уровня:

    <Name file> - Имя файла для лога. Может также быть указателем на другую машину (@server.org) для журналирования на ней. А также передавать сообщения через канал другому приложению (|/usr/bin/messcheck.pl).

    6.10 /etc/modules.conf

    alias [class] [module] - определяет модуль/драйвер, как определенный класс устройств
    alias [class] off - обозначает, что этому классу не соответствует ни одно устройство
    options [класс или модуль] [знач1] [знач2] - определяет дополнительные параметры модуля
    pre-install [класс или модуль] command - выполняет программу <command> перед инсталляцией модуля
    post-install [класс или модуль] command - выполняет программу <command> после инсталляции модуля
    pre-remove [класс или модуль] command - выполняет программу <command> перед удалением модуля
    post-remove [класс или модуль] command - выполняет программу <command> после удаления модуля

    6.11 Поточный редактор "sed" и команды в редакторе VI


    Пример выделение частоты процессора:

    cat -n "/proc/cpuinfo | sed -n "/cpu MHz[^ ]*[ ]*\([^ ]*\).*/s\1/p"//

    Запросы:
    a - вставить текст после текущей строки
    c - заменить указанные строки
    d - исключить текущую строку
    e - открыть для редактирования указанный файл с проверкой старого
    E - начать редактирование файла без проверки
    f - напечатать имя редактируемого файла
    g - применить указанный запрос ко всем строкам
    i - вставить текст перед текущей строкой
    j - объединить строки
    k - поменять строки
    l - напечатать строку
    m - переставить группу строк в другое место
    n - напечатать строки вместе с их номерами
    p - напечатать строки
    q - выйти из редактора с проверкой сохранения текущего файла
    Q - выйти без проверки
    r - считать файл в буфер
    s - заменить текст в пределах строки
    t - скопировать группу строк
    u - аннулировать результат последней замены s
    v - применить указанный запрос ко всем строкам не содержащим заданный образец
    w - записать группу строк в файл
    W - дозаписать группу строк в конец файла
    = - напечатать номер строки
    ! - выполнить системную команду
    + - шаг вперёд на одну строку
    - - шаг назад на одну строку


    Выражения:
    . - любая литера, кроме новой строки
    [s] - любая литера из цепочки s
    [^s] - любая литера не входящая в цепочку s
    e* - все соседние вхождения;
    \(e\) - выделить подвыражение, на подвыражение можно ссылаться используя \n
    \n - n-е выделенное подвыражение
    ^ - начало строки
    $ - конец строки
    - экранировать специальный символ


    Адреса:
    . - текущая строка
    n - n-я строка
    $ - последняя строка редактируемого текста
    'x - строка, помеченная меткой x
    /e/ - ближайшая следующая строка, содержащая e
    ?e? - ближайшая предыдущая строка, содержащая e

    6.12 Поточный редактор AWK

    Формат записи: awk '{print $2,$1}'


    print $1,$3 - печатает указанные поля, разделённые пробелом, для всех строк
    printf "%s/*\n", $2 - печать форматированных данных

    6.13 Параметры ядра

    root=/dev/hda - расположение корневого раздела
    ro, rw - режим монтирования - только для чтения или полный
    hdd=ide-scsi - на каком ide диске эмулировать scsi
    init=/bin/bash - программа инициализации, выполняется сразу после загрузки ядра
    syngle - загрузится в одиночном режиме
    1,3,5 - режим загрузки INIT:

    1 - однопользовательский;
    3 - многопользовательский без GUI;
    5 - многопользовательский c GUI.

    6.14 CVS

    Репозиторий CVS хранит полные копии всех файлов и каталогов, находящихся под контролем версий.

    $ export CVSROOT=/home/Roman/progects/CVS_R   # Указание на каталог, где находится репозиторий CVS.
    $ export CVSROOT=:pserver:user@serv.comp.org:/CVS_R  # Указание на удалённый репозиторий.
    $ cvs -d /usr/local/cvsroot init  # Создание пустого репозитория.
    $ cvs -d:pserver:user@serv.comp.org:/usr/local/cvsroot init  # Создание пустого репозитория на удалённом сервере.
    $ cvs import MyProg MyName start  # Импортирует проект MyProg от имени создателя MyName в CVS.
    $ cvs -z 3 co tc  # Экспорт проекта tc для работы над ним. В результате чего будет создан каталог `tc', в который будут помещены все файлы.
    $ cvs co -r revise Prog  # Загрузить дерева проекта с ревизией(тегом) <revise>.
    $ cvs up  # Синхронизация исходных текстов со всеми изменениями (выполнять перед фиксацией своих изменений).
    $ cvs up -r revise  # Привести содержимое дерева в соответствии с ревизией <revise>.
    $ cvs ci backend.c -r revise  # Зафиксировать изменения в backend.c и запускает редактор (ENV: CVSEDITOR), чтобы ввести журнальную запись об изменениях.
    $ cvs ci -r revise  # Зафиксировать изменения в дереве под ревизией <revise> для всего дерева.
    $ cvs tag revise  # Привести вершину дерева к <revise>.
    $ cvs release -d tc  # Выполняет удаления вашей копии проекта и при этом проверяет, что все ваши изменения были зафиксированы.
    $ cvs log file.cc  # Вывести лог изменений в файле file.cc.
    $ cvs diff driver.c  # Вывести описание изменений внесенных в файл `driver.c'.
    $ cvs add readmi.cc  # Внесение файла readmi.cc под контроль CVS.
    $ cvs rm readmi.cc  # Сообщение CVS о том что файл readmi.cc должен быть удалён из репозитория при следуйщей команде <ci>.


    7 Права доступа

    Read ( r ) - [Владелец | группа | другие ] могут:

    файл - читать файл
    каталог - читать содержимое каталога

    Write ( w ) - [Владелец | группа | другие ] могут:

    файл - модифицировать файл
    каталог - создавать/удалять файлы и каталоги в данном каталоге

    Execute( x ) - [Владелец | группа | другие ] могут:

    файл - запускать файл
    каталог - делать каталог текущим и запускать в нем запускаемые файлы

    Setuid ( s ):

    файл - файл запускается от имени владельца файла
    каталог - не имеет смысла

    Setgid ( s ):

    файл - файл запускается от имени группы файла
    каталог - файлы и каталоги создаваемые в этом каталоге будут иметь туже группу-владельца что и сам этот каталог. Кроме того, у создаваемых директорий тоже будет установлен этот бит.

    Sticky ( t ):

    файл - указывает системе на необходимость сохранять образ этого файла на swap-устройстве, что позволяет быстро его запускать
    каталог - файлы в этом каталоге могут стирать только их владельцы

     
    There are no files on this page.[Display files/form]
    There are 2 comments on this page. [Display comments/form]