Получить всю информацию о компонентах компьютера можно с помощью команды
Если запустить команду без параметров, то на выходе получим огромный список в несколько сотен строк, включающий версию прошивки, установленные драйверы, поддерживаемые возможности, серийные номера, номера версий и информацию о шине.
Поэтому следует немного отфильтровать поток, запустив:
Пример вывода информации с конкретными классами:
Вывод можно преобразовать в форматы HTML, XML или JSON, к примеру:
Чтобы убрать из вывода информацию, такую как IP адреса и серийные номера, можно добавить параметр
lshwЕсли запустить команду без параметров, то на выходе получим огромный список в несколько сотен строк, включающий версию прошивки, установленные драйверы, поддерживаемые возможности, серийные номера, номера версий и информацию о шине.
Поэтому следует немного отфильтровать поток, запустив:
sudo lshw -short или sudo lshw -businfo, чтобы увидеть список классов устройств, которые дальше можно передать утилите.Пример вывода информации с конкретными классами:
sudo lshw -short -class bus -class cpu Вывод можно преобразовать в форматы HTML, XML или JSON, к примеру:
sudo lshw -html -class storage > log.html Чтобы убрать из вывода информацию, такую как IP адреса и серийные номера, можно добавить параметр
-sanitizeYADRO приглашает Software Engineer на SPRINT OFFER 🔍
Компания-лидер инженерной индустрии в России YADRO проводит SPRINT OFFER для Software Engineer в двух направлениях — Linux-based и Android.
🔵 Оффер в команду KVADRA, которая разрабатывает собственную операционную систему kvadraOS, можно получить всего за 3 дня!
→ На направлении Linux-based вам предстоит адаптировать исходный код Chromium для компьютеров и ноутбуков с нашими аппаратными платформами и вносить изменения в поведение устройств, учитывая продуктовые требования.
→ На направлении Android вы будете заниматься подготовкой unit-тестов своего кода. Разрабатывать собственные и адаптировать чужие приложения, если они входят в базовую поставку ОС.
Чтобы принять участие, до 24 ноября подайте заявку на сайте.
Станьте частью YADRO!
Компания-лидер инженерной индустрии в России YADRO проводит SPRINT OFFER для Software Engineer в двух направлениях — Linux-based и Android.
🔵 Оффер в команду KVADRA, которая разрабатывает собственную операционную систему kvadraOS, можно получить всего за 3 дня!
→ На направлении Linux-based вам предстоит адаптировать исходный код Chromium для компьютеров и ноутбуков с нашими аппаратными платформами и вносить изменения в поведение устройств, учитывая продуктовые требования.
→ На направлении Android вы будете заниматься подготовкой unit-тестов своего кода. Разрабатывать собственные и адаптировать чужие приложения, если они входят в базовую поставку ОС.
Чтобы принять участие, до 24 ноября подайте заявку на сайте.
Станьте частью YADRO!
Поиск блочных устройств
Блочное устройство (block device) — вид файла устройств в UNIX/Linux-системах, обеспечивающий интерфейс к устройству, реальному или виртуальному, в виде файла в файловой системе.
Типичные примеры блочных устройств: жёсткий диск, CD-ROM, НГМД.
Чтобы выполнить поиск блочных устройств для создания физических томов на их основе, можно воспользоваться командой
Блочное устройство (block device) — вид файла устройств в UNIX/Linux-системах, обеспечивающий интерфейс к устройству, реальному или виртуальному, в виде файла в файловой системе.
Типичные примеры блочных устройств: жёсткий диск, CD-ROM, НГМД.
Чтобы выполнить поиск блочных устройств для создания физических томов на их основе, можно воспользоваться командой
lvmdiskscan.Копирование файлов по ssh
Чтобы скопировать локальный файл
А наоборот, скопировать файл с удаленного компьютера в текущую директорию:
Также копировать можно не только файлы, но и и целые директории.
Чтобы скопировать с локального компьютера директорию
Чтобы скопировать локальный файл
myfile.txt на компьютер с IP адресом 192.168.12.124 в директорию /home/mycomputer:scp myfile.txt mycomputer.168.12.124:/home/mycomputerА наоборот, скопировать файл с удаленного компьютера в текущую директорию:
scp mycomputer.168.12.124:/home/mycomputerТакже копировать можно не только файлы, но и и целые директории.
Чтобы скопировать с локального компьютера директорию
~/mydir на удаленный компьютер в директорию /home/mycomputer:scp -r ~/mydir mycomputer.168.1.17:/home/mycomputerInxi — утилита командной строки для отображения подробной информации о системе в Linux и других Unix-подобных ОС. Она предоставляет обширные данные о конфигурации системы, включая информацию о железе, сети, процессах и многом другом.
Для получения подробной информации о системе, можно запустить команду:
Для большинства дистрибутивов Inxi доступен через стандартные репозитории:
В Ubuntu/Debian:
В Fedora:
В Arch Linux:
Для получения подробной информации о системе, можно запустить команду:
inxi -F (Параметр -F (или --full) выводит полную информацию о системе, включая аппаратные и программные компоненты).inxi -x: выводит более подробную информацию о процессоре и памяти.inxi -S: показывает информацию только о системе, такой как дистрибутив, версия ядра и архитектура.inxi -G: отображает только информацию о графической карте.Для большинства дистрибутивов Inxi доступен через стандартные репозитории:
В Ubuntu/Debian:
sudo apt install inxiВ Fedora:
sudo dnf install inxiВ Arch Linux:
sudo pacman -S inxihttpie
Инструмент командной строки, который упрощает взаимодействие с веб-API, предоставляя более человекочитаемый вывод по сравнению с curl. Он предоставляет удобный синтаксис для отправки HTTP-запросов.
Из преимуществ:
- Удобный формат вывода (JSON, HTML).
- Автоматическая обработка ошибок.
- Легкость в отправке запросов с JSON-данными.
Debian, Ubuntu:
AlmaLinux, CentOS:
Fedora:
Пример использования:
Для отправки POST-запроса:
Инструмент командной строки, который упрощает взаимодействие с веб-API, предоставляя более человекочитаемый вывод по сравнению с curl. Он предоставляет удобный синтаксис для отправки HTTP-запросов.
Из преимуществ:
- Удобный формат вывода (JSON, HTML).
- Автоматическая обработка ошибок.
- Легкость в отправке запросов с JSON-данными.
Debian, Ubuntu:
sudo apt install httpieAlmaLinux, CentOS:
sudo yum install httpieFedora:
sudo dnf install httpieПример использования:
http GET https://example.comДля отправки POST-запроса:
http POST https://example.com key=valueСвободные лицензии
Выделяют две группы:
Взаимные лицензии — они обязуют пользователя распространять модифицированную программу на тех же условиях, что и исходную. К таким лицензиям относятся все виды
Разрешительные лицензии — содержат минимум пользовательских требований и разрешают создавать проприетарный софт на основе исходной программы. С другой стороны, разрешительные лицензии не позволяют автору исходного кода контролировать судьбу модифицированной версии ПО. К ним относятся:
Совместимость лицензий означает, что программы, распространяемые под этими лицензиями, могут быть объединены или код одной программы может быть использован в другой. Разрешительные лицензии в основном совместимы между собой, а вот версии
Выделяют две группы:
Взаимные лицензии — они обязуют пользователя распространять модифицированную программу на тех же условиях, что и исходную. К таким лицензиям относятся все виды
GPL, LGPL и AGPL.Разрешительные лицензии — содержат минимум пользовательских требований и разрешают создавать проприетарный софт на основе исходной программы. С другой стороны, разрешительные лицензии не позволяют автору исходного кода контролировать судьбу модифицированной версии ПО. К ним относятся:
BSD, MIT и Apache.Совместимость лицензий означает, что программы, распространяемые под этими лицензиями, могут быть объединены или код одной программы может быть использован в другой. Разрешительные лицензии в основном совместимы между собой, а вот версии
GPL — нет.Команда modinfo
Выводит информации о модуле: файл модуля, краткое описание, авторы, лицензия, параметры.
Если имя модуля не является именем файла, то будет выполнен поиск в каталоге /lib/modules/версия
Опции:
Выводит информации о модуле: файл модуля, краткое описание, авторы, лицензия, параметры.
modinfo <опция> <имя_модуля|имя_файла>Если имя модуля не является именем файла, то будет выполнен поиск в каталоге /lib/modules/версия
Опции:
-V либо --version — Вывести версию modinfo.-F либо --field — Вывести только значение этого поля, по одному в строке. -k — Предоставить информацию о другом ядре, а не о используемом в настоящее время. Эта возможность может потребоваться для извлечения информации из недавно установленного набора модулей.Процесс загрузки Linux
Как только ядро Linux получает контроль над системой, оно подготавливает свои области памяти и драйвера. Затем оно передает управление init, чьей задачей является дальнейшая подготовка системы и проверка того, что в конце процесса загрузки, все необходимые сервисы запущены и пользователь способен войти в систему.
Init делает это с помощью запуска демона udev, Когда udev запущен, все оставшиеся файловые системы, которые не были примонтированы, монтируются, и запускаются остальные сервисы.
Для систем, где все необходимые файлы и инструменты располагаются на той же самой файловой системе, приложение init может легко управлять дальнейшим процессом загрузки.
Но когда определены множественные файловые системы , этот процесс может стать немного более усложненным, но с давних пор решением для этой проблемы является использование "initrd" (initial root device).
Как только ядро Linux получает контроль над системой, оно подготавливает свои области памяти и драйвера. Затем оно передает управление init, чьей задачей является дальнейшая подготовка системы и проверка того, что в конце процесса загрузки, все необходимые сервисы запущены и пользователь способен войти в систему.
Init делает это с помощью запуска демона udev, Когда udev запущен, все оставшиеся файловые системы, которые не были примонтированы, монтируются, и запускаются остальные сервисы.
Для систем, где все необходимые файлы и инструменты располагаются на той же самой файловой системе, приложение init может легко управлять дальнейшим процессом загрузки.
Но когда определены множественные файловые системы , этот процесс может стать немного более усложненным, но с давних пор решением для этой проблемы является использование "initrd" (initial root device).
Команда pstree
Похожа на
В простейшей форме, когда
Чтобы отключить объединение идентичных веток, примените:
Если в качестве аргумента указано имя пользователя,
Похожа на
ps, но вместо перечисления запущенных процессов, она показывает их в виде дерева.В простейшей форме, когда
pstree вызывается без какой-либо опции или аргументов, она отображает иерархическую древовидную структуру всех запущенных процессов.Чтобы отключить объединение идентичных веток, примените:
pstree -cЕсли в качестве аргумента указано имя пользователя,
pstree отображает только процессы, принадлежащие этому пользователю:pstree usernamepstree также позволяет выделить процессы для лучшего визуального представления. Аргумент -h выделит текущий процесс и все его предки:pstree -hСмотрим общую информацию о жёстком диске
Для регулировки и просмотра параметров жёстких дисков с интерфейсом ATA существует утилита
Утилита может установить такие параметры как объём кеш-памяти накопителя, спящий режим, управление питанием, управление акустикой и настройки DMA.
Для просмотра общей информации о жёстком диске используется команда:
Для регулировки и просмотра параметров жёстких дисков с интерфейсом ATA существует утилита
hdparm.Утилита может установить такие параметры как объём кеш-памяти накопителя, спящий режим, управление питанием, управление акустикой и настройки DMA.
hdparm имеет очень серьёзный недостаток: утилита может привести к сбою компьютера и сделать данные на жёстком диске недоступными, после применения сочетания некоторых параметров.Для просмотра общей информации о жёстком диске используется команда:
hdparm -i /dev/sd<буква>Найти и заменить строку с помощью sed
Общая форма поиска и замены текста с помощью
где
Sed — это неинтерактивный строчный редактор. С помощью sed вы можете искать, находить и заменять, вставлять и удалять слова и строки.Общая форма поиска и замены текста с помощью
sed имеет следующий вид: sed -i 's/SEARCH_REGEX/REPLACEMENT/g' INPUTFILEгде
-i — опция, указывающая sed редактировать файлы на месте. s — заменяющая команда/ — Символ-разделительSEARCH_REGEX — обычная строка или регулярное выражение для поискаREPLACEMENT — строка заменыg — Флаг глобальной заменыINPUTFILE — имя файла, для которого вы хотите запустить команду