Базовые команды linux для тестировщиков и не только

Команды для управления правами на файлы и директории

Все, что нужно для разрешения проблем, связанных с правами в Linux.

  • sudo — выдает права суперпользователя. Используется перед любой другой командой в терминале, если нужно выполнить ее от имени администратора. Многие программы и операции запускаются исключительно при наличии этих прав, так что sudo используется часто. Например, чтобы обновить список пакетов в Ubuntu, введем: sudo apt-get update. При этом система запросит пароль администратора.
  • sudo su — переводит терминал в режим суперпользователя. В нем каждая введенная команда будет восприниматься системой так, будто перед ней ввели sudo. Помогает запускать несколько скриптов и утилит, требующих права администратора, без необходимости постоянно корректировать их или вводить пароль от учетной записи.
  • sudo gksudo — используется для запуска графических утилит от имени администратора. В Windows для этого есть специальная кнопка в контекстном меню, а в Linux — префикс. Синтаксис такой:
​sudo gksudo название приложения, нуждающееся в запуске от имени администратора
  • sudo !! — запускает предыдущую команду от имени администратора. Используется, если до этого была неудачная попытка запустить программу. Помогает не тратить время на повторный ввод большого количества символов.
  • chmod — корректирует права доступа к выбранному файлу. Применяется исключительно с набором аргументов, обозначающих список прав. Допустим, я хочу выдать права на чтение и запись файла Timeweb.html на рабочем столе. Для этого введу в терминал: chmod 777 ~/Desktop/timeweb.html. Теперь его можно открывать и редактировать. Аналогичным образом пользователи поступают с системными файлами, когда приходит время что-то в них менять. По умолчанию большая их часть защищена от записи.
  • chown — назначает владельца для выбранной директории, документа, картинки или любого другого элемента в файловой системе. Синтаксис следующий:
chown имя учетной записи, которому надо передать права путь до файла, права на который нужно передать

Лучшие дистрибутивы Linux для серверов

Ubuntu Server

Ubuntu Server — серверная версия Ubuntu, отличающаяся от обычной версии отсутствием предустановленного графического интерфейса и набором базовых программ. Данный дистрибутив лидирует как операционная система для веб-серверов в интернете. Почти все плюсы, которые применимы к обычной версии Ubuntu относятся так же и к серверной версии — это большая база пользователей, и как следствие огромное количество информации по данной системе в интернете. Так же не стоит забывать про релизы LTS версий, которые будут гарантированно поддерживаться в течении 5 лет.

  • Большое количество информации в интернете
  • Наличие версии с длительной поддержкой в течении 5 лет

CentOS

CentOS является не коммерческим дистрибутивом, разрабатываемой сообществом на основе исходных кодов Red Hat Linux. Данные дистрибутивы полностью совместимы между собой и используют одно и тоже программное обеспечение. Одной из ключевых особенностей данного дистрибутива является один из самых длительных сроков поддержки каждой версии — в среднем, она достигает 10 лет.

  • Большое количество в информации в интернете
  • Длительный срок поддержки каждой версии

Debian

Debian — один из старейших дистрибутивов Linux, целью которого стоит предоставить пользователю максимально безотказную систему. Каждый компонент системы и каждая программа проходят тщательное тестирование, прежде чем попадут в официальный репозиторий, из которого в дальнейшем пользователи смогут провести установку. Как следствие такого пристального тестирования, многие программы в официальных репозиториях предоставлены устаревшими версиями.

  • Длительный срок поддержки каждого из выпусков
  • Один из лучших дистрибутивов по показателям стабильности и надежности

11. Monit – Управление и мониторинг процессов и служб Linux

Monit – это утилита наблюдения с веб-интерфейсом, она автоматически мониторит и управляет системными процессами, программами, файлами, директориями, разрешениями, контрольными суммами и файловыми системами.

Она мониторит такие службы как Apache, MySQL, Mail, FTP, ProFTP, Nginx, SSH и т.д. Системный статус можно посмотреть из командной строки или используя её собственный веб-интерфейс.

Особенности Monit:

  • Бесплатная, с открытым исходным кодом, лицензия AGPL, написана на C.
  • Может быть запущен из интерфейса командной строки или через специальный веб-интерфейс.
  • Очень эффективная в контроле за всем программным обеспечением и службами на вашей системе.
  • Приятный веб-интерфейс с красивыми графиками использования центрального процессора и оперативной памяти.
  • В аварийных ситуациях Monit может самостоятельно принять меры.
  • Многое другое.

Запуск службы:

sudo monit

Веб-интерфейс доступен по адресу http://localhost:2812/ (для локального компьютера, для удалённых систем localhost замените на IP вашего сервера).

Учётные данные по умолчанию для входа в Monit это пользователь ‘admin’ с паролем ‘monit’.

Monit – приятная программа, которая мониторит ваш Linux и Unix сервер, она может наблюдать за всем, что вы имеете на вашем сервере, от главного веб-сервера (Apache, Nginx…) до файловых разрешений, хешей файлов и веб-служб. Плюс много всего другого.

Информация о процессоре

Команды для получения данных о процессоре.

1. lscpu (Linux)

Команда показывает информацию о характеристиках процессора в удобном виде:

lscpu

Пример ответа:

Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                8
On-line CPU(s) list:   0-7
Thread(s) per core:    1
Core(s) per socket:    4
Socket(s):             2
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 62
Model name:            Intel(R) Xeon(R) CPU E5-2650 v2 @ 2.60GHz
Stepping:              4
CPU MHz:               2592.918
BogoMIPS:              5187.50
Hypervisor vendor:     VMware
Virtualization type:   full
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              20480K
NUMA node0 CPU(s):     0-7

* больше всего нас интересует:

  • Architecture — архитектура процессора — 32 бит или 64.
  • Core(s) per socket — количество ядер на процессор.
  • Socket(s) — количество физических/виртуальных процессоров.
  • CPU(s) — суммарное количество процессорных ядер.
  • Model name — модель процессора.

2. sysctl -a (FreeBSD)

Команда отображает множество данных, поэтому добавляем фильтр:

sysctl -a | egrep -i ‘hw.machine|hw.model|hw.ncpu’

Пример ответа:

hw.model: Intel(R) Xeon(R) CPU           X5690  @ 3.47GHz
hw.machine: amd64
hw.ncpu: 2

* на самом деле, команда sysctl работает и в Linux, но формат вывода менее удобен, по сравнению с вышерассмотренной lscpu.

3. Файл /proc/cpuinfo (Linux)

Позволяет увидеть подробную информацию по каждому ядру:

cat /proc/cpuinfo

Команда для подсчета количества ядер:

cat /proc/cpuinfo | grep processor | wc -l

Linux

Сначала необходимо установить утилиту.

На CentOS (RPM):

yum install lm_sensors

Ubuntu (Deb):

apt-get install lm-sensors

После установки утилиты выполняем:

sensors-detect

sensors

FreeBSD

Загружаем необходимый модуль:

kldload coretemp

* для автоматической его загрузки добавляем в файл /boot/loader.conf строку coretemp_load=»YES»

Вводим команду:

sysctl -a | grep temperature

Пример ответа:

dev.cpu.0.temperature: 40.0C
dev.cpu.1.temperature: 41.0C

Работа с утилитами *ctl

systemctl

— управляет работой системных сервисов и утилит.

systemctl   

systemctl -l status nginx
— проверка состояния сервиса.

systemctl start ngnix
— запуск работы сервиса.

systemctl stop nginx
— остановка работы сервиса.

systemctl enable nginx
— включение сервиса при старте системы.

systemctl disable nginx
— выключение сервиса при старте системы.

systemctl reload nginx
— обновление конфигурационного файла сервиса.

systemctl restart nginx
— перезапуск сервиса.

systemctl is-enabled
— проверка включения сервиса при старте системы.

systemctl list-unit-services
— вывод списка всех сервисов.

systemctl show nginx
— вывод свойств сервиса.

systemctl cat nginx
— вывод списка зависимых и исходных файлов сервиса.

loginctl

— менеджер учетных записей.

loginctl   

loginctl list-users
— вывод авторизованных пользователей.

loginctl user-status root
— вывод авторизованных пользователей.

loginctl show-user root
— вывод свойств пользователя.

loginctl terminate-user root
— удаление всех сессий пользователя.

journalctl

— вывод журналов (логов) сервисов.

journalctl 

journalctl —disk-usage
— вывод количества занятой памяти под логи.

journalctl —unit=nginx
— вывод логов сервиса.

journalctl —output=verbose —unit=nginx
— вывод всех полей в логе сервиса.

journalctl —output=cat —unit=nginx
— вывод только сообщений из лога сервиса.

Знакомство с Lynx

Внешне Lynx представляет собой нечто среднее между командной строкой и простым текстовым редактором. В некоторых дистрибутивах Linux он поставляется вместе с прочим встроенным программным обеспечением, в некоторых его приходится устанавливать из репозитория. Определить, имеется ли он в вашей версии системы очень просто, в Ubuntu, к примеру, достаточно открыть терминал и выполнить команду lynx. Если приложение не установлено, вам будет предложено установить его командой sudo apt install lynx.

Браузер встречает пользователя страницей по умолчанию с кратким описанием продукта. В верхней части окна располагается меню, в нижней части консоли можно видеть адресную строку. Функции меню позволяют создавать, открывать и закрывать вкладки и окна, копировать и вставлять текст, выполнять поиск, менять кодировку символов. Последняя опция может оказаться весьма кстати, если вдруг текст открытого сайта преобразится в крякозябры.

Адресная строка Lynx работает по тому же принципу, что и в других браузерах. Пользователь вводит URL (можно без указания протокола), жмет Enter и переходит на интересующий его сайт. Разумеется, в консоли будет загружена текстовая версия сайта, только текст и ссылки, ни картинок, ни интерактивных элементов вы не увидите. Контент выводится в столбик, строка за строкой, для перемещения по тексту и ссылкам используются клавиши-стрелки вверх-вниз, для перехода по ссылкам, в Lynx они, кстати, подсвечиваются, можно использовать Enter или правую клавишу-стрелку. Для быстрой прокрутки содержимого вполне сгодится и колесико мыши.

Клавиша G устанавливает фокус в адресной строке, M — инициирует переход к домашней странице, O — открывает настройки, и таких управляющих клавишей в Lynx более сотни. Мы не станем их здесь перечислять, ознакомиться с ними вы можете и сами, посетив официальную страничку руководства lynx.invisible-island.net/lynx_help/keystrokes/keystroke_help.html. Изучив список «горячих» клавиш, вы будете приятно удивлены, обнаружив массу дополнительных возможностей приложения.

Резюме

Маловероятно, что кому-то на полном серьезе придет в голову идея использовать Lynx в роли постоянного инструмента веб-серфинга, он просто не создан специально для этой цели. Иное дело, если рассматривать Lynx как необычную альтернативу, которая может оказаться весьма полезной в не самых благоприятных условиях, скажем, при падении скорости интернет-соединения. И уж конечно, по достоинству оценят Lynx администраторы и оптимизаторы сайтов, которым будет очень интересно взглянуть на опекаемые ими веб-ресурсы глазами поисковых систем.

Команды Linux для управления сетью

Эти коды помогают настраивать Интернет и корректировать сетевые параметры в зависимости от пользовательских предпочтений.

Сетевые команды с примерами:

  • «nethogs» отображает данные по расходу интернет-трафика;
  • «ip» позволяет настроить сетевые параметры, демонстрирует наличие свободных портов. При включении дополнительных опций («show»/»help«) группирует в виде списка, формирует справку, подробный анализ;
  • «ping» производит диагностику сетевых подключений и их качества. Делает отчёт по работе роутеров, модемов и т. д.;
  • «tracerout» показывает скорость передачи данных и их подробный маршрут.

Диагностика сетевых подключений с помощью терминала

Используя консольные команды, даже новичок разберётся с тем, как пользоваться терминалом Linux. Не обязательно запоминать их все, достаточно просто использовать шпаргалку выше или переписать самые важные из них на лист бумаги. Данный справочник команд для консоли Linux заметно облегчит работу с этой операционной системой.

Основные теоретические сведения¶

Цель: Первичное знакомство с командным интерпретатором. Изучение базовых команд операционной системы Linux.

Теоретическая часть:

Среди всех элементов операционной системы Linux самым важным, является командная строка (Терминал). Оболочка во многом определяет богатые возможности и гибкость операционной системы Linux. С помощью командной строки можно выполнять действия, которые были бы немыслимы при работе с графическим пользовательским интерфейсом. Независимо от того, KDE или GNOME, оказывается, что многие действия гораздо быстрее и эффективнее выполнить, пользуясь только командной строкой. Освоение Linux стоит начинать с изучения средств командной оболочки.

Файлы и ничего кроме файлов

Все, с чем Вы встретитесь в операционной системе Linux, — это файлы. Абсолютно все! Очевидно, что текстовый документ — это файл. Изображения, аудиоданные в формате МР3 и видеофрагменты — это несомненно файлы. Каталоги — это тоже файлы, содержащие информацию о других файлах. Дисковые устройства — это большие файлы. Сетевые соединения тоже файлы. Даже исполняемый процесс — это файл. С точки зрения операционной системы Linux файл представляет собой поток битов или байтов. Система не интересуется тем, что означает каждый байт. Это забота конкретных программ, выполняющихся в операционной системе Linux. Для операционной системы Linux и документ, и сетевое соединение всего лишь файлы. Как обрабатывать текстовый документ, знает редактор, а сетевое приложение умеет работать с сетевым соединением.

В отличие от Windows и МасOS в операционной системе Linux имена файлов чувствительны к регистру символов. В частности, Вы можете встретить в одном каталоге все три файла которые приведены ниже в качестве примера:

С точки зрения файловой операционной системы Linux — это различные имена файлов. Если вы попытаетесь создать файлы с этими же именами в Windows или МасOS, то вероятнее всего попытка увенчается провалом, и система предложит Вам выбрать другое имя для файла.

Чувствительность к регистру символов также означает, что при вводе команд они должны в точности совпадать с именами файлов, поддерживающих их. Так, например, удаляя файл с помощью команды rm, нельзя вводить RM, Rm или rM. Надо также следить за написанием имен, задаваемых в качестве параметров. Если вы захотите удалить файл «SIT.txt», а укажете имя Sit.txt, вы лишитесь совсем не того файла, с которым предполагали расстаться.

Предупреждение

Список специальных символов которые не рекомендуется использовать в названиях файлов.

/   - Нельзя использовать ни при каких обстоятельствах

\   - Должен быть предварен таким же символом. Применять не рекомендуется

-   - Нельзя использовать в начале имени файла или каталога

[]  - Каждый из этих символов должен быть предварен обратной косой чертой. Применять не рекомендуется

{}  - Каждый из этих символов должен быть предварен обратной косой чертой. Применять не рекомендуется

*   - Должен быть предварен обратной косой чертой. Применять не рекомендуется

?   - Должен быть предварен обратной косой чертой. Применять не рекомендуется

'   - Должен быть предварен обратной косой чертой. Применять не рекомендуется

"   - Должен быть предварен обратной косой чертой. Применять не рекомендуется

Групповые операции:

Предположим, что в одном из каталогов на вашем компьютере содержатся сто файлов с изображениями и два текстовых файла. Ваша задача удалить все файлы с изображениями за исключением двух текстовых файлов. Удалять файлы по одному — это утомительное занятие. В операционных системах Linux для автоматизации данного процесса можно применять символы групповых операций.
Групповые операции задаются посредством звездочки (*), знака вопроса (?) и квадратных скобок ( ).

Пример использования групповых операций:

Групповая операция с применение » * » — отмечает любое (в том числе нулевое) количество любых символов.

Групповая операция с применение » ? «. Символ » ? » — соответствует одному произвольному символу.

Групповая операция с применение » [] «. Квадратные скобки позволяют задавать один символ из набора или символ, принадлежащий определенному диапазону.

Консольные команды:

Команды Linux окружения пользователя

Операционная система Linux позволяет обновить свой рабочий интерфейс и включить в него необходимые инструменты. Они облегчают работу за компьютером благодаря гибкой настройке и удобному расположению. Самые популярные:

  • «date» — команда, которая выводит текущую дату. Есть возможность опциональной настройки формата времени (12/24 ч.);
  • «alias» сокращает наименование указанной команды, даёт возможность пользователю установить её синоним;
  • «uname» демонстрирует информацию об операционной системе, её имени, профиле;
  • «sudo» — запуск приложений и программ от любого из зарегистрированных пользователей;
  • «sudo su» включает режим суперпользователя;
  • «sleep» переводит систему в спящий режим;
  • «shutdown» настраивает время включения компьютера. По умолчанию немедленно запускает систему;
  • «reboot» помогает перезагрузить операционную систему. Благодаря опциональной настройке позволяет задать необходимое время для планируемой перезагрузки.

Дистрибутивы для анонимной и безопасной работы

Qubes OS

Система Qubes OS позиционируется как операционная система для безопасной работы за персональным компьютером. Все приложения работают в виртуальных изолированных средах, определяемых пользователем, и при компрометации какого-либо из приложений, доступ к остальным компонентам будет отсутствовать.

Для работы с последними версиями Qubes OS требуется процессор с поддержкой Intel VT-x и Intel VT-d, или же AMD-V и AMD-Vi (AMD IOMMU).

Tails

Этот дистрибутив создан для максимально приватного и анонимного использования интернета. Данная система работает только с LiveCD или портативного носителя, не сохраняет никаких данных о своем использовании на компьютере, а для работы в сети использует сеть Tor. Кроме этого, в дистрибутиве предустановленно множество программ для шифрованного обмена сообщениями, и безопасной работы за компьютером.

Тем не менее, данная система содержит ряд минусов, среди которых — весьма проблематичная установка стороннего программного обеспечения, для того, чтобы хранить файлы тоже придется довольно сильно заворачиваться с созданием защищенного раздела

Данная система определенно не для всех, но если Вам просто нужно анонимно посетить какие-то ресурсы сети интернет, то Tails очень даже справится с этой задачей.

  • Отсутствие возможности тонкой настройки
  • Сложности с установкой дополнительных программ

Whonix

Данный дистрибутив Linux представляет из себя две виртуальные машины на основе VirtualBox, где одна из них выступает в роли шлюза, работающего через Tor, а вторая — роль пользовательской операционной системы. Благодаря использованию виртуальной сети, пользовательская операционная система максимально защищена от компрометации и деанонимизации в Интернете.

В отличии от выше рассмотренной Tails, данная операционная система без проблем поддерживает установку дополнительного программного обеспечения и тонкой настройки, которая не слетит после перезагрузки.

Из минусов, это высокие системные требования к системе и необходимость запуска VirtualBox и двух виртуальных машин. Так же к минусам стоит отнести её привязанность к VirtualBox, то есть просто вставить флешку в компьютер и загрузится в данную систему не получится.

  • Возможность тонкой настройки системы
  • Высокий уровень приватности и анонимности
  • Высокие системные требования к компьютеру
  • Требует установленную операционную систему (отсутствует Live режим)

Как управлять процессами Linux с помощью команд

Ни для кого не секрет, что активное использование Linux в течение одного рабочего сеанса провоцирует запуск большого количества процессов. Некоторые из них могут серьёзно нагружать операционную систему, приводить к торможениям и сбоям. Для восстановления производительности компьютера или ноутбука необходимо вручную завершать работу ненужных приложений и программ.

Информация о запущенном процессе

Терминал Linux позволяет разгрузить операционную систему и оперативную память компьютера с помощью ряда специальных команд:

  • «ps» показывает свойства указанного процесса, а также подробную информацию о нём;
  • «pgrep» демонстрирует ID введённого процесса;
  • «kill» — принудительное завершение процесса;
  • «xkill» завершает работу процесса путём клика на рабочее окно;
  • «killall» — принудительное завершение всех запущенных процессов;
  • «htop» демонстрирует активные процессы, выполняет роль консольного менеджера;
  • «time» показывает информацию о времени запуска того или иного процесса.

Использование терминала расширяет пользовательские функции в отношении запущенных программ.

К сведению! Несмотря на то, что операционная система Linux считается одной из самых защищённых от вирусов и вредоносного ПО, со временем даже она может давать сбои.

Системный монитор Mint

Для того чтобы открыть «Системный монитор» в Linux Mint нужно зайти в Menu в списке с приложениями выбрать «Системные» и найти «Системный монитор».

Откроется основное окно монитора на первой вкладке «Система» будет отображена информация о версии ОС, ядре а также оборудование ПК памяти, процессоре и жесток диске.

На второй вкладке «Процессы» можно посмотреть список запущенных процессов, их состояние, загрузку, используемую память и приоритете. Так же тут можно завершить или приостановить какой либо процесс изменить приоритет или просмотреть параметры.

Через пункт меню «Вид» можно отсортировать процессы, выбрать только активные, мои процессы или включить отображение зависимости что очень удобно.

Вкладка «Ресурсы» покажет загрузку ЦП количестве используемой памяти и сети. Статистика очень подробная, например можно узнать, сколько информации была принято и отправлено через Интернет.

Если перейти на вкладку «Файловые системы» можно посмотреть информацию о жестких дисках их количестве объеме занятом и доступном месте.

Если сравнить с Windows то Системный монитор что-то похожие на Диспетчер задач. Им обязательно нужно уметь пользоваться хотя бы для того чтобы суметь закрыть зависшую программу или процесс.

Получение информации о сетевых картах (Network Card).

1. Команда ifconfig -a выводит информацию об сетевых интерфейсах.

# ifconfig -a
eth0 Link encap:Ethernet HWaddr 3C:D9:2B:6A:AC:38
inet addr:192.168.1.10 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: 6a80::3e80:dbff:6add:fe39/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:693373 errors:0 dropped:317 overruns:0 frame:0
TX packets:685207 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:71012956 (67.7 Mb) TX bytes:116479013 (111.0 Mb)
Interrupt:18

2. Команда lspci | grep Ethernet выводит информацию об ethernet контролерах.

# lspci | grep Ethernet
3f:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5761 Gigabit Ethernet PCIe (rev 10)

25. Sysstat – Система контроля производительности всё-в-одном

Ещё один инструмент мониторинга для вашей системы Linux. На самом деле Sysstat – это не команда, это название проекта. В действительности Sysstat – это пакет, который включает много инструментов слежения за производительностью, к ним относятся iostat, sadf, pidstat и много других инструментов, которые показывают вам множество статистической информации о вашей ОС Linux.

Особенности Sysstat

  • Доступна во многих стандартных репозиториях дистрибутивов Linux.
  • Может собирать статистику об использовании RAM, CPU, SWAP. Помимо этого, способность мониторить активность ядра Linux, NFS сервера, сокетов, TTY и файловых систем.
  • Способность мониторить статистику ввода и вывода для устройств, задач и т.п.
  • Способность выводить отчёты о сетевых интерфейсах и устройствах, в том числе с поддержкой IPv6.
  • Sysstat может показать вам также статистику энергопотребления (использование, устройства, скорость вентиляторов и т.д.).
  • Многие другие функции.

Debian

Debian — одна из самых популярных операционных систем на основе Unix. Я перечислил его, потому что вы можете легко найти много дистрибутивов на основе Linux на основе Debian. Главной причиной того, что он является ключевым компонентом современных дистрибутивов, является его огромное хранилище. В настоящее время здесь находится более 50 000 пакетов программ. Коллекция программного обеспечения делает его идеальным местом для изучения.

Debian также очень стабилен, безопасен и быстрый. Любой может использовать это. Он гибок в выборе рабочего стола. В меню загрузки вы можете выбрать XFCE, LXDE и KDE.

Для правильной работы Debian вам потребуется минимум 1 ГГц ЦП, 256 МБ ОЗУ и 10 ГБ на жестком диске.

  • Может быть использован любым
  • Активное сообщество
  • Позволяет пользователям выбирать среду рабочего стола
  • Предлагает сочетание открытого и платного программного обеспечения
  • Простота установки и обучения

Скачать || Официальная страница

Вступление

Операционная система Linux — это большое семейство операционных систем, которое разрабатывается как частными кампаниями, так и сообществами свободных разработчиков. В отличии от других операционных систем, Linux не существует в эталонном виде — все виды этой операционной системы, или как их называют, дистрибутивы, полностью разрабатываются своими собственными разработчиками. Дистрибутивы различаются как по назначению (для компьютеров, для серверов, для встраиваемых устройств и т. д.), так и по компонентам — у многих дистрибутивов свой собственный набор приложений и утилит. В нынешнее время, количество дистрибутивов Linux больше нескольких сотен, и это без учета заброшенных и приватных дистрибутивов. Сориентироваться в таком разнообразии, человеку далекому от операционных систем и компьютерных технологий, может показаться нелегко, по этому мы подготовили для Вас краткий перечень лучших дистрибутивов Linux.

8 OpenSUSE

Еще один дистрибутив, который чрезвычайно полезен для разработчиков и системных администраторов, – это openSUSE.

Он известен своими протоколами безопасности, которые дают разработчикам дополнительный уровень для защиты их работы от злоумышленников.

Если вы перейдете на их официальную страницу, вы увидите, что они предлагают две версии.

Одна из Tumbleweed, а другая Leap

Leap – более стабильная версия openSUSE для широкой аудитории.

openSUSE предлагает лучшие инструменты с открытым исходным кодом, включая openQA, Kiwi, Open Build Service, YaST и так далее!

YaST – один из самых интересных инструментов.

Это программа системного администратора, которая обеспечивает надлежащее функционирование системы, включая разбиение диска, управление пакетами RPM, настройки брандмауэра и т. д.

Для оптимальной работы openSUSE вам потребуется 2 ГБ ОЗУ, процессор AMD64 или Intel64, 5 ГБ на жестком диске.

  • Лучше всего подходит для системных администраторов и разработчиков
  • Поставляется в двух версиях – Tumbleweed и Leap
  • Предлагает хорошую коллекцию инструментов, включая YaST
  • YaST поддерживает большинство функций дистрибутива

5. Netstat – Статистика сети

Netstat – это инструмент командной строки для мониторинга статистики входящих исходящих сетевых пакетов, а также статистики интерфейсов. Это весьма полезный инструмент для каждого системного администратора для контроля производительности сети и решения проблем, связанных с сетью.

netstat -a | more
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 localhost.local:privoxy 0.0.0.0:*               LISTEN     
tcp        0      0 localhost.localdom:9475 0.0.0.0:*               LISTEN     
tcp6       0      0 :ssh                :*                  LISTEN     
tcp6       0      0 :https              :*                  LISTEN     
tcp6       0      0 :mysql              :*                  LISTEN     
tcp6       0      0 :www-http           :*                  LISTEN     
udp        0      0 HackWare:bootpc         0.0.0.0:*                          
raw6       0      0 :ipv6-icmp          :*                  7          
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node   Path
unix  2           STREAM     LISTENING     13574    /tmp/.X11-unix/X0
unix  2           STREAM     LISTENING     13573    @/tmp/.X11-unix/X0
unix  2               DGRAM                    11811    /run/user/120/systemd/notify
unix  2           STREAM     LISTENING     14509    @/tmp/dbus-l6VTvQ0c
unix  2           STREAM     LISTENING     11815    /run/user/120/systemd/private
unix  2           STREAM     LISTENING     11820    /run/user/120/bus
unix  2           STREAM     LISTENING     11822    /run/user/120/pulse/native

Команда ps в Linux

Сначала рассмотрим общий синтаксис команды, здесь все очень просто:

$ ps опции

$ ps опции | grep параметр

Во втором варианте мы используем утилиту grep для того, чтобы отобрать нужные нам процессы по определенному критерию. Теперь рассмотрим опции утилиты. Они делятся на два типа — те, которые идут с дефисом Unix и те, которые используются без дефиса — BSD. Лучше пользоваться только опциями Unix, но мы рассмотрим и одни и другие. Заметьте, что при использовании опций BSD, вывод утилиты будет организован в BSD стиле.

  • -A, -e, (a) — выбрать все процессы;
  • -a — выбрать все процессы, кроме фоновых;
  • -d, (g) — выбрать все процессы, даже фоновые, кроме процессов сессий;
  • -N — выбрать все процессы кроме указанных;
  • -С — выбирать процессы по имени команды;
  • -G — выбрать процессы по ID группы;
  • -p, (p) — выбрать процессы PID;
  • —ppid — выбрать процессы по PID родительского процесса;
  • -s — выбрать процессы по ID сессии;
  • -t, (t) — выбрать процессы по tty;
  • -u, (U) — выбрать процессы пользователя.

Опции форматирования:

  • -с — отображать информацию планировщика;
  • -f — вывести максимум доступных данных, например, количество потоков;
  • -F — аналогично -f, только выводит ещё больше данных;
  • -l — длинный формат вывода;
  • -j, (j) — вывести процессы в стиле Jobs, минимум информации;
  • -M, (Z) — добавить информацию о безопасности;
  • -o, (o) — позволяет определить свой формат вывода;
  • —sort, (k) — выполнять сортировку по указанной колонке;
  • -L, (H)- отображать потоки процессов в колонках LWP и NLWP;
  • -m, (m) — вывести потоки после процесса;
  • -V, (V) — вывести информацию о версии;
  • -H — отображать дерево процессов;

Теперь, когда вы знаете синтаксис и опции, можно перейти ближе к практике. Чтобы просто посмотреть процессы в текущей оболочке используется такая команда терминала ps:

Все процессы, кроме лидеров групп, в том же режиме отображения:

Все процессы, включая фоновые и лидеры групп:

Чтобы вывести больше информации о процессах используйте опцию -f:

При использовании опции -f команда выдает такие колонки:

  • UID — пользователь, от имени которого запущен процесс;
  • PID — идентификатор процесса;
  • PPID — идентификатор родительского процесса;
  • C — процент времени CPU, используемого процессом;
  • STIME — время запуска процесса;
  • TTY — терминал, из которого запущен процесс;
  • TIME — общее время процессора, затраченное на выполнение процессора;
  • CMD — команда запуска процессора;
  • LWP — показывает потоки процессора;
  • PRI — приоритет процесса.

Например, также можно вывести подробную информацию обо всех процессах:

Больше информации можно получить, использовав опцию -F:

Эта опция добавляет такие колонки:

  • SZ — это размер процесса в памяти;
  • RSS — реальный размер процесса в памяти;
  • PSR — ядро процессора, на котором выполняется процесс.

Если вы хотите получить еще больше информации, используйте вместо -f опцию -l:

Эта опция добавляет отображение таких колонок:

  • F — флаги, ассоциированные с этим процессом;
  • S — состояние процесса;
  • PRI — приоритет процесса в планировщике ядра Linux;
  • NI — рекомендованный приоритет процесса, можно менять;
  • ADDR — адрес процесса в памяти;
  • WCHAN — название функции ядра, из-за которой процесс находится в режиме ожидания.

Дальше мы можем отобрать все процессы, запущенные от имени определенного пользователя:

С помощью опции -H можно отобразить дерево процессов:

Если вас интересует информация только об определенном процессе, то вы можете использовать опцию -p и указать PID процесса:

Через запятую можно указать несколько PID:

Опция -С позволяет фильтровать процессы по имени, например, выберем только процессы chrome:

Дальше можно использовать опцию -L чтобы отобразить информацию о процессах:

Очень интересно то, с помощью опции -o можно настроить форматирование вывода, например, вы можете вывести только pid процесса и команду:

Вы можете выбрать такие колонки для отображения: pcpu, pmem, args, comm, cputime, pid, gid, lwp, rss, start, user, vsize, priority. Для удобства просмотра можно отсортировать вывод программы по нужной колонке, например, просмотр процессов, которые используют больше всего памяти:

Или по проценту загрузки cpu:

Ещё одна опция — -M, которая позволяет вывести информацию про права безопасности и флаги SELinux для процессов:

Общее количество запущенных процессов Linux можно узнать командой:

Мы рассмотрели все основные возможности утилиты ps. Дальше вы можете поэкспериментировать с её параметрами и опциями чтобы найти нужные комбинации, также можно попытаться применить опции BSD.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Мой редактор ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: