Здравствуйте, уважаемые!
Так или иначе жизнь системного администратора не связана с одной лишь ОС. Даже если вы отличный Windows администратор, иногда приходится иметь дело с linux-based системами. Ведь даже в последних обновлениях Windows 10 была интегрирована поддержка bash.
В этой статье я собрал и хочу поделиться основными командами в ОС linux, которые будут полезны как новичкам так и профессионалам. Данную статью я разбил на категории команд, для удобства использования. Так же постарался все оформить в виде удобного справочника, с примерами, для вашего удобства. Единственное «но» — сегодня без картинок, ибо не к месту. Но все же поставлю вам пингвина, для привлечения внимания:
В общем все самое интересное, как всегда, под капотом — поехали!
Сразу даю ремарку, что для выполнения некоторых команд нужны полные права, а так же команд требуется установка дополнительного программного обеспечения, например, для запуска файлового менеджера mc.
Для удобства просмотра и поиска команд я разбил их по типам. Пользуйтесь содержанием.
Содержание
Системные команды
/usr/bin/lsb_release -ircd #
Узнать версию дистрибутива Linux;
uname -a
# Показать версию ядра Linux;
uname -m
# Отобразить архитектуру компьютера;
hostname
# Показать сетевое имя компьютера;
uptime
# Время работы системы без перезагрузки и выключения;
shutdown
# Выключениеперезагрузка.
Например:
— shutdown -r now
# Перезагрузка;
— shutdown -h 19:30
# Выключить компьютер в 19:30;
- shutdown -h now
# Выключение;
init 0
# Выключение;
init 6
# Перезагрузка;
halt
# Выключение;
logout
# Выйти из системы;
reboot
# Перезагрузка;
dmesg
# Показывает log-файл загрузки ОС;
cat /proc/cpuinfo
# Показать полную информацию о модели процессора (частота, поддерживаемые инструкции и т.д.);
cat /proc/meminfo
# Показать расширенную информацию о занимаемой оперативной памяти;
lshal
# Показать список всех устройств и их параметров;
lspci -tv
# Показать обнаруженные PCI-устройства;
lsusb -tv
# Показать обнаруженные USB-устройства;
lsmod
# Список всех модулей загруженных в ядро;
modprobe
# Загрузка модулей в ядро, пример: modprobe ext4
— загрузка модуля ext4;
chroot
# Пример смены root-окружения на /mnt: chroot /mnt
. После этого коневой раздел, смонтированный к /mnt, будет использоваться как родной;
ldd
# Список библиотек, необходимых для конкретной программы. Вывести список библиотек, необходимых для работы ssh: ldd /usr/bin/ssh
;
whereis
# Показывает размещение бинарных файлов, исходных кодов и руководств, относящихся к конкретному файлу. Пример: whereis halt
;
crontab
# Обеспечивает возможность выполнения определённых задач по расписанию.
swapoff
# Отключение swap-разделов. Отключаем swap (данные перемещаются в оперативную память): swapoff -a
;
swapon
# Включение swap-разделов. Включаем swap: swapon -a
;
date
# Просмотр и изменение датывремени. Примеры:
— date
# Показывает текущую дату и время;
— date 041217002007.00
# Установить системные дату и время. Формат: ММДДЧЧммГГГГ.СС;
Операции с файлами
pwd
# Выводит текущий путь;
ls
# Выводит список файлов и каталогов. Пример вывода форматированного списка всех файлов и директорий, включая скрытые: ls -laX ;
cd
# Переход по директориям. Примеры:
— cd
# Переход в домашнюю директорию;
— cd /home
# Пример перехода в /home;
— cd ..
# Переход в директорию уровнем выше;
— cd ~user
# Перейти в домашнюю директорию пользователя user ;
touch
# Создание пустого файла если нет. Пример: touch test.txt
;
rm
# Удаление. Примеры:
— rm test.txt
# Удаление файла;
— rm -rf temp
# Удаление директории temp с вложенными файлами;
cp
# Копирование. Примеры:
— cp test.txt /home/test.txt
# Копирует test.txt из текущей директории в /home ;
— cp -la /dir1 /dir2
# Копирование директорий;
ln
# — создание символической ссылки. Пример: ln -s /var/test.txt /home/test.txt
— создать символическую ссылку к файлу /var/test.txt в директории /home;
mkdir
# Создание директории. Пример: mkdir temp
;
rmdir
# Удаление директории. Пример: rmdir temp
;
mv
# ПеремещениеПереименование. Пример переименования директории: mv /dir1 /dir2
(аналогично с файлами);
locate
# Поиск. Пример поиска везде всех файлов с именем test.txt: locate test.txt
;
find
# Поиск. Примеры:
— find /home/it -name test.txt
# Найти файлы и директории с именем test.txt в /home/it и вложенных;
— find /home/it -name "*.txt"
# Найти все файлы и директории в /home/it и вложенных, имена которых оканчиваются на ‘.txt’;
— find /usr/bin -type f -atime +100
# Найти все файлы в ‘/usr/bin’, время последнего обращения к которым более 100 дней;
— find /usr/bin -type f -mtime -10
# Найти все файлы в ‘/usr/bin’, созданные или изменённые в течении последних 10 дней;
stat
# Отображение всей доступной информации об указанном файле. Пример: stat test.txt
;
file
# Определяет тип файла. Пример: file test.txt
;
chmod
# Права доступа;
chown
# Меняет владельца файла, пример: chown www:www test.txt
;
mc
# запуск файлового менеджера;
Управление процессами
top
# Диспетчер процессов;
ps
# Показывает процессы. Примеры:
— ps axjf #
Просмотр всех работающих процессов ;
— ps -eF
# Список процессов с полной строкой запуска;
— ps -U user
# Cписок задач, порожденных пользователем user;
pgrep
# Поиск процессов. Показать PID процесса sshd: pgrep -l sshd
;
lsof
# lsof /home
Показывает список процессов, которые используют /home;
fuser -m
# Узнать, какой процесс занял устройство. Пример: fuser -m /mnt
;
kill
# Убивает процесс. Примеры:
- kill 4712
«Убить» процесс с PID 4712:;
- kill -9 4712
# Принудительно завершает указанный процесс (выполнять если не помогает kill 4712
);
killall
# Убивает процессы по имени. Примеры:
- killall x-www-browser
# «Убить» процессы x-www-browser
;
— killall -u user
# Завершить процессы, порожденные пользователем user;
nice
# Позволяет отобразить или настроить приоритет задачи. Примеры:
— nice -4 mc
# Запуск mc с приоритетом = текущий+4 ;
renice
# Изменение приоритета процесса. Примеры:
— renice 4 -p 11597
# Установить значение приоритета для процесса mc (PID=11597) равным 4;
Работа с оперативной памятью
free
# Информация о состоянии памяти. free -m
— показать состояние оперативной памяти в мегабайтах;
dmidecode
# Показывает информацию о количестве сокетов оперативной памяти, и установленных модулях: dmidecode --type 17
.
Работа с жестким диском
du
# Информация о размере директории. du -sh /home/it/
выводит на экран размер директории /home/it/ ;
fdisk
# Информация о разделах жестких дисков. Информация о всех подключенных жестких и сменных дисках: fdisk -l
;
blkid
# Выводит UUID всех доступных накопителей информации в системе;
df
# Показывает размер свободного места на разделах. Пример: df -h
;
mount
# Монтирование. Примеры:
— mount
# Показывает полную информацию о смонтированных устройствах;
— mount /dev/sda1 /mnt
# Монтирует раздел /dev/sda1 к точке монтирования /mnt;
— umount /mnt
# Размонтирует раздел от точки монтирования /mnt;
badblocks
# Проверка диска на наличие бэд-блоков. badblocks -v /dev/sda1
проверить раздел sda1 на наличие bad-блоков;
fsck
# Проверка файловой системы. fsck /dev/sda1
— проверить/восстановить целостность linux-файловой системы раздела sda1;
mkfs
# Форматирование дисков;
smartctl
# Проверка SMART. smartctl -A /dev/hda
— контроль состояния жёсткого диска /dev/hda через SMART;
hdparm
# Информация о жестких дисках, Примеры:
— hdparm -I /dev/sda
# Информация о диске /dev/sda ;
— hdparm -tT /dev/sda
# Показывает производительность жесткого диска;
Работа с сетью
ping
# Пинг сетевого ресурса. Например, : ping google.ru
;
ifconfig
# Утилита настройки сети. Примеры:
— ifconfig
# Показать параметры всех активных сетевых интерфейсов;
— ifconfig -a
# Показать все сетевые интерфейсы;
— ifconfig eth0 up
# Запустить сетевой интерфейс eth0;
— ifconfig eth0 down
# Отключить сетевой интерфейс eth0;
— ifconfig eth0 hw ether 00:01:02:03:04:05
# Смена MAC адреса;
— ifconfig eth0 192.168.1.1 netmask 255.255.255.0
# Назначить интерфейсу eth0 IP-адрес а так же маску подсети;
— ifconfig eth0:0 192.168.0.1 netmask 255.255.255.0
# Задать дополнительный IP адрес сетевому интерфейсу eth0;
iwlist scan
# просканировать эфир на предмет, доступности беспроводных точек доступа;
iwconfig
# Утилита настройки беспроводных сетевых интерфейсов.
— iwconfig wlan0
# Показать конфигурацию беспроводного сетевого интерфейса wlan0;
— iwconfig wlan0 mode ad-hoc
# Указываем тип сети — ad-hoc;
— iwconfig wlan0 channel 2
# Указываем частотный канал;
— iwconfig wlan0 essid inet
# Указываем имя сети;
route
# Настройка маршрутов. Примеры:
— route -n
# Выводит на экран таблицу маршрутизации;
— 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 (для удаления меняем add на del);
netstat
# Отображает текущие сетевые соединения.
- netstat -tup
# Отобразить активные сетевые соединения: ;
— netstat -an | grep LISTEN
# Показывает список всех открытых портов;
— netstat -anp -udp -tcp | grep LISTEN
# Посмотреть список приложений, которые открывают порты;
ethtool
# Информация о текущем режиме сетевого соединения и поддерживаемых. Примеры:
- ethtool eth0
отображает статистику интерфеса eth0 с выводом такой информации, как поддерживаемые и текущие режимы соединения;
— ethtool -s eth0 speed 100 duplex full autoneg off
# Принудительно задать скорость сетевому интерфейсу 100Mbit и режим Full duplex и отключить автоматическое определение;
tcpdump
# Утилита сканирования сетевого трафика. Пример: tcpdump tcp port 80
отобразить весь трафик на TCP-порт 80;
iptables
# Утилита настройки файервола;
ssh
# Подключение к удаленному компьютеру по ssh. Например: ssh 192.168.1.3
wget
# Утилита закачки. wget -c http://www.example.com/file.iso
загрузить файл http://www.example.com/file.iso с возможностью останова и продолжения в последствии;
whois
# Узнать информацию о домене, пример: whois linux-bash.ru
;
dig
# Команда проверки доменных имён.
Архивация
tar
— архиватор. Примеры:
— tar cf test.tar /home/test.txt
# Создать tar-архив с именем test.tar содержащий /home/test.txt;
— tar czf test.tar.gz /home/test.txt
# Создать tar-архив с сжатием Gzip по имени test.tar.gz;
— tar cjf test.tar.bz2 /home/test.txt
# Создать tar-архив с сжатием Bzip2 по имени test.tar.bz;
— tar xf test.tar
# Распаковать архив test.tar в текущую папку;
— tar xzf test.tar.gz
# Распаковать tar-архив с Gzip;
— tar xjf test.tar.bz
# Распаковать tar-архив с Bzip2;
Работа с текстом
echo
# Выводит строку текста на стандартный вывод. Пример: echo "Ку!"
;
cat
# Считать содержимое файла;
iconv
# Работа с кодировками. Примеры:
— iconv -l
# Выводит список всех доступных кодировок;
— iconv -f cp1251 -t UTF-8 file_cp1251.txt -o file_utf8.txt
# Смена кодировки. Был файл file_cp1251.txt с кодировкой cp1251, а в итоге получился файл file_utf8.txt с кодировкой utf8;
convmv
# Смена кодировки в именах файлов;
more
# Постраничный вывод. more file1
выводит содержимое файла file1 на стандартное устройство вывода;
less
# Постраничный вывод. less file1
выводит содержимое файла file1 на стандартное устройство вывода с возможностью пролистать его в обе стороны;
head
# Выводит первые строки. head -2 file1
выводит первые две строки файла file1 на стандартное устройство вывода. По умолчанию выводится десять строк;
tail
# Выводит последние строки. tail -2 file1
выводит последние две строки файла file1 на стандартное устройство вывода. По умолчанию выводится десять строк;
dos2unix filedos.txt fileunix.txt
# Конвертировать файл текстового формата из MSDOS в UNIX (разница в символах возврата каретки);
unix2dos fileunix.txt filedos.txt
# Конвертировать файл текстового формата из UNIX в MSDOS (разница в символах возврата каретки);
nl
# Нумерует строки, используется совместно с другими командами, например: cat test.txt | nl
;
wc
# Показывает число строк, слов и символов в файле;
vim
# Текстовый редактор vim;
nano
# Текстовый редактор nano;
Команды печати
lpstat
# Просмотр списка принтеров. Получить список всех доступных принтеров lpstat -a
;
lp
# Команда вывода на печать;
lpr
# Команда отправки на печать;
lprm -
# Удаление очереди печати;
Работа с пользователями и группами
id
# Показывает сводную информацию по текущему пользователю (логин, UID, GID, группы);
adduser
# Добавление нового пользователя. Пример добавления пользователя it: adduser it
;
passwd
# Меняет пароль текущего пользователя;
groupadd
# Добавление новой группы. Пример: groupadd ITgr
;
usermod
# Изменения настроек пользователя. usermod -a -G ITgr it
добавляет пользователя it в группу ITgr;
userdel
# Удаление пользователя. Пример: userdel it
;
groupdel
# Удаление группы. Пример: groupdel ITgr
;
users
# Отображает краткий список пользователей работающих в системе в данный момент;
exit
# Завершить сеанс текущего пользователя;
last
# Отобразить регистрации пользователей в системе;
Другие команды
watch
# Каждые n-секунд команда watch запускает нужную команду. Пример: watch -n 3 'cat /proc/loadavg'
Каждые три секунды будет выводится результат команды просмотра средней загруженности компьютера;
screen
# Оконный менеджер;
dc
# Калькулятор;
cal
# Календарь. Примеры:
— cal -3
# Покажет предыдущий, текущий и последующий месяц;
— cal 2015
# Календарь 2015-го года;
sleep
# Задержка на указанный промежуток времени, в примере 10 сек: sleep 10
;
history
# Показывает пронумерованный список команд, которые выполняли в этом и предыдущем сеансе;
script
# Создать журнал своей консольной сессии. Сохраняется все что вводили, и все, что выдавалось на экран. Пример: script history.txt
. Чтобы прекратить запись журнала нужно ввести exit
;
which
# Отобразить полный путь исполняемого файла, например which ifconfig
;
wall
# Вывести сообщение на все терминалы пользователей, пример: wall Happy New Year!
;
reset
# Сбросить настройки терминала и очистить его;
clear
# Очищает экран терминала;
beep
# Воспроизвести звуковой сигнал;
Работа со справкой
man
# Справка;
man ls
# Справка по команде ls;
На сегодня это всё.