Команды Linux

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

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

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

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

Код команды Описание
mount /dev/hda2 /mnt/hda2 Смонтировать диск с именем hda2 - убедитесь, что каталог '/mnt/hda2' уже существует
umount /dev/hda2 Демонтировать диск с именем hda2 - убедитесь, что вы вышли из точки монтирования '/mnt/hda2'
fuser -km /mnt/hda2 Принудительное демонтирование, если устройство занято
umount -n /mnt/hda2 Выполнить операцию демонтажа без записи в файл /etc/mtab - полезно, если файл только для чтения или если диск заполнен
mount /dev/fd0 /mnt/floppy Смонтировать дискета
mount /dev/cdrom /mnt/cdrom Смонтировать CD-ROM или DVD-ROM
mount /dev/hdc /mnt/cdrecorder Смонтировать CDRW или DVD-ROM
mount /dev/hdb /mnt/cdrecorder Смонтировать CDRW или DVD-ROM
mount -o loop file.iso /mnt/cdrom Смонтировать файл или образ 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

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

Код команды Описание
groupadd group_name Создать новую группу пользователей
groupdel group_name Удалить группу пользователей
groupmod -n new_group_name old_group_name Переименовать группу пользователей
useradd -c "Имя Фамилия" -g admin -d /home/user1 -s /bin/bash user1 Создать пользователя принадлежащего к группе "admin"
useradd user1 Создать нового пользователя
userdel -r user1 Удалить пользователя ( '-r' исключает домашний каталог)
usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 Изменить свойства пользователя
passwd Изменить пароль
passwd user1 Изменить пароль пользователя (только root может выполнять)
chage -E 2020-12-31 user1 Установить срок действия пароля пользователя
pwck Проверить формат файлов '/etc/passwd' и синтаксис на наличие существующих пользователей
grpck Проверить формат файлов '/etc/group' и синтаксис на наличие существующих групп
newgrp group_name Войти в новую группу для изменения режима создания файлов

Код команды Описание
ls -lh Показать права
ls /tmp | pr -T5 -W$COLUMNS Разделить терминал на 5 столбцов
chmod ugo+rwx directory1 Установить права на чтение (r), запись (w) и выполнение (x) для владельца (u), группы (g) и остальных (o)
chmod go-rwx directory1 Удалить права на чтение, запись и выполнение для группы (g) и остальных (o)
chown user1 file1 Изменить владельца файла
chown -R user1 directory1 Изменить владельца каталога и также изменить всех его файлов
chgrp group1 file1 Изменить группу файла
chown user1:group1 file1 Изменить владельца и группу файла
find / -perm -u+s Перечислить все файлы системы с установленным SUID
chmod u+s /bin/file1 Установить SUID для бинарного файла - пользователь, запускающий файл, получит те же права, что и владелец файла
chmod u-s /bin/file1 Отключить SUID для бинарного файла
chmod g+s /home/public Установить SGID для каталога - аналог SUID, только для каталога
chmod g-s /home/public Отключить SGID для каталога
chmod o+t /home/public Установить STIKY для файла - только законный владелец может удалить файл
chmod o-t /home/public Отключить STIKY для каталога

Код команды Описание
chattr +a file1 Разрешить только добавление для чтения и записи файла
chattr +c file1 Разрешить автоматическое сжатие/распаковку файла ядром
chattr +d file1 Игнорировать этот файл программой dump во время резервного копирования файловой системы
chattr +i file1 Установить файл как неизменяемый, его нельзя удалить, изменить, переименовать или создать ссылку
chattr +s file1 Разрешить безопасное удаление файла
chattr +S file1 Сразу записывать изменения в диск, когда приложение выполняет запись этого файла
chattr +u file1 Если файл был удален, система разрешает восстановить его позже
lsattr Показать специальные атрибуты

Код команды Описание
bunzip2 file1.bz2 Распаковать файл с именем 'file1.bz2'
bzip2 file1 Сжать файл с именем 'file1'
gunzip file1.gz Распаковать файл с именем 'file1.gz'
gzip file1 Сжать файл с именем 'file1'
gzip -9 file1 Максимальное сжатие
rar a file1.rar test_file Создать архив с именем 'file1.rar'
rar a file1.rar file1 file2 dir1 Одновременно сжать 'file1', 'file2' и каталог 'dir1'
rar x file1.rar Распаковать архив rar
unrar x file1.rar Распаковать архив rar
tar -cvf archive.tar file1 Создать не сжатый архив tarball
tar -cvf archive.tar file1 file2 dir1 Создать архив, содержащий '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
tar -jxvf archive.tar.bz2 Распаковать архив в формате bzip2
tar -cvfz archive.tar.gz dir1 Создать архив в формате gzip
tar -zxvf archive.tar.gz Распаковать архив в формате gzip
zip file1.zip file1 Создать архив в формате zip
zip -r file1.zip file1 file2 dir1 Одновременно сжать несколько файлов и каталогов в архив zip
unzip file1.zip Распаковать архив в формате zip

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

Код команды Описание
yum install package_name Скачать и установить rpm пакет
yum localinstall package_name.rpm Установить rpm пакет, используя свой собственный репозиторий для разрешения зависимостей
yum update package_name.rpm Обновить все установленные rpm пакеты
yum update package_name Обновить rpm пакет
yum remove package_name Удалить rpm пакет
yum list Показать все пакеты, установленные в текущей системе
yum search package_name Найти пакеты в rpm репозиториях
yum clean packages Очистить кеш rpm от загруженных пакетов
yum clean headers Удалить все заголовки
yum clean all Удалить все кэшированные пакеты и заголовки

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

Код команды Описание
apt-get install package_name Установить/обновить deb пакет
apt-cdrom install package_name Установить/обновить deb пакет с диска
apt-get update Обновить пакеты в списке
apt-get upgrade Обновить все установленные программы
apt-get remove package_name Удалить deb пакет из системы
apt-get check Проверить правильность зависимостей репозитория
apt-get clean Очистить кэш от загруженных пакетов
apt-cache search searched-package Вернуть имена пакетов, содержащих искомую строку

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

Код команды Описание
cat file1 | command( sed, grep, awk, grep, и т. д.) > result.txt Объединить текст файла и сохранить введение в новый файл
cat file1 | command( sed, grep, awk, grep, и т. д.) >> result.txt Объединить текст файла и сохранить его в уже существующий файл
grep Aug /var/log/messages Найти ключевое слово "Aug" в файле '/var/log/messages'
grep ^Aug /var/log/messages Найти слова, начинающиеся с "Aug" в файле '/var/log/messages'
grep [0-9] /var/log/messages Выбрать все строки, содержащие цифры в файле '/var/log/messages'
grep Aug -R /var/log/* Искать строку "Aug" в каталоге '/var/log' и всех подкаталогах
sed 's/stringa1/stringa2/g' example.txt Заменить "string1" на "string2" в файле example.txt
sed '/^$/d' example.txt Удалить все пустые строки из example.txt
sed '/ *#/d; /^$/d' example.txt Удалить все комментарии и пустые строки из файла
echo 'esempio' | tr '[:lower:]' '[:upper:]' Объединить содержимое верхних ячеек
sed -e '1d' result.txt Исключить первую строку из файла example.txt
sed -n '/stringa1/p' Показать только строки, содержащие "string1"
sed -e 's/ *$//' example.txt Удалить все пробелы в конце каждой строки
sed -e 's/stringa1//g' example.txt Удалить слово "string1" из документа, сохранив все остальное
sed -n '1,5p;5q' example.txt Показать содержимое с первой до пятой строки
sed -n '5p;5q' example.txt Показать пятую строку
sed -e 's/00*/0/g' example.txt Заменить несколько нулей на один ноль
cat -n file1 Показать номер строки файла
cat example.txt | awk 'NR%2==1' Удалить все четные строки из example.txt
echo a b c | awk '{print $1}' Показать первый столбец в одной строке
echo a b c | awk '{print $1,$3}' Показать первый и третий столбцы в одной строке
paste file1 file2 Объединить содержимое двух файлов или столбцов
paste -d '+' file1 file2 Объединить содержимое двух файлов или столбцов, разделив их знаком "+"
sort file1 file2 Отсортировать содержимое двух файлов
sort file1 file2 | uniq Извлечь объединение двух файлов (дублирующиеся строки сохраняются)
sort file1 file2 | uniq -u Удалить пересечения и оставить другие строки
sort file1 file2 | uniq -d Извлечь пересечения двух файлов (оставить только те строки, которые находятся в обоих файлах)
comm -1 file1 file2 Сравнить содержимое двух файлов, удалив содержание 'file1'
comm -2 file1 file2 Сравнить содержимое двух файлов, удалив содержание 'file2'
comm -3 file1 file2 Сравнить содержимое двух файлов, удалив общее содержимое

Код команды Описание
dos2unix filedos.txt fileunix.txt Преобразовать текстовый файл из формата MSDOS в UNIX
unix2dos fileunix.txt filedos.txt Преобразовать текстовый файл из формата UNIX в MSDOS
recode ..HTML < page.txt> page.html Преобразовать текстовый файл в html
recode -l | more Показать все разрешенные форматы преобразования

Код команды Описание
badblocks -v /dev/hda1 Проверить наличие сбойных блоков на диске hda1
fsck /dev/hda1 Проверить/исправить целостность файловой системы linux на диске hda1
fsck.ext2 /dev/hda1 Проверить/исправить целостность ext2 файловой системы на диске hda1
e2fsck /dev/hda1 Проверить/исправить целостность ext2 файловой системы на диске hda1
e2fsck -j /dev/hda1 Проверить/исправить целостность ext3 файловой системы на диске hda1
fsck.ext3 /dev/hda1 Проверить/исправить целостность ext3 файловой системы на диске hda1
fsck.vfat /dev/hda1 Проверить/исправить целостность FAT файловой системы на диске hda1
fsck.msdos /dev/hda1 Проверить/исправить целостность DOS файловой системы на диске hda1
dosfsck /dev/hda1 Проверить/исправить целостность DOS файловой системы на диске hda1

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

Код команды Описание
mkswap /dev/hda3 Создать раздел своп
swapon /dev/hda3 Включить новый своп-раздел
swapon /dev/hda2 /dev/hdb3 Включить два раздела своп

Код команды Описание
dump -0aj -f /tmp/home0.bak /home Создать полную резервную копию каталога '/home'
dump -1aj -f /tmp/home0.bak /home Создать интерактивную резервную копию каталога '/home'