Linux нет команды lspci

Содержание
  1. 16 команд для проверки аппаратной части компьютера в Linux
  2. Информация о комплектации компьютера
  3. 1. lscpu
  4. 2. lshw – список аппаратных устройств
  5. 3. hwinfo – информация об аппаратуре компьютера
  6. 4. lspci – список устройств PCI
  7. 5. lsscsi — список устройств scsi
  8. 6. lsusb – подробный список шин и устройств usb
  9. 7. Inxi
  10. 8. lsblk — список блочных устройств
  11. 9. df – дисковое пространство файловых систем
  12. 10. Pydf – команда df, написанная на языке Python
  13. 11. fdisk
  14. 12. mount
  15. 13. free – проверка оперативной памяти
  16. 14. dmidecode
  17. 15. Файлы /proc
  18. 16. hdparm
  19. Заключение
  20. Советы для успешной перекомпиляции ядра Линукс.
  21. Что есть ядро?
  22. В каких случаях прибегают к перекомпиляции ядра?
  23. Чтобы уменьшить размер ядра:
  24. Чтобы добавить или убрать поддержку тех или иных устройств:
  25. Чтобы изменить параметры системы:
  26. Каковы этапы рекомпиляции ядра?
  27. 1. Проверить и обновить необходимые пакеты
  28. Основные пакеты для проверки и обновления:
  29. Как устанавливать module-init-tools?
  30. 2. Получение исходного кода ядра
  31. 3. Получение информации о компьютерном «железе»
  32. 4. Как сконфигурировать ядро
  33. Шаги по конфигурированию ядра таковы:
  34. Рисунок 1: menuconfig
  35. Рисунок 2: Поиск параметров конфигурации
  36. Рисунок 3: Результаты поиска menuconfig
  37. Тип процессора и его характеристики
  38. Рисунок 4 menuconfig processor type
  39. Конфигурация сети (Networking)
  40. Драйверы устройств
  41. File Systems
  42. 5. Создание ядра
  43. 6. Конфигурация загрузчика
  44. 1. Определите, какой вид загрузчика у вас установлен.
  45. 2. Сконфигурируйте загрузчик
  46. 7.Перезагрузка сервера
  47. Заключение

16 команд для проверки аппаратной части компьютера в Linux

Информация о комплектации компьютера

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

В данной статье кратко рассказывается о нескольких наиболее часто используемых командах, предназначенных для получения информации и особенностях настройки различных периферийных устройств и компонентах компьютера. Среди рассматриваемых — команды lscpu, hwinfo, lshw, dmidecode, lspci и другие.

1. lscpu

Команда lscpu выдает информацию о процессоре и его составляющих. В ней нет каких-либо дополнительных параметров или функциональных возможностей.

2. lshw – список аппаратных устройств

Утилита общего назначения, которая сообщает подробную и краткую информацию о нескольких различных аппаратных устройствах, таких как процессор, память, диск, контроллеры usb, сетевые адаптеры и т.д. Команда lscpu извлекает информацию из различных файлов /proc.

Если вы хотите больше узнать о команде lshw, то обратите внимание на пост Получаем интфомацию в Linux об аппаратных частях компьютера с помощью команды lshw .

3. hwinfo – информация об аппаратуре компьютера

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

4. lspci – список устройств PCI

Команда lspci выдает список всех шин PCI, а также подробную информация об устройствах, которые к ним подключены. Под эту категорию подпадают следующие устройства — адаптер vga, графическая карта, сетевой адаптер, порты usb, контроллеры sata и т.д.

Отфильтруйте информацию о конкретном устройстве с помощью команды grep.

5. lsscsi — список устройств scsi

Выдается список устройств scsi/sata, например, жестких дисков и оптических приводов.

6. lsusb – подробный список шин и устройств usb

Эта команда показывает информацию о контроллерах usb и подробные сведения о подключенных к ним устройствах. По умолчанию выдается краткая информация. Для того, чтобы о каждом порте usb получить подробную информацию, используйте параметр «-v».

В системе, информация о которой приведена выше, один порт usb используется для подключения мыши.

7. Inxi

Inxi является мега скриптом bash, состоящим из 10000 строк кода, с помощью которого из разных источников и команд системы будет получена подробная информация об аппаратном обеспечении и будет создан отчет в виде, позволяющим его читать пользователям, которые не являются техническими специалистами.

8. lsblk — список блочных устройств

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

9. df – дисковое пространство файловых систем

Отчеты о различных разделах, об их точках монтирования и о том, сколько в каждом разделе есть свободного места.

Читайте также:  Создание блок схем mac os

10. Pydf – команда df, написанная на языке Python

Улучшенный вариант команды df , написанной на языке python, который выдает информацию в цвете, что выглядит лучше, чем информация, выдаваемая командой df

11. fdisk

Fdisk является утилитой, предназначенной для изменения разделов жестких дисков, и ей также можно пользоваться для получения информации о списке имеющихся разделов.

12. mount

Команда mount используется для монтирования/демонтирования, а также для просмотра смонтированных файловых систем.

Опять же, используйте команду grep для отфильтровывания информации только о тех файловых системах, которые вам интересны

13. free – проверка оперативной памяти

С помощью команды free проверьте объем используемой, свободной и общий объема оперативной памяти, имеющейся в системе.

14. dmidecode

Команда dmidecode отличается от всех других команд. Она извлекает информацию об оборудовании, читая для этого данные из структур данных SMBOIS (которые также называются таблицами DMI).

Подробности смотрите на странице man.

15. Файлы /proc

Во многих виртуальных файлах каталога /proc содержится информация об аппаратном обеспечении и о конфигурациях. Ниже приведены некоторые из них.

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

Информация о Linux/ядре

16. hdparm

Команда hdparm получает информацию об устройствах sata, например, жестких дисков.

Заключение

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

Для тех, кто не хочет запоминать и вводить команды, на рабочем столе есть графические инструментальные средства. Hardinfo и I-nex — некоторые из популярных инструментальных средств, с помощью которых можно получить подробную информацию о большом количестве различных аппаратных компонентов.

Источник

Советы для успешной перекомпиляции ядра Линукс.

Оригинал: Tips for successful Kernel Recompilation in Linux
Дата: 1 января 2008
Свободный перевод: Алексей Дмитриев
Дата перевода: 10 января 2008

«Компилировать ядро — не орехи щелкать», — часто вздыхают те, у кого перекомпилированное ядро не хочет загружаться. Хотя орешек этот довольно крепок, однако перекомпиляция остается неизбежным делом, с которым каждый системный администратор Линукс рано или поздно столкнется.
Я тоже не избежала этой участи. В этой статье я собираюсь пройти с вами все фазы компиляции ядра. Я верю, что это придаст вам уверенности и компиляция перестанет быть для вас «невыполнимой миссией».

Что есть ядро?

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

В Линукс ядро представляет собой единственный файл, носящий имя vmlinuz. Начальные буквы vm обозначают виртуальную память (virtual memory), а последняя буква z говорит о том, что файл является сжатым. Файл vmlinuz находится в директории /boot.

В каких случаях прибегают к перекомпиляции ядра?

Чтобы уменьшить размер ядра:

Чтобы добавить или убрать поддержку тех или иных устройств:

Чтобы изменить параметры системы:

Каковы этапы рекомпиляции ядра?

1. Проверить и обновить необходимые пакеты

Этот этап нужен только при повышении версии ядра с 2.4 до 2.6. Если делается обновление версии 2.6.х до 2.6.х, то первый этап можно пропустить.

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

Основные пакеты для проверки и обновления:

При обновлении module-init-tools необходимо быть очень внимательным. Модулем называется программа, которая может быть включена в ядро по требованию (в случае необходимости). Module-init-tools содержат утилиты для управления модулями ядра Линукс — для загрузки, выгрузки, перечисления и удаления модулей. Основные доступные утилиты суть:

  • insmod
  • rmmod
  • modprobe
  • depmod
  • lsmod

Как modprobe, так и insmod используются для подключения модулей. Единственное отличие между ними состоит в том, что insmod «не знает» местоположение модулей и не предупреждает о зависимостях. Modprobe «знает» про это, просматривая файл /lib/modules/ /modules.dep

Читайте также:  Сторонний диспетчер задач для windows 10

Как устанавливать module-init-tools?

# tar -zxf module-init-tools-3.2.2.tar.gz

2. Сконфигурируйте его:

# cd module-init-tools-3.2.2 # ./configure —prefix=/

3. Переименуйте существующую 2.4 версию утилиты в utility.old:

4. Создайте и установите:

5. Запустите скрипт generate-modprobe.conf для перевода данных из файла конфигурации модулей версии ядра 2.4 (/etc/modules.conf) в файл, применяющийся версией ядра 2.6 (/etc/modprobe.conf)

6. Проверьте версию имеющегося в наличии module-init-tools

2. Получение исходного кода ядра

Скачайте исходники с сайта http://www.kernel.org/pub/linux/kernel/v2.6/ . Вы можете поместить их в директорию /usr/src/kernels на вашем сервере. Если вы планируете обновление ядра до версии 2.6.19.2, то шаги будут таковы:

3. Получение информации о компьютерном «железе»

Информация об аппаратной конфигурации вашего компьютера помогут получить следующие команды:

Эта утилита выдаст информацию о сетевой карте и всех устройствах, подключенных к машине. Если в ответ на ввод команды lspci вы получаете ошибку «lscpi: command not found» (команда не найдена), вам придется установить пакет pciutils-2.1.99.test8-3.4 rpm на ваш сервер.

Типичный вывод команды lspci выглядит примерно так:

Информацию о процессоре можно получить из файла /proc/cpuinfo

Полезная программа для получения информации о «железе». Она выдает детальное описание модулей. Прежде чем применять команду modinfo, нужно предварительно выяснить, какие модули загружены. Для этого служит команда lsmod — она выдает список загруженных модулей.

lsmod выдала модуль sata_svw, а детальную информацию про этот модуль можно получить с помощью команды modinfo.

4. Как сконфигурировать ядро

После получения исходников ядра, следующим шагом будет сконфигурировать ядро. Для этого есть несколько способов:

1. make config — эта утилита в командной строке задаст вам по очереди все возможные и невозможные вопросы по поводу конфигурации,

2. make xconfig — утилита, имеющая графический интерфейс, что подразумевает установку Иксов. Потому и не применяется на серверах.

3. make oldconfig — текстовая утилита, которая берет существующий файл конфигурации и запрашивает по поводу каждой переменной, не активизированной в этом файле.

4. make menuconfig — текстовой конфигуратор, основанный на управляемом курсором меню. Эта программа чаще всего используется для конфигурации ядра на серверах.

Новичкам я бы посоветовала использовать существующую конфигурацию и воспользоваться программой make menuconfig для конфигурации ядра.

Шаги по конфигурированию ядра таковы:

Шаг 1: Скопируйте текущую конфигурацию ядра в директорию с вашими новыми исходниками.

где заменяется на версию ядра, работающаю в данный момент на сервере. Ее можно узнать при помощи команды:

Когда make oldconfig будет запрашивать значения переменных, сохраните старые значения.

Даже сохраняя старые значения, не забудьте сверить информацию об аппаратной конфигурации сервера, типе процессора и сетевой карты. В новых версиях ядра опции могут изменяться, и некоторых из них может не оказаться в старом .config файле. Советую вторично перепроверить все опции в процессе работы с menuconfig.

Шаг 2: make menuconfig.

[root]# make menuconfig

На рисунке 1 представлено главное окно menuconfig. Только некоторые опции могут быть скомпилированы как модули. В menuconfig они обозначаются угловыми скобками . Нажмите M, чтобы компилировать как модуль. Значок звездочки [*] означает встроенное в ядро, M обозначает модуль.

Рисунок 1: menuconfig

Menuconfig предлагает функции поиска. Нажмите «/» для поиска любого модуля. Для примера: если вы не знаете, где искать модуль iptables, нажмите «/», введите «iptables» и нажмите enter.

Рисунок 2: Поиск параметров конфигурации

Рисунок 3: Результаты поиска menuconfig

Из множества опций программы menuconfig я упомяну о наиболее важных. Наиболее существенными для правильной работы ядра являются: процессор, файловая система, сетевая карта и жесткий диск. Вы можете выбрать желаемые: процессор, файловую систему, жесткий диск и сетевую карту из опций, доступных в menuconfig.

Тип процессора и его характеристики

Subarchitecture Type : Выберите Generic architecture (Summit,bigsmp, ES7000, default)

Processor family : Выберите соответствующий процессор из предлагаемого списка. Для примера: если у вас модель Dual Core AMD Opteron(tm) Processor 170, то можете указать Opteron/Athlon64/Hammer/K8 в имеющихся опциях.

Если у вас многопроцессорный сервер, подключите опции: Symmetric multi-processing support и SMT (Hyper threading) scheduler support.

Читайте также:  Windows 10 не видит домен 2003

Если у вас больше 4 Гб оперативной памяти, подключите опцию High Memory Support (64GB).

И, в конце концов, раздел Processor type and features будет выглядеть вот так:

Рисунок 4 menuconfig processor type

Конфигурация сети (Networking)

В этом разделе подключаются Iptables

Все модули в разделе Core Netfilter Configuration and IP: Netfilter Configuration Должны быть подключены как модули.

Драйверы устройств

Это наиболее запутанная часть. Тут основными опциями, которые необходимо проверить, являются:

1. Block devices :Подключите RAM disk support и Loop back device support

2. SCSI device support: Подключите в секции SCSI low level drivers соответствующую модель, если она является SCSI устройством.

3. Serial ATA (prod) и Parallel ATA (experimental) drivers: Если у вас SATA жесткий диск, подключите соответствующий драйвер в этой секции. Для примера: Если у вас Intel PIIX/ICH SATA на сервере, подключите Intel PIIX/ICH SATA support в этом разделе.

4. Network device support: Подключите соответствующую сетевую карту. Для примера: Если у вас программа lspci выдала следующие данные сетевой карты:
Ethernet controller: Broadcom Corporation NetXtreme BCM5704 Gigabit Ethernet

File Systems

Когда с этим закончите, созраните настройки (save the settings) и выходите из программы (quit).

5. Создание ядра

Следующий шаг — создание ядра. Вы можете применить команду make bzImage для этой цели. Эта команда создаст сжатый файл bzImage в папке arch/i386/boot в директории исходников Линукс; этот файл и будет новым скомпилированным ядром.

Следующий шаг — компиляция и линковка (создание ссылок) модулей. Здесь применим команду make modules.

После этого необходимо скопировать модули в директорию /lib/modules/. Это делается при помощи команды make modules_install.

Последовательность команд следующая:

Опция -j велит системе проделать множество операций в Makefile вместе, что, в свою очередь, уменьшит время компиляции.

— это удвоенное число процессоров в вашей системе, или число виртуальных процессоров. Его можно узнать, применив следующую команду:

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

Когда это сделано, скопируйте все в директорию /boot следующим образом:

mkinitrd это программа, создающая образ инициирующего виртуального диска — initial RAM Disk Image (initrd).

6. Конфигурация загрузчика

Загрузчик — это первая программа, которая запускается при загрузке системы. Существует два вида загрузчиков: GRUB и LILO

1. Определите, какой вид загрузчика у вас установлен.

# dd if=/dev/hda bs=512 count=1 2>&1 | grep GRUB

Если совпадает (появляется вывод команды; прим. перев.), текущий загрузчик — grub. Если не совпадает (нет никакого вывода команды; прим. перев.), то проверьте на lilo:

# dd if=/dev/hda bs=512 count=1 2>&1 | grep LILO

Примечание: Если у вас винчестер SCSI или SATA, то вместо hda, пишите sda.

2. Сконфигурируйте загрузчик

Если у вас LILO, Добавьте строки для нового ядра в файл /etc/lilo.conf. Типичная запись lilo выглядит примерно так:

lilo -v /sbin/lilo -R «Label for new kernel»

Если у вас GRUB, то добавьте запись для нового ядра в конец списка ядер в файле /etc/grub.conf. В GRUB первая запись имеет номер 0 (ноль). Вот пример записи:

Параметр переменной «panic» обеспечивает перезагрузку системы со старым ядром в случае kernel panic. Это означает, что в случае системного сбоя машина будет перезагружена с параметрами по умолчанию через 3 секунды.

Только не изменяйте значение переменной «default» в файле grub.conf. Когда будете перезагружаться, войдите в режим командной строки grub. Для этого нужно напечатать при появлении загрузочного приглашения команду «grub». Когда grub перейдет в режим командной строки, введите следующую команду:

savedefault —default=3 —once

Это в случае, если новая запись введена под номером 3. Затем выходите из режима командной строки grub.

7.Перезагрузка сервера

Перезагрузите сервер командой reboot. Если, паче чаяния, произойдет системный сбой — kernel panic, то система сама перезагрузится со старым ядром. Если все пойдет хорошо, то система будет загружена с новым ядром. Если система загружается с новым ядром, не забудьте изменить значение переменной «default» в файле grub.conf.

Заключение

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

Источник

Оцените статью