Как узнать, используется ли 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? Возможно, вам лучше задать этот вопрос напрямую...

(Эти многочастные вопросы болезненны:-()

Другие вопросы по тегам