- Шпаргалка по командам Linux
- Пользователи
- Навигация по каталогам
- Работа с файлами
- Права доступа к файлам/каталогам
- Поиск
- Архивирование
- Установка программ из пакетов
- Процессы
- Система
- Аппаратное обеспечение
- Использование диска
- Сеть
- Удаленное подключение
- Получение сведений о системе и оборудовании в командной строке Linux
- Команда uname
- Получение имени ядра Linux
- Получение информации о выпуске ядра Linux
- Получение версии ядра Linux
- Получить имя хоста сетевого узла
- Получение аппаратной архитектуры машины (i386, x86_64, sysinfo Linux)
- Получить тип процессора
- Получить аппаратную платформу
- Получение информации об операционной системе
- Отображение всей информации команды Uname
- Получение информации об аппаратном обеспечении с помощью lshw
- Получение информации о блочных устройствах с помощью lsblk
- Получение информации об устройствах USB с помощью команды lsusb
- Получение информации о других устройствах
Шпаргалка по командам Linux
Бывает, что некоторые команды терминала Linux сложно вспомнить, и сохранение их на компьютере или на бумаге в качестве шпаргалки является хорошей практикой. Этот список не является полным, но он содержит наиболее часто используемые команды. Не стесняйтесь добавить свои наиболее часто используемые команды в комментариях ниже, а так же поделиться этим списком.
Пользователи
- Id – Подробная информация о пользователе (uid, gid и группа).
- last – Список информации о последних входах в систему, включая время, имя пользователя, ip-адрес и длительность сеанса.
- who – Просмотр авторизованных пользователей
- groupadd “testgroup” – Создает группу с именем “testgroup”.
- adduser NewUser – Добавляет пользователя с именем “NewUser”.
- userdel NewUser – Удаляет пользователя с именем “NewUser”.
- usermod NewUser – изменяет информацию о пользователе “NewUser”.
Навигация по каталогам
- cd /. – Переход в основной каталог
- cd – Переход в домашний каталог (переменная $HOME)
- cd /root – Переход в каталог /root
- cd .. – Переход на один уровень ниже
- cd /root/.ssh – Переход в скрытую папку .ssh
Работа с файлами
- ls -al – Показывает файлы и каталоги в текущей папке
- pwd – Отображает текущий рабочий каталог
- mkdir NewFolder – Создает новый каталог с именем “NewFolder”.
- rm NewFile – Удаляет файл с именем “NewFile”
- rm -f NewFile – Принудительное удаление файла с именем “NewFile”
- rm -r NewFolder – Рекурсивно удаляет каталог с именем “NewFolder”
- rm -rf NewFolder – Принудительное удаление каталога с именем “NewFolder” рекурсивно
- cp oldfile1 newfile2 – Копирует содержимое oldfile1 в newfile2
- cp -r olddir1 newdir2 – Рекурсивно копирует каталог “olddir1” в “newdir2”. Dir2 будет создан, если он не существует.
- mv oldfile1 newfile2 – Переименовывает “oldfile1” в “newfile2”.
- ln -s /etc/log/file logfile – Создает ярлык на файл
- touch newfile – Создает пустой файл с именем newfile
- cat > newfile – Помещает STDIN в newfile
- more newfile – Выводит содержимое newfile по частям
- head newfile – Выводит первые 10 строк файла newfile
- tail newfile – Вывод последних 10 строк newfile
- gpg -c newfile – Шифрует newfile в формат gpg с помощью пароля и сохраняет его в том же каталоге.
- gpg newfile.gpg – Расшифровывает gpg файл
- wc newfile – Выводит количество байт, слов и строк нового файла.
Права доступа к файлам/каталогам
- chmod 777 /root/ssh – устанавливает права rwx(чтение, запись, выполнение) на файл ssh для всех, кто имеет доступ к серверу (владелец, группа, другие)
- chmod 755 /root/ssh – Настраивает разрешения rwx для владельца и r_x для группы и других.
- chmod 766 /root/ssh – Устанавливает права rwx для владельца и rw для группы и других.
- chown newuser newfile – Меняет владельца newfile на newuser
- chown newuser:newgroup newfile – Изменяет владельца и группу-владельца для newfile на newuser и newgroup
- chown newuser:newgroup newfolder – Меняет владельца и группу-владельца каталога newfolder на newuser и newgroup
- stat -c “%U %G” newfile – отображает владельцев пользователей и групп newfile
Поиск
- grep searchargument newfile – Поиск аргумента searchargument в newfile
- grep -r searchargument newfolder – рекурсивно просматривает все файлы в папке newfolder на наличие поискового аргумента
- locate newfile – Показывает все местоположения нового файла
- find /etc/ -name “searchargument” – Находит файлы с именем, начинающимся с searchargument, в каталоге /etc
- find /etc/ -size +50000k – Найти файлы размером более 50000k в каталоге /etc.
Архивирование
- tar -cf archive.tar newfile – Создать архив ‘archive.tar’ из файла ‘newfile’
- tar -xf archive.tar – Распаковать файл ‘archive.tar’
- tar -zcvf archive.tar.gz /var/log/ – Создать архив из каталога /var/log
- gzip newfile – Сжать новый файл (он будет иметь расширение .gz).
Установка программ из пакетов
- rpm -i pkg_program.rpm – Устанавливает пакет rpm (CentOS, RHEL…)
- rpm -e pkg_name – Удаляет пакет rpm (CentOS, RHEL…)
- dnf install pkg_name – Устанавливает пакет с помощью dnf из репозитория. Ранее использовался YUM, но недавно YUM был заменен на DNF. (CentOS, RHEL…)
- dpkg -i pkg_name – Установка из deb-пакета (Debian, Ubuntu, Mint…)
- dpkg -r pkg_name – Удаляет deb-пакет (Debian, Ubuntu, Mint…)
- apt install pkg_name – Устанавливает пакет из репозитория (Debian, Ubuntu, Mint…)
- apt remove pkg_name – Удаляет пакет (Debian, Ubuntu, Mint…)
- apt upgrade && apt update – Обновление пакетов в системе (Debian, Ubuntu, Mint…) и последующее обновление репозиториев.
Процессы
- ps – Выводит текущие запущенные процессы
- ps aux | grep ‘bash’ – Найти идентификатор процесса ‘bash’
- pmap -x 11 – Сопоставить процесс с PID = 11 в памяти процесса
- top – Показывает все запущенные процессы
- kill pid – Завершить процесс по pid
- killall process – Завершить все процессы с именем “process”
- pkill process-name – Послать сигнал процессу
- bg – Отправить приостановленный процесс на фоновое выполнение
- fg – Вывести запущенный процесс из фона
- fg process – Вывести процесс с именем “process” из фонового режима
- lsof – Показать списки файлов, которые используют процессы
- renice 19 PID – Устанавливает самый низкий приоритет процесса
- pgrep bash – найти идентификатор процесса bash
- pstree – Показывает древовидное представление процессов
Система
- uname – Показать информацию о системе
- uname -r – Показывает информацию о ядре Linux
- uptime – Продолжительность работы системы и средняя загрузка
- hostname – Показывает имя хоста
- hostname -i – Показывает IP-адрес хоста
- last reboot – Показывает историю перезагрузок
- date – Показывает дату и время
- timedatectl – Выводит и изменяет дату и время
- cal – Выводит календарь
- w – Отображает пользователей, работающих в системе
- whoami – Отображает ваше имя пользователя
- finger root – Показывает информацию о пользователе root (требуется установка с помощью “apt-get install finger”).
Аппаратное обеспечение
- dmesg – Отображает системные сообщения при загрузке системы
- cat /proc/cpuinfo – Показывает информацию о процессоре
- cat /proc/meminfo – Показывает информацию об оперативной памяти
- lshw – Показывает информацию об устройствах
- lsblk – Показать информацию о жестком диске
- free -m – Освобождает память: RAM и swap (переключатель -m в MB)
- lspci -tv – Показывает информацию об устройствах PCI в виде дерева
- lsusb -tv – Отображает USB-устройства в древовидном виде.
- dmidecode – Показывает информацию об устройствах BIOS
- hdparm -i /dev/xda – Показывает информацию о диске
- hdparm -tT /dev/xda – Показывает скорость чтения и записи xda
- badblocks -s /dev/xda – Показывает тест на наличие битых секторов.
Использование диска
- df -h – Показывает свободное пространство на смонтированных разделах (в байтах)
- df -i – Показывает свободные inodes в файловой системе
- fdisk -l – Показывает информацию о диске, разделах и файловой системе
- du -sh – Отображает нераспределенное пространство на смонтированных разделах в MB, GB, TB
- findmnt – Отображает все точки монтирования
- mount /dev/sdb1 /mnt – Монтирует раздел 1 диска sdb в /mnt
Сеть
- ip addr show – Показывает IP-адреса всех доступных сетевых интерфейсов
- ip address add 192.168.0.1/24 dev eth0 – Присваивает адрес 192.168.0.1 интерфейсу eth0
- ifconfig – Показывает IP-адреса всех доступных сетевых интерфейсов
- ping 192.168.0.1 – Отправляет запрос по протоколу ICMP для подключения к узлу 192.168.0.1.
- whois domain – Показывает информацию о доменном имени
- dig domain – Получает информацию DNS о домене
- dig -x 192.168.0.1 – Инвертирует разрешение имен
- host serverspace.us – Резолвит адрес хоста
- hostname -I – Показывает локальные адреса
- wget имя_файла(ссылка на файл) – Загружает файл
- netstat -pnltu – Показывает все порты, прослушиваемые на хосте (требуется “apt-get install net-tools”)
Удаленное подключение
- ssh root@host – Подключение к удаленному хосту по ssh от имени root
- ssh -p port_number user@host – Подключается к удаленному хосту, если используется порт ssh, отличный от 22.
- ssh host – Использует соединение по умолчанию в качестве текущего пользователя
- telnet host – Использует соединение telnet (порт 23).
Получение сведений о системе и оборудовании в командной строке Linux
При использовании Linux вам может понадобиться подробная информация о системе, на которой вы работаете, или о технических характеристиках оборудования, которое вы используете. Как обычному пользователю Linux или разработчику программного обеспечения, вам важно проверить совместимость программного обеспечения или аппаратной системы, которую вы хотите установить. Командная строка Linux содержит несколько встроенных команд, которые помогут вам ознакомиться с программной и аппаратной платформой, на которой вы работаете. Это руководство научит вас, как использовать все эти команды для получения подробной информации sysinfo Linux.
Чтобы узнать основную информацию о вашей системе, вам необходимо познакомиться с утилитой командной строки uname — сокращение от unix name.
Команда uname
Команда uname имеет несколько переключателей. Основная команда, как описано ниже, возвращает только имя ядра:
Получение имени ядра Linux
Если вам нужна именно команда для вывода имени ядра, вы используете следующую команду:
Получение информации о выпуске ядра Linux
Чтобы вывести информацию о выпуске вашего ядра, используйте следующую команду:
Получение версии ядра Linux
Чтобы узнать версию вашего ядра, используйте следующую команду:
Получить имя хоста сетевого узла
Вы можете использовать следующую команду для вывода сетевого имени узла:
Вы также можете использовать следующую команду для той же цели, поскольку она более удобна для пользователя:
Обе команды покажут одинаковый результат.
Получение аппаратной архитектуры машины (i386, x86_64, sysinfo Linux)
Для того чтобы узнать аппаратную архитектуру системы, на которой вы работаете, используйте следующую команду:
Вывод x86_64 означает, что я использую 64-битную архитектуру. Вывод i686 означает, что пользователь находится на 32-битной системе.
Получить тип процессора
Для того чтобы узнать тип используемого процессора, воспользуйтесь следующей командой:
Получить аппаратную платформу
Для того чтобы узнать используемую аппаратную платформу, используйте следующую команду:
Получение информации об операционной системе
Следующая команда позволит вам узнать название используемой операционной системы:
Отображение всей информации команды Uname
В случае, если вы хотите увидеть всю системную информацию сразу, используйте следующую команду:
Получение информации об аппаратном обеспечении с помощью lshw
Утилита lshw позволяет получить важную аппаратную информацию, такую как память, процессор, диски и т.д. из вашей системы. Чтобы просмотреть эту информацию, выполните следующую команду от имени суперпользователя:
Чтобы просмотреть краткое содержание подробного профиля аппаратного обеспечения, пожалуйста, используйте следующую команду:
Утилита lshw также позволяет распечатать профиль аппаратного обеспечения в HTML-файл в качестве суперпользователя. Для этого используйте следующую команду:
sudo lshw -html > [filename.html].
sudo lshw -html > hardwareinfo.html
Получение информации о блочных устройствах с помощью lsblk
Утилита lsblk отображает информацию обо всех основных устройствах хранения данных вашей системы, таких как жесткий диск, его разделы и подключенные к системе флэш-накопители.
Вы можете использовать следующую команду для просмотра более подробной информации обо всех устройствах:
Получение информации об устройствах USB с помощью команды lsusb
Команда lsusb выводит список информации обо всех контроллерах USB и подключенных к ним устройствах. Выполните следующую команду:
Вы также можете использовать следующую команду для просмотра подробной информации о каждом USB-устройстве.
Получение информации о других устройствах
Вы также можете просмотреть информацию о следующих устройствах вашей системы: