# OS Linux basic. Практическая 2.1, 2.2, 2.3, 2.4, 2.5 ### ПРАКТИКА 2.1 **Команда df в linux** Команда df используется чтобы посмотртеть доступное пространство во всех примонтированных разделах ![](https://i.imgur.com/zqhq7fb.png) Опция -h делает более читаемый вывод ![](https://i.imgur.com/BaqK2t4.png) Опция -a, можно получить информацию обо всех файловых системах известных ядру, которые были смонтированы: ![](https://i.imgur.com/33LaA0T.png) Вывести только информацию про реальные файловые системы на жестком диске можно использовать опцию -x чтобы отфильтровать все tmpfs ![](https://i.imgur.com/XZNGgun.png) Отфильтровать две файловые системы: ![](https://i.imgur.com/JUHbMaR.png) Так же можно указать файловую систему, которую нужно отображать ![](https://i.imgur.com/m8ZLBVI.png) Вывести объем доступного пространства в каталоге ![](https://i.imgur.com/cD2wxkg.png) **Команда du в Linux** С помощью команды du можно узнать приблизительный объем дискового пространства, используемого данными файлами или каталогами ![](https://i.imgur.com/XJ0eRUM.png) можно передать команде du несколько файлов и каталогов в качестве аргументов ![](https://i.imgur.com/XncGpxU.png) -a указывает du сообщать об использовании дискового пространства каждым файлом в каталоге ![](https://i.imgur.com/E7Hjscw.png) чтобы получить общий размер /var/lib и всех его подкаталогов используется команда ![](https://i.imgur.com/8CNtrz8.png) Чтобы сообщить только общий размер указанного каталога, а не подкаталогов, используется параметр -s ![](https://i.imgur.com/e0AYY96.png) Параметр -c указывает du сообщать общую сумму ![](https://i.imgur.com/znXUPdU.png) отобразить использование диска подкаталогами n-уровня, используйте параметр --max-depth и укажите уровень подкаталогов ![](https://i.imgur.com/BlsqOgm.png) Чтобы узнать очевидный размер файла, используется аргумент --apparent-size ![](https://i.imgur.com/IKzwLa8.png) чтобы получить размер всех каталогов, начинающихся с «Do» используются команда: ![](https://i.imgur.com/vvrSnRj.png) du можно комбинировать с другими командами с конвейерами. Чтобы напечатать 5 самых больших каталогов внутри каталога /var используется команда: ![](https://i.imgur.com/ayLlQvK.png) **Команда free в Linux** Узнать сколько свободной оперативной памяти доступно в системе Linux используется команда free ![](https://i.imgur.com/ph0J1oH.png) Чтобы просмотреть информацию в удобочитаемом формате (обычно в мегабайтах и гигабайтах), используйте параметр -h ![](https://i.imgur.com/WOm5Twj.png) чтобы отобразить результат в мегабайтах: ![](https://i.imgur.com/V1ykoJZ.png) Чтобы отобразить строку, показывающую итоги столбца, используйте параметр -t ![](https://i.imgur.com/VhgQeNK.png) чтобы получать информацию о памяти каждые пять секунд ![](https://i.imgur.com/m6ITcwg.png) Чтобы отображать результат определенное количество раз, используется параметр -c ![](https://i.imgur.com/D0k2knO.png) **Команда free в Linux с примерами** Собираем данные каждые 5 секунд, и будем делать это за 4 цикла. ![](https://i.imgur.com/a0320jp.png) Чтобы вывод команды free незагромаждал экран используется wath free ![](https://i.imgur.com/QjekQTX.png) **iostat** Установка ![](https://i.imgur.com/XEsGWxJ.png) Запуск команды ![](https://i.imgur.com/f5QcWd4.png) Для просмотра данных в удобном формате ![](https://i.imgur.com/UAsPk0W.png) Чтобы посмотреть данные по нужному устройству просто укажите это устройство ![](https://i.imgur.com/OJKPBeU.png) посмотреть статистику по каждому разделу устройства ![](https://i.imgur.com/FwEVjQI.png) Чтобы утилита автоматически обновляла данные каждую секунду необходимо добавить интервал ![](https://i.imgur.com/wcri2xC.png) чтобы утилита суммировала все данные с момента запуска операционной системы, то можно использовать опцию -y ![](https://i.imgur.com/f8jSWNN.png) **Профилирование нагрузки на файловую систему с помощью iostat** ![](https://i.imgur.com/Aj9B4OL.png) Получение лог файла ![](https://i.imgur.com/Ak39nUP.png) **mpstat** Опция «-А», показывает всю информацию, которая может быть отображена с помощью команды mpstat ![](https://i.imgur.com/JvCQLdw.png) Параметр «-P ALL», покажет все индивидуальные процессоры или ядра вместе со статистикой ![](https://i.imgur.com/Fppe9K5.png) Для отображения статистически о конкретном CPU или ядре, используется опция -P ![](https://i.imgur.com/HRHI2E1.png) Узнать версию утилиты ![](https://i.imgur.com/kZd3dbG.png) Доп опции ![](https://i.imgur.com/3iXtoav.png) **vmstat** Вывод утилиты ![](https://i.imgur.com/wxFbhs8.png) применение vmstat для обнаружения программ, которые потребляют слишком много ресурсов CPU. ![](https://i.imgur.com/Pvilfrn.png) количество вилок с момента загрузки ![](https://i.imgur.com/gRQwzNa.png) статистика диска ![](https://i.imgur.com/9q4vW3l.png) Общая статистика диска ![](https://i.imgur.com/9P3zYDH.png) доп опции ![](https://i.imgur.com/pLlfGbm.png) **Утилита/команда " w "** Выводит краткую сводку о работающих в системе в данный момент пользователях (залогиненных пользователях), а также о том, какие процессы у них запущены ![](https://i.imgur.com/eIT5maj.png) Не выводить заголовок у таблицы. ![](https://i.imgur.com/xfKTK42.png) Игнорировать имена пользователей при определении времени текущего процесса и времени CPU. ![](https://i.imgur.com/pr7zKuv.png) Использовать сокращенный формат вывода. Не выводить колонки JCPU и PCPU. ![](https://i.imgur.com/twZynQi.png) Включить или выключить вывод поля from, которое соответствует имени удаленного хоста ![](https://i.imgur.com/2tYXuLP.png) Выводить в поле from IP-адрес вместо имени хоста ![](https://i.imgur.com/fNgCv08.png) Выводить информацию в старом формате. ![](https://i.imgur.com/7p4zAE7.png) Вывести версию утилиты w. ![Uploading file..._4dd593w5f]() **Утилита htop** Установка: ![](https://i.imgur.com/rU1BTuP.png) просмотреть все процессы в Linux ![](https://i.imgur.com/imhBP0o.png) Чтобы программа выводила новые данные раз в 5 секунд ![](https://i.imgur.com/qEWybzq.png) вывода процессов в виде дерева ![](https://i.imgur.com/xEOXxxB.png) ![](https://i.imgur.com/wM5GEe1.png) ### ПРАКТИКА 2.2 **Установка и настройка сервера SSH в Linux** Установка пакетов SSH ![](https://i.imgur.com/97K4xOj.png) Настройка SSH Настройки демона хранятся в файле /etc/ssh/sshd_config. Посмотреть его можно командой ![](https://i.imgur.com/7IHays4.png) Изменение файла ![](https://i.imgur.com/eLfB530.png) ![](https://i.imgur.com/l6yJvHM.png) Рестарт ssh сервера ![](https://i.imgur.com/0P3aapw.png) ![](https://i.imgur.com/EnWRisQ.png) ![](https://i.imgur.com/AeVyOO5.png) утилита для генерации ключей ![](https://i.imgur.com/oZfrj4W.png) скопировать открытый ключ командой: ![](https://i.imgur.com/2CBRE0L.png) Подключение по Putty ![](https://i.imgur.com/8q0z2Jo.png) ### ПРАКТИКА 2.4 Информация о дистрибутиве и какая версия его ![](https://i.imgur.com/fC68323.png) Ядро линукс ![](https://i.imgur.com/CKnoT3E.png) выводит имя пользователя ![](https://i.imgur.com/TCBDXUS.png) когда и сколько система работала ![](https://i.imgur.com/i0VrFQd.png) права директории /home ![](https://i.imgur.com/4UXpJmJ.png) ограничить права другим пользователям ![](https://i.imgur.com/O2cLfTu.png) с какими компьютерами происходит обмен данными ![](https://i.imgur.com/jD4gy6g.png) позволяет понять, что есть в машине и что пользователь может ![](https://i.imgur.com/VkaDhci.png) В системе могут быть различные закладки ![](https://i.imgur.com/9YBsTuP.png) нкопируем ссылку утилиты и качаем её с помощью wget в директорию /tmp ![](https://i.imgur.com/fLTSlYE.png) разаархивировать архив: ![](https://i.imgur.com/fdsKJHR.png) проверка контрольной сумму с сайта и скачанный архив ![](https://i.imgur.com/9rflq6z.png) Перейдем в директорию ![](https://i.imgur.com/T7KDgd2.png) запускаем утилиту lynis ![](https://i.imgur.com/NqFphsH.png) для просмотра пакетов в системе ![](https://i.imgur.com/JxOcNCT.png) для просмотра установленных утилит ![](https://i.imgur.com/Xtmn6py.png) ![](https://i.imgur.com/vDb0ebU.png) что будет если мы поменяем /bin/false на /bin/dir тем самым с имитируем подмену или правку кода программы теперь при запуске dir мы можем уыидеть, что ничего не будет происходить, кроме как если посмотреть логическую ложь, то будет ошибка ![](https://i.imgur.com/A7x2Uc1.png) установка debsums ![](https://i.imgur.com/7Suc89z.png) Отображает пакеты, которые необходимо проверить с помощью debsums. запуск проверки ![](https://i.imgur.com/OPZhLYK.png) можно также проверить утилитой ![](https://i.imgur.com/yHIJodf.png) Если кто-то смог проникнуть в систему и что-то деал в ней нам поможет команда find Например, если нам надо рассмотреть какой либо инцидент: ![](https://i.imgur.com/Z4HMXwH.png) если надо сделать по одному конкретному пользователю необходиму следующие: ![](https://i.imgur.com/Ys9Am66.png) ![](https://i.imgur.com/WWB5YjV.png) отсортируем данный файл с помощью команды ![](https://i.imgur.com/UothJYC.png) ### ПРАКТИКА 2.5 просмотреть все присутствующие в Linux системные и пользовательские переменные и их понятия возможно с помощью всего лишь одной команды, которая отобразит список Установка и запуск: ![](https://i.imgur.com/M5kCxzz.png) *Выражение до знака = — название переменной, а после — ее значение.* ![](https://i.imgur.com/PEHgqNE.png) Запуск команд с указанием нового значения переменной окружения ![](https://i.imgur.com/1gM1UpC.png) Установка и удаление локальных переменных окружения ![](https://i.imgur.com/ti7lQKT.png) Проверка выполненных действий ![](https://i.imgur.com/IDCZibL.png) Удаляется любой параметр командой ![](https://i.imgur.com/Gw8YyFo.png) Проверить удаление можно ![](https://i.imgur.com/3j6LPfn.png) Добавление и удаление пользовательских переменных ![](https://i.imgur.com/FbdzMmS.png) Пользовательскую конфигурацию можно редактировать через sudo nano .bashrc. ![](https://i.imgur.com/mhw7vYn.png) ![](https://i.imgur.com/nEVKjGQ.png) ![](https://i.imgur.com/C31Kmuu.png) Пишем команду чтобы изменения вступили в силу. ![](https://i.imgur.com/TibTSnB.png) Проверка выполняется командой: ![](https://i.imgur.com/MFcRjfn.png)