Команда
Команда
Формат вызова:
Выводит следующую информацию:
==== - все три файла разные;
===1 - первый файл отличается от второго и третьего;
===2 - второй файл отличается от первого и третьего;
===З - третий файл отличается от первого и второго.
Параметры:
diff , для сравнения двух файлов, упоминалась ранее, но что если нужно сравнить сразу три файла?Команда
diff3Формат вызова:
diffЗ [параметры] файл1 файл2 файлЗ Выводит следующую информацию:
==== - все три файла разные;
===1 - первый файл отличается от второго и третьего;
===2 - второй файл отличается от первого и третьего;
===З - третий файл отличается от первого и второго.
Параметры:
-a - сравнивать файлы как текстовые, даже если они бинарные-А - Создание сценария для редактора ed, который показывает в квадратных скобках все отличия между файлами.-e - Создает сценарий для ed, который помещает все отличия между файлами файл2 и файлЗ в файл файл1 (будьте осторожны!)Сгенерировать случайные или последовательные данные можно с помощью заранее установленной утилиты
Генерирует числа, текст, все вместе.
Чтобы вывести последовательность чисел, можно воспользоваться командой:
Чтобы вывести случайные числа:
К примеру, вывести 26 строк начиная с xaa до xaz:
JotГенерирует числа, текст, все вместе.
Чтобы вывести последовательность чисел, можно воспользоваться командой:
jot [кол-во чисел] [начиная с]Чтобы вывести случайные числа:
jot -r [кол-во чисел] [нижний предел] [верхний предел]К примеру, вывести 26 строк начиная с xaa до xaz:
jot -w xa%c 26 aАнализ и перехват сетевого трафика
Утилита
Для захвата пакетов, проходящих через определенный интерфейс, к примеру eth1:
Захватает только определенное кол-во строк, например 5:
Чтобы просматривать пакеты, приходящие на определенный порт, используем:
Для перехвата пакетов, приходящих или исходящих от определенного хоста:
Для перехвата пакетов протокола
Утилита
tcpdump — отличный инструмент, который способен перехватывать и анализировать сетевой трафик. Для захвата пакетов, проходящих через определенный интерфейс, к примеру eth1:
tcpdump -i eth1Захватает только определенное кол-во строк, например 5:
tcpdump -c 5Чтобы просматривать пакеты, приходящие на определенный порт, используем:
tcpdump -i eth1 port 80Для перехвата пакетов, приходящих или исходящих от определенного хоста:
tcpdump host 10.0.2.15Для перехвата пакетов протокола
ICMP, проходящие через все сетевые интерфейсы компьютера:tcpdump –i any icmpCкрипт сравнивает указанные в качестве параметров две директории по содержимому на основе информации дате их изменения.
Пример вывода:
Пример вывода:
> test1 (старее в dir2/)> test2 (старее в dir2/)- test4 (отсутствует в dir2/)< test5 (старее в dir1/)+ test3 (отсутствует в dir1/)test1..5 - тестовые файлы в тестовых директориях dir1 и dir2Вывести список устройств USB можно с помощью команды
Если запустить команду без параметров, то на экране будет краткая сводка об устройствах USB в вашей системе.
Перечисляются шины USB и подключенные к ним устройства, включая мыши, клавиатуры, USB-накопители, принтеры, смартфоны и другие периферийные устройства.
Для получения более подробной информации в виде иерархии, включающей в себя драйверы ядра, коды устройств и номера производителей и портов, надо запустить команду с параметром
lsusb Если запустить команду без параметров, то на экране будет краткая сводка об устройствах USB в вашей системе.
Перечисляются шины USB и подключенные к ним устройства, включая мыши, клавиатуры, USB-накопители, принтеры, смартфоны и другие периферийные устройства.
Для получения более подробной информации в виде иерархии, включающей в себя драйверы ядра, коды устройств и номера производителей и портов, надо запустить команду с параметром
-tv.Утилита управления сетевым экраном
С ее помощью создаются правила, которые управляют фильтрацией и перенаправлением пакетов.Есть несколько основных базовых понятий для работы с iptables: правило, таблица и цепочка.
Правило состоит из критерия, действия и счетчика. Если пакет соответствует критерию (требованию), то к нему принимается действие и этот пакет учитывается счетчиком.
Таблица – совокупность базовых и пользовательских цепочек, объеди- ненных общим функциональным назначением.
Цепочкой является упорядоченная последовательность правил. Существует пять базовых цепочек:
Например, чтобы запретить весь входящий трафик:
Чтобы удалить все правила используется команда
iptables С ее помощью создаются правила, которые управляют фильтрацией и перенаправлением пакетов.Есть несколько основных базовых понятий для работы с iptables: правило, таблица и цепочка.
Правило состоит из критерия, действия и счетчика. Если пакет соответствует критерию (требованию), то к нему принимается действие и этот пакет учитывается счетчиком.
Таблица – совокупность базовых и пользовательских цепочек, объеди- ненных общим функциональным назначением.
Цепочкой является упорядоченная последовательность правил. Существует пять базовых цепочек:
PREROUTING, INPUT, FORWARD, OUTPUT, POSTROUTING.Например, чтобы запретить весь входящий трафик:
iptables -A INPUT -j DROPЧтобы удалить все правила используется команда
iptables –FОднострочник, показывающий 15 самых часто используемых вами команд в Bash:
Последняя цифра задает нужное количество вывода.
Код текстом, чтобы было удобно просто скопировать и проверить.
cat ~/.bash_history | tr "\|\;" "\n" | sed -e "s/^ //g" | cut -d " " -f 1 | sort | uniq -c | sort -n | tail -n 15Последняя цифра задает нужное количество вывода.
Код текстом, чтобы было удобно просто скопировать и проверить.
Определение оборудования PCI с помощью команды
Команда
Чтобы получить список устройств, подключенных к шине с названиями производителей и номерами версий, можно использовать команду без параметров:
Получим подобное:
[
[
Номер шины —
Чтобы получить больше информации, можно увеличить вывод:
lspci Команда
lspci читает информацию с шины PCI (локальная аппаратная шина), к которой подключены встроенные компоненты на материнской плате, а также карты расширения, вставленные в слоты PCI. Чтобы получить список устройств, подключенных к шине с названиями производителей и номерами версий, можно использовать команду без параметров:
lspciПолучим подобное:
[
...]00:1f.2 SATA controller: Intel Corporation 9 Series Chipset Family SATA Controller [AHCI Mode][
...] 00:1f.2 — это номер BDF устройства: ( шина:устройство.функция ). Номер шины —
00, номер устройства — 1f и номер функции — 2. Чтобы получить больше информации, можно увеличить вывод:
lspci -vlspci -vv lspci -vvvПоиск файлов и каталогов с помощью
Команда
Синтаксис:
К примеру, чтобы найти файл с именем
Вывод будет включать имена всех файлов, содержащих строку .bashrc в их именах.
locateКоманда
locate- самый быстрый и простой способ поиска файлов и каталогов по их именам. Заранее установленная, команда locate выполняет поиск заданного шаблона в файле базы данных. Найденные результаты отображаются на экране, по одному на строку.Синтаксис:
locate [параметр] шаблонК примеру, чтобы найти файл с именем
.bashrc, набираем:locate .bashrcВывод будет включать имена всех файлов, содержащих строку .bashrc в их именах.
Gnuplot
Инструмент, который позволяет строить двух- и трехмерные графики, установив утилиту:
Для запуска набираем:
К примеру, построить график синуса:
Также можно построить график, используя собственные данные (к примеру, данные представлены в виде двух колонок в заранее подготовленном файле):
Чтобы построить 3d график, используется splot
Инструмент, который позволяет строить двух- и трехмерные графики, установив утилиту:
sudo apt install gnuplot-x11Для запуска набираем:
gnuplotК примеру, построить график синуса:
gnuplot> plot sin(x)Также можно построить график, используя собственные данные (к примеру, данные представлены в виде двух колонок в заранее подготовленном файле):
gnuplot> plot 'some_file' u 1:2 w lines Чтобы построить 3d график, используется splot
Основные конфигурационные файлы GRUB2
В дополнение к посту о программе управления процессом загрузки.
В дополнение к посту о программе управления процессом загрузки.
/boot/grub/grub.cfg — НЕ редактируй его. Создается командой grub2-mkconfig (или grub-mkconfig в зависимости от дистрибутива) с использованием набора основных файлов конфигурации и файла grub по дефолту в качестве источника спецификаций настроек юзера. Содержит код, похожий на bash, и список установленных ядер в виде массива./etс/default/grub — основной файл конфигурации, который меняет внешний вид загрузочного меню. /etc/grub.d/various — файлы скриптов, используемые для создания grub.cfg.Форматирование текста
Синтаксис вызова команды:
К примеру, разбить текст в файле some_file на строки по 50 символов, можно выполнив:
fmt — утилита для простого форматирование текстаСинтаксис вызова команды:
fmt [параметры] файлы К примеру, разбить текст в файле some_file на строки по 50 символов, можно выполнив:
fmt -w 50 some_fileС точки зрения ОС Linux все пользователи (и запущенные от их имени процессы, помимо имеющихся у них
При разрешении вопросов доступа система ориентируется исключительно по
Увидеть свой uid-номер можно командой
Пользователи с номерами
Индексные дескрипторы файловых систем и файловые дескрипторы операционных систем хранят исключительно uid номера, а не имена пользователей. Однопользовательские файловые системы не хранят никаких uid владельцев файловых объектов.
pid) различаются друг от друга по наличию идентификатора пользователя uid (user id). При разрешении вопросов доступа система ориентируется исключительно по
uid номерам. В традиционных системах для хранения uid отведено 2 байта и обычно этого (2^16=65536 пользователей) хватает. Увидеть свой uid-номер можно командой
id Пользователи с номерами
uid до n=1000 называются системными. Обычные пользователи имеют номера ≥n. В некоторых системах граница разделения обычных пользователей и системных проходит по n=500, в каких-то по n=1000. Индексные дескрипторы файловых систем и файловые дескрипторы операционных систем хранят исключительно uid номера, а не имена пользователей. Однопользовательские файловые системы не хранят никаких uid владельцев файловых объектов.
Узнать объем свободного места на жестком диске или в разделе поможет команда
Если устройство не указано (в качестве параметра к
dfЕсли устройство не указано (в качестве параметра к
df), то на экран выводится информация о смонтированных файловых системах, колонки которых, обозначают следующее:Filesystem — диск, файловая система которого смонтирована; 1k-blocks — количество логических блоков; Used — количество занятых блоков; Available — количество свободных блоков; Use% — процент использованного дискового пространства; Mounted on — как смонтирована файловая система.Утилита
Эта консольная программа в Linuх-подобных дистрибутивах, позволяет выводить отчет о запущенных в системе процессах в виде статического снимка.
Синтаксис программы
ps (process status) - неоднократно использовалась в постах выше. Эта консольная программа в Linuх-подобных дистрибутивах, позволяет выводить отчет о запущенных в системе процессах в виде статического снимка.
Синтаксис программы
ps следующий: ps [параметры]Получить информацию о состоянии оперативной памяти, можно используя команду
Помимо очевидных колонок,
Любая память, используемая любым системным процессом, обозначается как
free -h (параметр -h для удобочитаемого вида), которая опирается на файл /proc/meminfo.Помимо очевидных колонок,
shared - это память, используемая хранилищем tmpfs для поддержки различных псевдофайловых систем наподобие /dev/ и /sys/. Буферы и кэш связаны с памятью, используемой ядром для операций ввода-вывода на уровне блоков. Как сбросить буфер - был [ отдельный пост ].Любая память, используемая любым системным процессом, обозначается как
used. available обозначает память, которая в настоящее время доступна для запуска новых приложений.В Linux имеется возможность подмонтировать каталог к каталогу, а не только каталог к устройству.
Делается это с помощью все той же команды
Делается это с помощью все той же команды
mount, запущенной с параметром --bind, к примеру: mount --bind source_dir destination_dirКаталог
Предназначен для хранения данных сервисных служб, представляемых операционной системой.
Когда-то давно предполагалось, что в этом каталоге будут храниться данные, с которыми работает та или иная служба. Например, намечалось, что в случае использования сервера Apache НТТР все файлы сайта, обслуживаемые данной службой, будут храниться в каталоге
Однако исторически сложилось так, что для данной службы вместо каталога
/srv/ Предназначен для хранения данных сервисных служб, представляемых операционной системой.
Когда-то давно предполагалось, что в этом каталоге будут храниться данные, с которыми работает та или иная служба. Например, намечалось, что в случае использования сервера Apache НТТР все файлы сайта, обслуживаемые данной службой, будут храниться в каталоге
/srv/. Однако исторически сложилось так, что для данной службы вместо каталога
/srv/ стал использоваться каталог /var/www/. По этой причине каталог /srv/ пустует.Использование команды
Остановка системы и выключение электропитания:
Перезагрузка:
Остановить систему, не выключая электропитание:
Перевод системы в спящий режим:
(Для этого ядро должно поддерживать гибернацию. Посмотрите файл:
Перевод системы в режим приостановки:
systemctl для выключения, перезагрузки и перевода системы в спящий режим. Остановка системы и выключение электропитания:
systemctl poweroff или systemctl shutdown Перезагрузка:
systemctl rebootОстановить систему, не выключая электропитание:
systemctl halt Перевод системы в спящий режим:
systemctl hiberna (Для этого ядро должно поддерживать гибернацию. Посмотрите файл:
/sys/power/state - там должно присутствовать слово disk, а файл подкачки должен быть больше размера оперативки)Перевод системы в режим приостановки:
systemctl suspendПолучение информации о дисплее, дисковых массивах RAID и компонентах компьютера с помощью команды
Чтобы получить подробную информацию о мониторе, используется:
Команда для обнаружения устройств RAID:
Команда, чтобы получить сводку об оборудовании:
А также можно получать информацию об отдельных компонентах в наборе:
(список компонентов можно посмотреть в мане или с помощью команды
hwinfoЧтобы получить подробную информацию о мониторе, используется:
hwinfo --monitor Команда для обнаружения устройств RAID:
hwinfo --listmdКоманда, чтобы получить сводку об оборудовании:
hwinfo --short А также можно получать информацию об отдельных компонентах в наборе:
hwinfo --mouse --network --cdrom(список компонентов можно посмотреть в мане или с помощью команды
hwinfo --help в разделе HARDWARE_ITEM)