Команды оболочки Linux представляют собой краткое справочное руководство, входящие наиболее необходимый набор команд, используемых в Linux, широко основанный на RHEL/CentOS. Команды разделены на 15 разделов с описанием каждой команды. Формат PDF всех этих команд доступен для загрузки. Дайте нам знать, если у вас есть какие-либо замечания или исправления.
Вы можете перейти к каждому разделу с помощью индекса, который помещен ниже. Если вы чувствуете, что трудно понять какие-то команды, пожалуйста, сообщите нам об этом.
$ uname -a => Отображение системной информации linux $ uname -r => Отображение версии ядра $ cat /etc/redhat_release => Показать установленную версию redhat $ uptime => Показать как долго работает система + загружается $ hostname => Показать системное имя хоста $ hostname -i => Показать IP address хоста $ last reboot => Показать историю системных перезагрузок $ date => Показать текущие дату и время $ cal => Показать календарь $ w => Показать, сколько вы онлайн $ whoami => Кто вошел в систему $ finger user => Отображение информации о пользователе
$ dmesg => Обнаруженное оборудование и сообщения загрузки $ cat /proc/cpuinfo => Тип процессора $ cat /proc/meminfo => Аппаратная память $ cat /proc/interrupts => Списки количества прерываний процессора в I/O device $ lshw => Отображает информацию о конфигурации системы $ lsblk => Отображает блок связанных устройств в Linux $ free -m => Показывает свободную память (-m for MB) $ lspci -tv => Показывает оборудование PCI $ lsusb -tv => Показывает оборудование USB $ lshal => Показать список всех устройств и их свойств $ dmidecode => Показать информацию оборудования из BIOS $ hdparm -i /dev/sda #Показать информацию о диске sda $ hdparm -tT /dev/sda #Сделать тест на скорость чтения на диске sda $ badblocks -s /dev/sda #Тест на нечитаемые блоки на диске sda
$ top => Отображение и обновление процессов CPU $ mpstat 1 => Показать статистику взаимосвязанных процессов $ vmstat 2 => Отображать статистику виртуальной памяти $ iostat 2 => Показать статистику I/O (2sec Intervals) $ tail -n 500 /var/log/messages => Последние 10 сообщений kernel/syslog $ tcpdump -i eth1 => Захватить все потоки пакетов на интерфейсе eth1 $ tcpdump -i eth0 'port 80' => Показать весь трафик на порту 80 ( HTTP ) $ lsof => Вывести список всех открытых файлов относящихся к всем активным процессам. $ lsof -u testuser => Список файлов открытых конкретным пользователем $ free -m => Показать объем оперативной памяти $ watch df -h => Смотреть изменяемые данные непрерывно
$ id => Показать активный идентификатор пользователя с логином и группу $ last => Показать последний вход в систему $ who => Показать, кто вошел в систему $ groupadd admin => Добавить группу "admin" $ useradd -c "andreyex" -g admin -m sam => Создать пользователя "andreyex" и добавить в группу "admin" $ userdel andreyex => Удалить пользователя andreyex $ adduser andreyex => Добавить пользователя "andreyex" $ usermod => Изменить информацию о пользователе
$ ls -al => Display all information about files/ directories $ pwd => Показать путь текущего каталога $ mkdir directory-name => Создать каталог $ rm file-name => Удалить файл $ rm -r directory-name => Удалить рекурсивно каталог $ rm -f file-name => Принудительное удаление файлов $ rm -rf directory-name => Принудительно удалить каталог рекурсивно $ cp file1 file2 => Копировать file1 в file2 $ cp -r dir1 dir2 => Копировать dir1 в dir2, создать dir2 если он отсутствует $ mv file1 file2 => Перемещать файлы из одного места в другое $ ln -s /path/to/file-name link-name => Создать символическую ссылку для file-name $ touch file => Создать или обновить файл $ cat > file => Место стандартного ввода в файл $ more file => Вывести содержимое файла $ head file =>Вывести первые 10 строк файла $ tail file => Вывести последние 10 строк файла $ tail -f file => Вывести содержимое файла, как он растет, начиная с последних 10 строк $ gpg -c file => Зашифровать файл $ gpg file.gpg => Дешифровать файл
$ ps # Показать ваши текущие активные процессы $ ps aux | grep 'telnet' # Найти все ID процесса, связанные с процессом телнет $ pmap # Карта памяти процесса $ top # Отображает все запущенные процессы $ kill pid # Убить процесс с pid id $ killall proc # Убить все процессы с именем proc $ pkill processname # Послать сигнал процессу с его именем $ bg # Возобновляет приостановленную задачу, не выводя их на экран $ fg # Показывает самые последние задачи на переднем плане $ fg n # Выносит задание N на передний план
$ chmod octal file-name # Измените разрешения файла в восьмеричном, которые могут быть найдены отдельно для пользователя, группы и остальных восьмеричным значением 4 - чтение 2 - запись 1 - запуск Примеры $ chmod 777 /data/tests.c # Установить rwx разрешение для владельца, rwx разрешение для группы, rwx разрешение для мира $ chmod 755 /data/tests.c # Установить rwx разрешение для владельца,rx для группы и мира $ chown owner-user file # Сменить владельца файла $ chown owner-user:owner-group file-name # Сменить владельца и группы владельца файла $ chown owner-user:owner-group directory # Сменить владельца и группы владельца каталога $ chown andrey:andreyex tests.txt $ ls -l tests.txt -rw-r--r-- 1 andrey andreyex 0 Jan 14 18:42 tests.txt
$ ifconfig -a # Отобразить все сетевые порты и IP-адрес $ ifconfig eth0 # Показать конкретный порт ethernet port ip адрес и детали $ ip addr show # Показать все интерфейсы сети и все ip адреса $ ip address add 192.168.0.1 dev eth0 # Указать ip адреса $ ethtool eth0 # Linux инструмент для показа состояния сети ethernet $ mii-tool eth0 # Linux инструмент для показа состояния сети ethernet $ ping host # Отправить эхо запрос для проверки связи $ whois domain # Взять who is информацию о домене $ dig domain # Взять из DNS информацию о домене $ dig -x host # Обратный поиск host $ host google.com # DNS запрос ip адреса по имени $ hostname -i # Поиск локального IP адреса $ wget file # Скачать файл $ netstat -tupl # Вывести список всех активных портов(tcp, udp, pid)
$ tar cf home.tar home # Создать архив tar с именем home.tar в папке home $ tar xf file.tar # Разархивировать файлы из file.tar $ tar czf file.tar.gz files # Создать архив tar с компрессией gzip $ gzip file # Сжать файлы и переименовать в file.gz
$ rpm -i pkgname.rpm # Установка базовых rpm пакетов (Installing, Uninstalling, Updating, Querying ,Verifying) $ rpm -e pkgname # Удаление пакета Install from source ./configure make make install
$ grep pattern files # Поиск шаблона в файлах $ grep -r pattern dir # Поиск рекурсивно для шаблона в директории $ locate file # Найти все экземпляры файла $ find /home/tom -name 'index*' # Найти файлы имен, которые начинаются с "index" $ find /home -size +10000k # Найти файлы больше, чем 10000K в папке /home
$ ssh user@host # Подключиться к узлу сети в качестве пользователя $ ssh -p port user@host # Подключаться к узлу сети используя определенный порт $ telnet host # Подключение к системе с помощью порта telnet
scp $ scp file.txt server2:/tmp # Копировать файл file.txt в удаленную папку хоста /temp $ scp nixsavy@server2:/www/*.html /www/tmp # Копировать * .html файлы с удаленного хоста в каталог /www/tmp $ scp -r nixsavy@server2:/www /www/tmp # Скопируйте все файлы и папки рекурсивно с удаленного сервера в текущую систему /www/tmp rsync $ rsync -a /home/apps /backup/ # Синхронизировать источник и место назначения $ rsync -avz /home/apps andreyex@192.168.10.1:/backup # Синхронизировать файлы и каталоги между локальной и удаленной системой с включенным сжатием
$ df -h # Показать свободное место на смонтированных файловых системах $ df -i # Показать свободные индексные дескрипторы на смонтированных файловых системах $ fdisk -l # Показать размеры разделов дисков и типы $ du -ah # использование Дисплей диска в читабельной форме $ du -sh # использование общей сложности на диске Показать на текущем каталоге $ findmnt # Отображает целевой точки монтирования файловой системы для всех $ mount device-path mount-point # смонтировать устройство
$ cd.. # Для перехода на один уровень вверх в дереве каталогов $ cd # Перейти в домашнюю директорию $ cd /test # Переход в каталог /test