Как узнать, используется ли haldaemon или udev на сервере RHEL?
Я совершенно сбит с толку, если Hal действительно используется или просто Udev.
То, что я понял:
- В общем, HAL - это уровень абстракции, который позволяет операционной системе взаимодействовать с аппаратным устройством.
- И демон Hald отличается от HAL. Это сервис, который предоставляет HAL и используется для идентификации устройств, а затем их монтирования (и где они будут находиться в /dev?) Или автоматической их настройки для использования приложениями.
- И теперь это устарело с помощью udev, который также делает то же самое, то есть автоматически монтирует устройства, когда они подключены, путем чтения сообщений из ядра и присвоения имен в соответствии с предопределенными правилами.
И в настоящее время только несколько приложений на основе графического интерфейса, таких как GNOMe, используют hald, чтобы получать уведомления о вновь подключенных устройствах (пока udev позаботится о монтировании?)
Поэтому мой вопрос заключается в том, используется ли hal только для уведомления приложений на основе графического интерфейса о вновь подключенном оборудовании, поскольку оно может обмениваться данными через DBUS, но udev не имеет реализации dbus. А для устройств автонастройки, только udev делает это, а не где используется hal?
И я особенно говорю о Redhat 5,6 и 7.
Благодарю.
1 ответ
Немного предыстории: udev
существует уже целую вечность (начиная с ядра 2.5) и (для RHEL) это то, что настраивает узлы устройства, когда драйверы объявляют об аппаратном обеспечении. Даже в системах, использующих HAL, udev
под. udev
сам по себе может вызывать другие программы, когда "замечает" изменения, а HAL был попыткой абстрагироваться от анонса и конфигурации определенных частей нового оборудования для настольных систем *nix (не только Linux, но и других, таких как FreeBSD). В конце концов, люди покончили с определенными частями HAL, но не все части HAL были перемещены в udev
- некоторые из них разделены на других демонов. Примерно к 2012 году большинство современных дистрибутивов Linux отказались от HAL, и в эти дни (начало 2019 года) вышеупомянутые демоны - это что-то вроде udisks
, upower
и т. д. Есть хорошее резюме того, что произошло на https://en.wikipedia.org/wiki/HAL_(software)...
Таким образом, учитывая, что RHEL свободно основан на Fedora (грубое отображение можно увидеть на https://en.wikipedia.org/wiki/Red_Hat_Enterprise_Linux) и учитывая, что мы знаем, что это была Fedora 16, которая была без HAL:
- RHEL 5 обязательно будет иметь
hald
- RHEL 6 скорее всего будет иметь
hald
- RHEL 7 не имеет
hald
и другие демоны будут принимать вещиudev
не может быть убежден, чтобы сделать.
Как узнать [ ], используется ли haldaemon или udev на сервере RHEL?
Просто запустите соответствующую версию RHEL и сделайте что-то вроде:
rpm -qa "*hal*"
(О нет, я только что понял, что вы спрятали несколько вопросов в одном:-()
И демон Hald отличается от HAL. Это сервис, который предоставляет HAL и используется для идентификации устройств, а затем их монтирования (и где они будут находиться в /dev?) Или автоматической их настройки для использования приложениями.
Устройства находятся под /dev
но нужно ли мне "монтировать" устройство в зависимости от контекста. Я мог бы смонтировать диск (например, под /mnt
но есть и другие места, где все монтируется тоже) но я не монтирую сканер (объявление / поиск сканеров - это то, с чем HAL имеет дело).
И теперь это устарело с помощью udev, который также делает то же самое, то есть автоматически монтирует устройства, когда они подключены, путем чтения сообщений из ядра и присвоения имен в соответствии с предопределенными правилами.
Иногда это делается только udev
иногда включаются и другие службы. /dev
наименование устройства находится под udev
контроль, да.
И в настоящее время только несколько приложений на основе графического интерфейса, таких как GNOM[E], используют hald, чтобы получать уведомления о вновь подключенных устройствах (пока udev по-прежнему заботится о монтировании?)
Ну, современные системы не имеют hald
так что ваш вопрос странный и сложный. Кроме того, даже в тех системах, которые это сделали, ответ "это зависит". да udev
может выполнять монтирование, но иногда такие вещи, как присоединение USB-камеры по протоколу PTP, в значительной степени обрабатываются пользовательским пространством GNOME (хотя, думаю, вы можете поспорить по поводу всего угла FUSE).
Поэтому мой вопрос заключается в том, используется ли hal только для уведомления приложений [sic] с графическим интерфейсом о новом подключенном оборудовании, так как оно может обмениваться данными через DBUS, но udev не имеет реализации dbus.
Это вопрос? HAL использовался для уведомления приложений с графическим интерфейсом, но он также мог вызывать другие вещи (например, изменение правил питания / монтирование дисков) при смене устройства.
А для устройств автонастройки, только udev делает это, а не где используется hal?
Опять же это совместные усилия. Да, udev
правила, чтобы сделать много, но в зависимости от контекста могут быть задействованы другие вещи (например, если вам нужно начать предлагать пользователю), и вот где такие вещи, как udisks
начать вмешиваться.
Я предполагаю, что здесь есть подтекст: почему вы спрашиваете об использовании HAL? Возможно, вам лучше задать этот вопрос напрямую...
(Эти многочастные вопросы болезненны:-()