Top.Mail.Ru
Шпаргалка по Linux командам — Geek Peak
Сейчас загружается
×

Шпаргалка по Linux командам

Шпаргалка по Linux командам

Шпаргалка по Linux командам
КомандаОписание
archвывести архитектуру компьютера  
cal 2007отобразить календарь на 2007 год.  
cat /proc/cpuinfoотобразить информацию о CPU (центральный процессор)  
cat /proc/interruptsотобразить прерывания  
cat /proc/meminfoпроверить используемую память  
cat /proc/swapsотобразить фаил(ы) swap (виртуальная память)  
cat /proc/versionотобразить версию ядра  
cat /proc/net/devотобразить сетевые карты и статистику по ним  
cat /proc/mountsотобразить примонтированные файловые системы  
clock -wсохранить текущую системную дату в BIOS (Базовая Система Ввода Вывода)  
dateотобразить текущую системную дату  
date 041217002007.00установить дату и время МесяцДеньЧасМинутаГод.Секунда  
dmidecode -qотобразить аппаратное оборудование системы (SMBIOS / DMI)  
hdparm -i /dev/hdaотобразить характеристики жесткого диска  
hdparm -tT /dev/sdaпротестировать производительность чтения данных с жесткого диска  
lspci -tvотобразить устройства на PCI шине  
lsusb -tvотобразить устройства на USB шине  
uname -mотобразить архитектуру компьютера 
uname -rотобразить используемую версию ядра  

Выключение, Перезагрузка и Выход из системы

КомандаОписание
init 0выключить систему 
logoutпокинуть сессию  
rebootперезагрузка 
shutdown -h nowвыключить систему 
shutdown -h 16:30 &запланированное выключение системы на 16 часов 30 минут  
shutdown -cотмена запланированного выключения системы  
shutdown -r nowперезагрузка 
telinit 0выключить систему 

Файлы и папки

КомандаОписание
cd /homeсменить текущую директорию на ‘/home’  
cd ..перейти в директорию уровнем выше  
cd ../..перейти в директорию двумя уровнями выше  
cdперейти в домашнюю директорию  
cd ~user1перейти в домашнюю директорию пользователя user  
cd -перейти в директорию, в которой находились до перехода в текущую директорию  
cp file1 file2скопировать файл file1 в файл file2  
cp dir/* .копировать все файлы директории dir в текущую директорию  
cp -a /tmp/dir1 .копировать директорию dir1 со всем содержимым в текущую директорию  
cp -a dir1 dir2копировать директорию dir1 в директорию dir2  
cp file file1скопировать файл file1 в файл file2  
iconv -lпоказывает список всех известных кодировок  
iconv -f fromEncoding -t toEncoding inputFile > outputFileпреобразовать символы из одной кодировки в другую  
find . -maxdepth 1 -name *.jpg -print -exec convertИзменение размеров всех изображений в папке, передача утилите “convert” из ImageMagick для создания уменьшенных копий изображений (предварительный просмотр)  
ln -s file1 lnk1создать символическую ссылку на файл или директорию  
ln file1 lnk1создать “жёсткую” (физическую) ссылку на файл или директорию  
lsотобразить содержимое текущей директории  
ls -Fотобразить содержимое текущей директории с добавлением к именам символов, характеризующих тип  
ls -lпоказать детализированое представление файлов и директорий в текущей директории  
ls -aпоказать скрытые файлы и директории в текущей директории  
ls *[0-9]*показать файлы и директории содержащие в имени цифры  
lstreeпоказать дерево файлов и директорий, начиная от корня (/)  
mkdir dir1создать директорию с именем ‘dir1’  
mkdir dir1 dir2создать две директории одновременно  
mkdir -p /tmp/dir1/dir2создать дерево директорий  
mv dir1 new_dirпереименовать или переместить файл или директорию  
pwdпоказать текущую директорию  
rm -f file1удалить файл с именем ‘file1’  
rm -rf dir1удалить директорию с именем ‘dir1’ и рекурсивно всё её содержимое  
rm -rf dir1 dir2удалить две директории и рекурсивно их содержимое  
rmdir dir1удалить директорию с именем ‘dir1’  
touch -t 0712250000 file1модифицировать дату и время создания файла, при его отсутствии, создать файл с указанными датой и временем (YYMMDDhhmm)  
treeпоказать дерево файлов и директорий, начиная от корня (/)  

Поиск фаила

КомандаОписание
find / -name file1найти файлы и директории с именем file1. Поиск начать с корня (/)  
find / -user user1найти файл и директорию принадлежащие пользователю user1. Поиск начать с корня (/)  
find /home/user1 -name \*.binНайти все файлы и директории, имена которых оканчиваются на ‘. bin’. Поиск начать с ‘/ home/user1’  
find /usr/bin -type f -atime +100найти все файлы в ‘/usr/bin’, время последнего обращения к которым более 100 дней  
find /usr/bin -type f -mtime -10найти все файлы в ‘/usr/bin’, созданные или изменённые в течении последних 10 дней  
find / -name *.rpm -exec chmod 755 '{}' \;найти все фалы и директории, имена которых оканчиваются на ‘.rpm’, и изменить права доступа к ним  
find / -xdev -name \*.rpmнайти все фалы и директории, имена которых оканчиваются на ‘.rpm’, игнорируя съёмные носители, такие как cdrom, floppy и т.п.  
locate \*.psнайти все файлы, содержащие в имени ‘.ps’. Предварительно рекомендуется выполнить команду ‘updatedb’  
whereis haltпоказывает размещение бинарных файлов, исходных кодов и руководств, относящихся к файлу ‘halt’  
which haltотображает полный путь к файлу ‘halt’  

Монтирование файловых систем

КомандаОписание
fuser -km /mnt/hda2размонтировать устройство hda2 если оно занято  
mount /dev/hda2 /mnt/hda2примонтировать диск с именем /dev/hda2 в папку с именем ‘/mnt/hda2’- перед монтированием проверьте существование папки ‘/mnt/hda2’  
mount /dev/fd0 /mnt/floppyпримонтировать floppy disk (дисковод мягких магнитных дисков)  
mount /dev/cdrom /mnt/cdromпримонтировать cdrom / dvdrom  
mount /dev/hdc /mnt/cdrecorderпримонтировать cdrw / dvdrom  
mount /dev/hdb /mnt/cdrecorderпримонтировать cdrw / dvdrom  
mount -o loop file.iso /mnt/cdromпримонтировать фаил или ISO образ (ISO – образ диска в ISO формате)  
mount -t vfat /dev/hda5 /mnt/hda5примонтировать раздел диска с Windows FAT32 файловой системой  
mount /dev/sda1 /mnt/usbdiskпримонтировать USB накопитель  
mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/shareмонтировать сетевую файловую систему Windows (SMB/CIFS)  
umount /dev/hda2отмонтировать диск с именем hda2 – незабудьте сначала выйти из точки монтирования ‘/mnt/hda2’  
umount -n /mnt/hda2начать отмонтирование без записи в фаил /etc/mtab – используется когда фаил находится в режиме только чтение или жесткий диск переполнен  

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

КомандаОписание
df -hотображает информацию о смонтированных разделах с отображением общего, доступного и используемого пространства  
dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1nпоказывает размер используемого дискового пространства, занимаемое файлами deb-пакета, с сортировкой по размеру (ubuntu, debian т.п.)  
du -sh dir1подсчитывает и выводит размер, занимаемый директорией ‘dir1’  
du -sk * | sort -rnотображает размер и имена файлов и директорий, с соритровкой по размеру  
ls -lSr |moreвыдаёт список файлов и директорий рекурсивно с сортировкой по возрастанию размера и позволяет осуществлять постраничный просмотр  
rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1nпоказывает размер используемого дискового пространства, занимаемое файлами rpm-пакета, с сортировкой по размеру (fedora, redhat и т.п.)  

Пользователи и группы

КомандаОписание
chage -E 2005-12-31 user1установить дату окончания действия учётной записи пользователя user1  
groupadd [group]создать новую группу с именем group_name  
groupdel [group]удалить группу group_name  
groupmod -n moon sunпереименовать группу moon в sun  
grpckпроверяет корректность системных файлов учётных записей. Проверяется файл/etc/group  
newgrp - [group]изменяет первичную группу текущего пользователя. Если указать “-“, ситуация будет идентичной той, в которой пользователь вышил из системы и снова вошёл. Если не указывать группу, первичная группа будет назначена из /etc/passwd  
passwdсменить пароль  
passwd user1сменить пароль пользователя user1 (только root)  
pwckпроверить корректность системных файлов учётных записей. Проверяются файлы /etc/passwd и /etc/shadow  
useradd -c "User Linux" -g admin -d /home/user1 -s /bin/bash user1создать пользователя user1, назначить ему в качестве домашнего каталога /home/user1, в качестве shell’а /bin/bash, включить его в группу admin и добавить комментарий User Linux  
useradd user1создать пользователя user1  
userdel -r user1удалить пользователя user1 и его домашний каталог  
usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1изменить атрибуты пользователя  

Права на файлы

КомандаОписание
chgrp group1 file1сменить группу-владельца файла file1 на group1  
chmod ugo+rwx directory1добавить полномочия на директорию directory1 ugo(User Group Other)+rwx(Read Write eXecute) – всем полные права. Аналогичное можно сделать таким образом chmod 777 directory1  
chmod go-rwx directory1отобрать у группы и всех остальных все полномочия на директорию directory1  
chmod u+s /bin/file1назначить SUID-бит файлу /bin/binary_file. Это даёт возможность любому пользователю запускать на выполнение файл с полномочиями владельца файла.  
chmod u-s /bin/file1снять SUID-бит с файла /bin/binary_file  
chmod g+s /home/publicназначить SGID-бит директории /home/public  
chmod g-s /home/publicснять SGID-бит с директории /home/public  
chmod o+t /home/publicназначить STIKY-бит директории /home/public. Позволяет удалять файлы только владельцам  
chmod o-t /home/publicснять STIKY-бит с директории /home/public  
chown user1 file1назначить владельцем файла file1 пользователя user1  
chown -R user1 directory1назначить рекурсивно владельцем директории directory1 пользователя user1  
chown user1:group1 file1сменить владельца и группу владельца файла file1  
find / -perm -u+sнайти, начиная от корня, все файлы с выставленным SUID  
ls -lhпросмотр полномочий на файлы и директории в текущей директории  
ls /tmp | pr -T5 -W$COLUMNSвывести содержимое директории /tmp и разделить вывод на пять колонок  

Специальные атрибуты в файлах

КомандаОписание
chattr +a file1позволить открывать файл на запись только в режиме добавления  
chattr +c file1позволяет ядру автоматически сжимать/разжимать содержимое файла  
chattr +d file1указавет утилите dump игнорировать данный файл во время выполнения backup’а  
chattr +i file1делает файл недоступным для любых изменений: редактирование, удаление, перемещение, создание линков на него  
chattr +s file1позволяет сделать удаление файла безопасным, т.е. выставленный атрибут s говорит о том, что при удалении файла, место, занимаемое файлом на диске заполняется нулями, что предотвращяет возможность восстановления данных  
chattr +S file1указывает, что, при сохранении изменений, будет произведена синхронизация, как при выполнении команды sync  
chattr +u file1данный атрибут указывает, что при удалении файла содержимое его будет сохранено и при необходимости пользователь сможет его восстановить  
lsattrпоказать атрибуты файлов  

Архивация и сжатие фаилов

КомандаОписание
bunzip2 file1.bz2разжимает файл ‘file1.bz2’  
bzip2 file1сжимает файл ‘file1’  
gunzip file1.gzразжимает файл ‘file1.gz’  
gzip file1сжимает файл ‘file1’  
gzip -9 file1сжать файл file1 с максимальным сжатием  
rar a file1.rar test_fileсоздать rar-архив ‘file1.rar’ и включить в него файл test_file  
rar a file1.rar file1 file2 dir1создать rar-архив ‘file1.rar’ и включить в него file1, file2 и dir1  
rar x file1.rarраспаковать rar-архив  
tar -cvf archive.tar file1создать tar-архив archive.tar, содержащий файл file1  
tar -cvf archive.tar file1 file2 dir1создать tar-архив archive.tar, содержащий файл file1, file2 и dir1  
tar -tf archive.tarпоказать содержимое архива  
tar -xvf archive.tarраспаковать архив  
tar -xvf archive.tar -C /tmpраспаковать архив в /tmp  
tar -cvfj archive.tar.bz2 dir1создать архив и сжать его с помощью bzip2(Прим.переводчика. ключ -j работает не во всех *nix системах)  
tar -xvfj archive.tar.bz2разжать архив и распаковать его(Прим.переводчика. ключ -j работает не во всех *nix системах)  
tar -cvfz archive.tar.gz dir1создать архив и сжать его с помощью gzip  
tar -xvfz archive.tar.gzразжать архив и распаковать его  
unrar x file1.rarраспаковать rar-архив  
unzip file1.zipразжать и распаковать zip-архив  
zip file1.zip file1создать сжатый zip-архив  
zip -r file1.zip file1 file2 dir1создать сжатый zip-архив и со включением в него нескольких файлов и/или директорий  

RPM пакеты

КомандаОписание
rpm -ivh [package.rpm]установить пакет с выводом сообщений и прогресс-бара  
rpm -ivh –nodeeps [package.rpm]установить пакет с выводом сообщений и прогресс-бара без контроля зависимостей  
rpm -U [package.rpm]обновить пакет без изменений конфигурационных файлов, в случае отсутствия пакета, он будет установлен  
rpm -F [package.rpm]обновить пакет только если он установлен  
rpm -e [package]удалить пакет  
rpm -qaотобразить список всех пакетов, установленных в системе  
rpm -qa | grep httpdсреди всех пакетов, установленных в системе, найти пакет содержащий в своём имени “httpd”  
rpm -qi [package]вывести информацию о конкрентном пакете  
rpm -qg “System Environment/Daemons”отобразить пакеты входящие в группу пакетов (fedora, redhat)  
rpm -ql [package]вывести список файлов, входящих в пакет  
rpm -qc [package]вывести список конфигурационных файлов, входящих в пакет  
rpm -q [package] –whatrequiresвывести список пакетов, необходимых для установки конкретного пакета по зависимостям  
rpm -q [package] –whatprovidesсписок предоставляемой функциональности  
rpm -q [package] –scriptsотобразит скрипты, запускаемые при установке/удалении пакета  
rpm -q [package] –changelogвывести историю ревизий пакета  
rpm -qf /etc/httpd/conf/httpd.confпроверить какому пакету принадлежит указанный файл. Указывать следует полный путь и имя файла  
rpm -qp [package.rpm] -lотображает список файлов, входящих в пакет, но ещё не установленных в систему  
rpm –import /media/cdrom/RPM-GPG-KEYипортировать публичный ключ цифровой подписи  
rpm –checksig [package.rpm]проверит подпись пакета  
rpm -qa gpg-pubkeyпроверить целостность установленного содержимого пакета  
rpm -V [package]проверить размер, полномочия, тип, владельца, группу, MD5-сумму и дату последнего изменеия пакета  
rpm -Vaпроверить содержимое всех пакеты установленные в систему. Выполняйте с осторожностью!  
rpm -Vp [package.rpm]проверить пакет, который ещё не установлен в систему  
rpm -ivh /usr/src/redhat/RPMS/`arch`/[package.rpm]установить пакет, собранный из исходных кодов  
rpm2cpio [package.rpm] | cpio –extract –make-directories *bin*извлечь из пакета файлы содержащие в своём имени bin  
rpmbuild –rebuild [package.src.rpm]собрать пакет из исходных кодов  

YUM пакеты

КомандаОписание
yum -y install [package]закачать и установать пакет  
yum localinstall [package.rpm]попытаться установить пакет RPM и все зависимые от него пакеты, используя ваши репозитории  
yum -y updateобновить все пакеты, установленные в систему  
yum update [package]обновить пакет  
yum remove [package]удалить пакет  
yum listвывести список всех пакетов, установленных в систему  
yum search [package]найти пакет в репозитории  
yum clean [package]очисть rpm-кэш, удалив закачанные пакеты  
yum clean headersудалить все заголовки файлов, которые система использует для разрешения зависимостей  
yum clean allочисть rpm-кэш, удалив закачанные пакеты и заголовки  

DEB пакеты

КомандаОписание
dpkg -i [package.deb]установить / обновить пакет  
dpkg -r [package]удалить пакет из системы  
dpkg -lпоказать все пакеты, установленные в систему  
dpkg -l | grep httpdсреди всех пакетов, установленных в системе, найти пакет содержащий в своём имени “httpd”  
dpkg -s [package]отобразить инфрмацию о конкретном пакете  
dpkg -L [package]вывести список файлов, входящих в пакет, установленный в систему  
dpkg --contents [package.deb]отобразить список файлов, входящих в пакет, который ешё не установлен в систему  
dpkg -S /bin/pingнайти пакет, в который входит указанный файл.  

APT – средство управление пакетами DEB

КомандаОписание
apt-cache search [package]возвращает список пакетов, которые соответствуют строке ‘package’  
apt-cdrom install [package]установить / обновить пакет с cdrom’а  
apt-get install [package]установить / обновить пакет  
apt-get updateполучить обновлённые списки пакетов  
apt-get upgradeобновить пакеты, установленные в систему  
apt-get remove [package]удалить пакет, установленный в систему с сохранением файлов конфигурации  
apt-get checkпроверить целостность зависимостей  
apt-get cleanудалить загруженные архивные файлы пакетов  

Pacman packages tool (Arch, Frugalware and alike)

КомандаОписание
pacman -S nameустановить пакет ‘name’ и зависимые от него пакеты  
pacman -R nameдля пакетного менеджера pacman: удаление пакета с названием “name”, всех его файлов  

Просмотр содержимого файлов

КомандаОписание
cat file1Отобразить содержимое файла начиная с первой строки  
head -2 file1Отобразить две первые строки файла  
less file1Аналогична команде “more” но позволяет перемещаться по содержимому вперед и назад  
more file1Отобразить содержимое файла постранично  
tac file1Отобразить содержимое файла начиная с последней строки  
tail -2 file1Отобразить две последнии строки файла  
tail -f /var/log/messagesОтобразить в реальном времени что добавляется в фаил  

Манипуляции с текстом

КомандаОписание
cat example.txt | awk 'NR%2==1'при выводе содержимого файла, не выводить чётные строки файла  
echo a b c | awk '{print $1}'вывести первую колонку. Разделение, по-умолчанию, по проблелу/пробелам или символу/символам табуляции  
echo a b c | awk '{print $1,$3}'вывести первую и треью колонки. Разделение, по-умолчанию, по проблелу/пробелам или символу/символам табуляции  
cat -n file1пронумеровать строки при выводе содержимого файла  
comm -1 file1 file2сравнить содержимое двух файлов, не отображая строки принадлежащие файлу ‘file1’  
comm -2 file1 file2сравнить содержимое двух файлов, не отображая строки принадлежащие файлу ‘file2’  
comm -3 file1 file2сравнить содержимое двух файлов, удаляя строки встречающиеся в обоих файлах  
diff file1 file2сравнить два файла  
grep Aug /var/log/messagesиз файла ‘/var/log/messages’ отобрать и вывести на стандартное устройство вывода строки, содержащие “Aug”  
grep ^Aug /var/log/messagesиз файла ‘/var/log/messages’ отобрать и вывести на стандартное устройство вывода строки, начинающиеся на “Aug”  
grep [0-9] /var/log/messagesиз файла ‘/var/log/messages’ отобрать и вывести на стандартное устройство вывода строки, содержащие цифры  
grep Aug -R /var/log/*отобрать и вывести на стандартное устройство вывода строки, содержащие “Aug”, во всех файлах, находящихся в директории /var/log и ниже  
paste file1 file2объединить содержимое file1 и file2 в виде таблицы: строка 1 из file1 = строка 1 колонка 1-n, строка 1 из file2 = строка 1 колонка n+1-m  
paste -d '+' file1 file2объединить содержимое file1 и file2 в виде таблицы с разделителем “+”  
sdiff file1 file2распечатка несоответствий в файлах в виде таблицы построчного сравнения  
sed 's/string1/string2/g' example.txtв файле example.txt заменить “string1” на “string2”, результат вывести на стандартное устройство вывода  
sed '/^$/d' example.txtудалить пустые строки и комментарии из файла example.txt  
sed '/ *#/d; /^$/d' example.txtудалить пустые строки и комментарии из файла example.txt  
sed -e '1d' exampe.txtудалить первую строку из файла example.txt  
sed -n '/string1/p'отобразить только строки содержашие “string1”  
sed -e 's/ *$//' example.txtудалить пустые символы в в конце каждой строки  
sed -e 's/string1//g' example.txtудалить строку “string1” из текста не изменяя всего остального  
sed -n '1,5p' example.txtвзять из файла с первой по восьмую строки и из них вывести первые пять  
sed -n '5p;5q' example.txtвывести пятую строку  
sed -e 's/00*/0/g' example.txtзаменить последовательность из любого количества нулей одним нулём  
sort file1 file2отсортировать содержимое двух файлов  
sort file1 file2 | uniqотсортировать содержимое двух файлов, не отображая повторов  
sort file1 file2 | uniq -uотсортировать содержимое двух файлов, отображая только уникальные строки (строки, встречающиеся в обоих файлах, не выводятся на стандартное устройство вывода)  
sort file1 file2 | uniq -dотсортировать содержимое двух файлов, отображая только повторяющиеся строки  
echo 'word' | tr '[:lower:]' '[:upper:]'преобразовать символы из нижнего регистра в верхний  
dos2unix filedos.txt fileunix.txtконвертировать файл текстового формата из MSDOS в UNIX (разница в символах возврата коретки)  
recode ..HTML < page.txt > page.htmlконвертировать содержимое тестового файла page.txt в html-файл page.html  
recode -l | moreвывести список доступных форматов  
unix2dos fileunix.txt filedos.txtконвертировать файл текстового формата из UNIX в MSDOS (разница в символах возврата коретки)  

Анализ файловой системы

КомандаОписание
badblocks -v /dev/hda1проверить раздел hda1 на наличие bad-блоков  
dosfsck /dev/hda1проверить/восстановить целостность файловой системы fat раздела hda1  
e2fsck /dev/hda1проверить/восстановить целостность файловой системы ext2 раздела hda1  
e2fsck -j /dev/hda1проверить/восстановить целостность файловой системы ext3 раздела hda1 с указанием, что журнал расположен там же  
fsck /dev/hda1проверить/восстановить целостность linux-файловой системы раздела hda1  
fsck.ext2 /dev/hda1проверить/восстановить целостность файловой системы ext2 раздела hda1  
fsck.ext3 /dev/hda1проверить/восстановить целостность файловой системы ext3 раздела hda1  
fsck.vfat /dev/hda1проверить/восстановить целостность файловой системы fat раздела hda1  
fsck.msdos /dev/hda1проверить/восстановить целостность файловой системы fat раздела hda1  

Форматирование файловой системы

КомандаОписание
fdformat -n /dev/fd0форматирование флоппи-диска без проверки  
mke2fs /dev/hda1создать файловую систему ext2 на разделе hda1  
mke2fs -j /dev/hda1создать журналирующую файловую систему ext3 на разделе hda1  
mkfs /dev/hda1создать linux-файловую систему на разделе hda1  
mkfs -t vfat 32 -F /dev/hda1создать файловую систему FAT32 на разделе hda1  
mkswap /dev/hda3создание swap-пространства на разделе hda3  

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

КомандаОписание
mkswap /dev/hda3создание swap-пространства на разделе hda3  
swapon /dev/hda3активировать swap-пространство, расположенное на разделе hda3  
swapon /dev/hda2 /dev/hdb3активировать swap-пространства, расположенные на разделах hda2 и hdb3  

Создание резервных копий (Backup)

КомандаОписание
find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > log.tar.bz2поиск в /var/log всех файлов, имена которых оканчиваются на ‘.log’, и создание bzip-архива из них  
find /home/user1 -name '*.txt' | xargs cp -av --target-directory=/home/backup/ --parentsпоиск в /home/user1 всех файлов, имена которых оканчиваются на ‘.txt’, и копирование их в другую директорию  
dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr 'dd of=hda.gz'сделать “слепок” локального диска в файл на удалённом компьютере через ssh-туннель  
dd if=/dev/sda of=/tmp/file1бэкапит содержимое жесткого диска в файл file1  
dd if=/dev/hda of=/dev/fd0 bs=512 count=1создать копию MBR (Master Boot Record) с /dev/hda на флоппи-диск  
dd if=/dev/fd0 of=/dev/hda bs=512 count=1восстановить MBR с флоппи-диска на /dev/hda  
dump -0aj -f /tmp/home0.bak /homeсоздать полную резервную копию директории /home в файл /tmp/home0.bak  
dump -1aj -f /tmp/home0.bak /homeсоздать инкрементальную резервную копию директории /home в файл /tmp/home0.bak  
restore -if /tmp/home0.bakвосстановить из резервной копии /tmp/home0.bak  
rsync -rogpav --delete /home /tmpсинхронизировать /tmp с /home  
rsync -rogpav -e ssh --delete /home ip_address:/tmpсинхронизировать через SSH-туннель  
rsync -az -e ssh --delete ip_addr:/home/public /home/localсинхронизировать локальную директорию с удалённой директорией через ssh-туннель со сжатием  
rsync -az -e ssh --delete /home/local ip_addr:/home/publicсинхронизировать удалённую директорию с локальной директорией через ssh-туннель со сжатием  
tar -Puf backup.tar /home/userсоздать инкрементальную резервную копию директории ‘/home/user’ в файл backup.tar с сохранением полномочий  
( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr 'cd /home/share/ && tar x -p'копирование содержимого /tmp/local на удалённый компьютер через ssh-туннель в /home/share/  
( tar c /home ) | ssh -C user@ip_addr 'cd /home/backup-home && tar x -p'копирование содержимого /home на удалённый компьютер через ssh-туннель в /home/backup-home  
tar cf - . | (cd /tmp/backup ; tar xf - )копирование одной директории в другую с сохранением полномочий и линков  

CD-ROM

КомандаОписание
cd-paranoia -BПеренести аудио-треки с компакт-диска в wav-файлы.  
cd-paranoia --Перенести три аудио-трека с компакт-диска в wav-файлы.  
cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -forceОчистить перезаписываемый компакт-диск.  
cdrecord -v dev=/dev/cdrom cd.isoЗаписать ISO-образ на компакт-диск.  
gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom -Записать сжатый ISO-образ на компакт-диск.  
cdrecord --scanbusСканировать системную шину, чтобы найти идентификаторы каналов SCSI.  
dd if=/dev/hdc | md5sumПосчитать контрольную сумму MD5 на устройстве, например, компакт-диске.  
mkisofs /dev/cdrom > cd.isoСоздать ISO-образ компакт-диска.  
mkisofs /dev/cdrom | gzip > cd_iso.gzСоздать сжатый ISO-образ компакт-диска.  
mkisofs -J -allow-leading-dots -R -VСоздать ISO-образ из содержимого директории.  
mount -o loop cd.iso /mnt/isoСмонтировать ISO-образ компакт-диска в файловую систему.  

Сети

КомандаОписание
dhclient eth0включить на сетевом интерфейсе ‘eth0’ режим DHCP  
ethtool eth0отобразить статистику по сетевому интерфейсу eth0  
host www.example.comразрешить имя www.example.org хоста в ip-адрес и наоборот  
hostnameотобразить имя компьютера  
ifconfig eth0отобразить настройку сетевой карты eth0  
ifconfig eth0 192.168.1.1 netmask 255.255.255.0Настроить IP адрес и маску подсети для сетевого интерфейса eth0  
ifconfig eth0 promiscперевести интерфейс eth0 в promiscuous-режим для “отлова” пакетов (sniffing)  
ifdown eth0отключить сетевой интерфейс ‘eth0’  
ifup eth0включить сетевой интерфейс ‘eth0’  
ip link showотобразить статус связи всех сетевых интерфейсов  
iwconfig eth1показать конфигурацию беспроводного сетевого интерфейса eth1  
iwlist scanпросканировать эфир на предмет, доступности беспроводных точек доступа  
mii-tool eth0отобразить статус связи для сетевого интерфейса ‘eth0’  
netstat -tupотображает все установленные сетевые соединения по протоколам TCP и UDP без разрешения имён в ip-адреса и PID’ы и имена процессов, обеспечивающих эти соединения  
netstat -tuplотображает все сетевые соединения по протоколам TCP и UDP без разрешения имён в ip-адреса и PID’ы и имена процессов, слушающих порты  
netstat -rnпоказать таблицу маршрутизации, как командой “route -n”  
nslookup www.example.comразрешить имя www.example.org хоста в ip-адрес и наоборот  
route -nвывести локальную таблицу маршрутизации  
route add -net 0/0 gw IP_Gatewayзадать ip-адрес шлюза по умолчанию (default gateway)  
route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1добавить статический маршрут в сеть 192.168.0.0/16 через шлюз с ip-адресом 192.168.1.1  
route del 0/0 gw IP_gatewayудалить ip-адрес шлюза по умолчанию (default gateway)  
echo "1" > /proc/sys/net/ipv4/ip_forwardразрешить пересылку пакетов (forwarding)  
tcpdump tcp port 80отобразить весь трафик на TCP-порт 80 (обычно – HTTP)  
whois www.example.comВыдаёт результаты для whois (регистратор домена, владелец сервера, проч.)  

SAMBA

КомандаОписание
mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/shareсмонтировать smb-ресурс, предоставленный на windows-машине, в локальную файловую систему  
nbtscan ip_addrразрешить netbios-имя nbtscan не во всех системах ставится по-умолчанию, возможно, придётся доустанавливать вручную. nmblookup включен в пакет samba  
nmblookup -A ip_addrразрешить netbios-имя nbtscan не во всех системах ставится по-умолчанию, возможно, придётся доустанавливать вручную. nmblookup включен в пакет samba  
smbclient -L ip_addr/hostnameотобразить ресурсы, предоставленные в общий доступ на windows-машине  
smbget -Rr smb://ip_addr/shareподобно wget может получить файлы с windows-машин через smb-протокол  

IPTABLES (firewall)

КомандаОписание
iptables -t filter -Lотобразить все цепочки правил  
iptables -t nat -Lотобразить все цепочки правил в NAT-таблице  
iptables -t filter -Fочистить все цепочки правил в filter-таблице  
iptables -t nat -Fочистить все цепочки правил в NAT-таблице  
iptables -t filter -Xудалить все пользовательские цепочки правил в filter-таблице  
iptables -t filter -A INPUT -p tcp --dport telnet -j ACCEPTпозволить входящее подключение telnet’ом  
iptables -t filter -A OUTPUT -p tcp --dport http -j DROPблокировать исходящие HTTP-соединения  
iptables -t filter -A FORWARD -p tcp --dport pop3 -j ACCEPTпозволить “прокидывать” (forward) POP3-соединения  
iptables -t filter -A INPUT -j LOG --log-prefixвключить журналирование ядром пакетов, проходящих через цепочку INPUT, и добавлением к сообщению префикса “DROP INPUT”  
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADEвключить NAT (Network Address Translate) исходящих пакетов на интерфейс eth0. Допустимо при использовании с динамически выделяемыми ip-адресами.  
iptables -t nat -A PREROUTING -d 192.168.0.1 -p tcp -m tcp --dport 22 -j DNAT --to-destination 10.0.0.2:22перенаправление пакетов, адресованных одному хосту, на другой хост  

Мониторинг и отладка

КомандаОписание
free -mпоказать состояние оперативной памяти в мегабайтах  
kill -9 process_id“убить” процесс с PID process_id(номер, на “PS-EF”) “на смерть” (без соблюдения целостности данных)  
kill -1 process_idзаставить процесс с PID process_id(номер, на “PS-EF”) перепрочитать файл конфигурации  
last rebootотобразить историю перезагрузок системы  
lsmodвывести загруженные модули ядра  
lsof -p process_idотобразить список файлов, открытых процессом с PID  
lsof /home/user1отобразить список открытых файлов из директории /home/user1  
ps -eafwотобразить запущенные процессы, используемые ими ресурсы и другую полезную информацию (единожды)  
ps -e -o pid,args --forestвывести PID’ы и процессы в виде дерева  
pstreeотобразить дерево процессов  
smartctl -A /dev/hdaконтроль состояния жёсткого диска /dev/hda через SMART  
smartctl -i /dev/hdaпроверить доступность SMART на жёстком диске /dev/hda  
strace -c ls >/dev/nullвывести список системных вызовов, созданных и полученных процессом ls  
strace -f -e open ls >/dev/nullвывести вызовы бибилотек  
tail /var/log/dmesgвывести десять последних записей из журнала загрузки ядра  
tail /var/log/messagesвывести десять последних записей из системного журнала  
topотобразить запущенные процессы, используемые ими ресурсы и другую полезную информацию (с автоматическим обновлением данных)  
watch -n1 'cat /proc/interrupts'отображать прерывания в режиме реального времени  

Другие полезные команды

КомандаОписание
alias hh='history'назначить алиас hh команде history  
apropos ...keywordвыводит список комманд, которые так или иначе относятся к ключевым словам. Полезно, когда вы знаете что делает программа, но не помните команду  
chshизменить командную оболочку (на след. логин в системе)  
chsh --list-shellsОтображение командных оболочек (не работает в Ubuntu), заменяется “less /etc/shells”  
gpg -c file1шифрует файл file1 с помощью GNU Privacy Guard  
gpg file1.gpgдешифрует файл file1 с помощью GNU Privacy Guard  
ldd /usr/bin/sshвывести список библиотек, необходимых для работы ssh  
man pingвызов руководства по работе с программой, в данном случае, – ping  
mkbootdisk --device /dev/fd0 `uname -r`создаёт загрузочный флоппи-диск  
wget -r www.example.comзагружает рекурсивно содержимое сайта www.example.com  
wget -c www.example.com/file.isoзагрузить файл www.example.com/file.iso с возможностью останова и продолжения в последствии  
echo 'wget -c www.example.com/files.iso' | at 09:00начать закачку в указанное время  
whatis ...keywordотображает описание действий указанной программы  
who -aпоказывает пользователей, залогинившихся на данной машине, выводит: время последней загрузки системы, мёртвые (зомби) – процессы, процессы логина в ОС, активные процессы, созданные init (демоны), уровень выполнения, последнюю дату смены настроек часов  

Отправить комментарий