Занятие 2. Администрирование Linux
Практическая работа №2.1
1. Команда df в linux
Утилита df поставляется по умолчанию во всех дистрибутивах Linux и имеет очень простой синтаксис. Фактически вы можете просто набрать df и уже получить результат, но чтобы сделать вывод более читаемым используются дополнительные опции. Вот основной синтаксис:
`$ df опции устройство`
Устройство указывать необязательно, но можно указать раздел диска, о котором мы хотим посмотреть информацию. А теперь рассмотрим основные опции утилиты:
- a, –all – отобразить все файловые системы, в том числе виртуальные, псевдо и недоступные;
- B – изменить размер одного блока перед выводом данных, например, можно использовать BM, чтобы вывести все данные в мегабайтах;
- h – выводить размеры в читаемом виде, в мегабайтах или гигабайтах;
- H – выводить все размеры в гигабайтах;
- i – выводить информацию об inode;
- k – выводить размеры в килобайтах;
- –output – использовать специальный формат вывода, если не задано, выводит все поля. Доступны такие варианты: ‘source’, ‘fstype’, ‘itotal’, ‘iused’, ‘iavail’, ‘ipcent’, ‘size’, ‘used’, ‘avail’, ‘pcent’, ‘file’ и ‘target’;
- P – использовать формат вывода POSIX;
- –total – выводить всю информацию про использованное и доступное место;
- t, –type – выводить информацию только про указанные файловые системы;
- x – выводить информацию обо всех, кроме указанных файловых систем;
*Основные параметры:*
- a, –all. показать все файловые системы.
- h. Опция позволяет показать информацию более наглядной. Размеры выводятся в мегабайтах и гигабайтах.
- H. Размеры показываются в гигабайтах.
- k. Данная опция показывает на экране терминала размеры в килобайтах.
- t, –type. Выводит информацию только про указанную файловую систему.
- –total. Опция показывает всю информация о дисковом пространстве.









2. Команда du в Linux
Команда du,сокращение от «использование диска», сообщает приблизительный объем дискового пространства, используемого данными файлами или каталогами. Это практически полезно для поиска файлов и каталогов, занимающих большие объемы дискового пространства.
`du [OPTIONS]... FILE...`
Если данный FILE является каталогом, du будет суммировать использование диска для каждого файла и подкаталога в этом каталоге. Если *FILE* не указан, *du* сообщит об использовании диска в текущем рабочем каталоге .
При выполнении без какой-либо опции du отображает использование диска для данного файла или каталога и каждого из его подкаталогов в байтах.



3. Команда free в Linux
В системах Linux вы можете использовать команду free чтобы получить подробный отчет об использовании памяти системой.
Команда free предоставляет информацию об общем объеме физической памяти и памяти подкачки , а также о свободной и используемой памяти.
Синтаксис free команды следующий:
`free [OPTIONS]`
При использовании без какой-либо опции команда free будет отображать информацию о памяти и подкачке в килобайтах. 1 килобайт (КиБ) равен 1024 байтам.


Автоматизируйте команду free и запускайте ее непрерывно или периодически
Еще одна отличная особенность – возможность автоматизировать команду. Есть два варианта, которые помогают нам настроить этот инструмент:
Есть параметр ‘-s’, которая запускает команду free в течение заданного интервала секунд, пока пользователь не закроет программу (^ + C).
Существует также «-c», который можно использовать отдельно или в сочетании с параметром секунд. Если вы введете только «-c» и целое число (n), команда будет запускаться n раз. По умолчанию используются интервалы в одну секунду.
Допустим, вы хотите открыть серию приложений и посмотреть, как влияет ваша память. Для тестового вывода мы будем использовать читаемый человеком формат, используя степени 1000 (Gb) вместо 1024 (GiB). Мы собираемся записать в течение 20 секунд, чтобы проанализировать воздействие. Мы собираем данные каждые 5 секунд, и будем делать это за 4 цикла. Вот этот пример, отформатированный для командной строки и ее вывода:
root@kali:~# free -h --si -s 5 -c 4


4. iostat
`$ iostat опции устройство интервал`
Параметры устройство и интервал необязательные. Первый указывает по какому устройству показывать статистику, а второй, с каким интервалом обновлять данные. Давайте сначала рассмотрим опции программы, которые могут вам пригодится:
- с - отобразить только информацию об использовании процессора;
- d - отобразить только информацию об использовании устройств;
- h - выводить данные в отчёте в удобном для чтения формате;
- k - выводить статистику в килобайтах;
- m - выводить статистику в мегабайтах;
- o JSON - выводить статистику в формате JSON;
- p - вывести статистику по устройству и всех его разделам;
- x - вывести расширенную статистику;
- y - отображать статистику с момента запуска утилиты, а не системы;
- z - спрятать информацию о дисках, у которых нет активности.
Самый простой пример использования утилиты, это запустить её без параметров. Она выведет отчёт с со средней статистикой с момента включения системы до момента запуска программы:
`sudo iostat`





5. mpstat
Утилита mpstat для мониторинга производительности Unix/Linux
mpstat — отчет о использовании процессоров. Команда mpstat пишет в стандартный вывод на экран о каждом имеющемся процессоре, 0-й процессор будет выведен на первое место. Параметр «interval» определяет количество времени в секундах между каждым отчетом. Значение 0 (или без параметров) показывает статистику о процессорах и отчетность будет представляться с момента запуска системы (загрузки).


6. vmstat
vmstat,предоставляет краткую информацию о различных ресурсах системы и связанных с ними неполадках, приводящих к снижению производительности.
Отчет команды vmstat содержит статистическую информацию о нитях ядра, находящихся в очереди выполнения и ожидающих запуска, а также об оперативной памяти, подкачке, дисках, прерываниях, системных вызовах, переключении контекста и работе процессора. В информации о процессоре указывается доля времени, в течение которой процессор работал в пользовательском режиме, системном режиме, простаивал и ожидал завершения операции дискового ввода-вывода.
Для получения информации о работе процессора удобнее использовать команду vmstat, а не iostat, так как ее построчный вывод проще анализировать, а в случае, когда к системе подключено много дисков, ее вывод намного менее объемный. Приведенный ниже пример иллюстрирует применение vmstat для обнаружения программ, которые потребляют слишком много ресурсов CPU.

7. Утилита/команда " w "
Выводит краткую сводку о работающих в системе в данный момент пользователях (залогиненных пользователях), а также о том, какие процессы у них запущены

8. Утилита htop
Как просмотреть все процессы в Linux
Команду htop можно запускать как с правами обычного пользователя:
`htop`
Так и с привилегиями суперпользователя, для этого используйте sudo:
`sudo htop`
Права суперпользвоателя нужны только для некоторых действий: для изменения приоритета (nice) процессов, для закрытия процессов других пользователей.



Практическая работа №2.2
Установка и настройка сервера SSH в Linux
1. Установка пакетов SSH

2. Настройка SSH
Сменили порт по умолчанию на другой,отключили доступ по root-пользователю,отключили пароль по умолчанию. Доступ по паролю пока не отключали,зайдем через него чрез Putty.


Заходит по паролю и через ком.строку Виндовс и через Putty.


Практическая работа №2.3
"Установка и настройка SSH-authorized_keys"
Организовали аутентификацию к серверу linux через ключи.

После успешного захода по ключам выключили доступ по паролю.


Так же настроили доступ через Alias

Практическая работа №2.4
"Сбор информации о Linux и WGET"
1. Базовый сбор информации









2. Суидные файлы
Suid

Скачаем,установим и испльзуем утилиту lynis с помощью Wget.


Проверка контрольной суммы.


Запуск утилиты и использование.




3. Проверка целостностей пакетов

Для просмотра установленных утилит необходимо набрать следующую команду dpkg -L coreutils

Расссмотрим утилиту Bin/Dir

Поменяем /bin/false на /bin/dir тем самым с имитируем подмену.

Чтобы быстро проверить этот пакет выполним команду debsums.


Проверка утилитой dpkg.

Ищем дальше измененные файлы.

Отсортируем. sort -rn timeline.csv | less


Практическая работа №2.5
Переменные окружения в Linux .bashrc, .bash_profile и .bash_login
1. Просмотр списка системных переменных окружения


2. Запуск команд с указанием нового значения переменной окружения.

2.1 Установка и удаление локальных переменных окружения.


3. Добавление и удаление пользовательских переменных.


