LINUX.ORG.RU

Какой компонент GNOME (или может Natilus-а) работает с HAL и выполняет монтирование внешних носителй?


0

0

Хочу поковырять исходники. Может напишу что-нибудь не завязанное на ГНОМ, чтобы можно было под другими DE/WM пользовать. Посоветуте куда направить взор.

Ответ на: комментарий от rh9

Да похоже надо смотреть в сторону gnome-mount. Вот только судя по man страничке он берет кучу инфы от gconf-а. До этого я полагал, что ведщую роль играет непосредственно HAL.

zloy_starper ★★★
() автор топика
Ответ на: комментарий от zloy_starper

По моему там висит демон, который слушает dbus на предмет сообщений от HAL. Когда сообщение приходит вызывается pmount. Монтируется в папку /media/<имя устройства>. <имя устройства>, файл устройства и тип файловой системы приходит от HAL. Параметры монтиования берутся, через gconf (хранятся в ветке storage, специфичные для файловой системы).

vgudkov
()
Ответ на: комментарий от vgudkov

Это похоже на правду. Остается только найти этот демон и посмотреть, что там внутри. Глянул сейчас хидеры к libhal. Вроде что-то начинает проясняться. Но на одних описаниях прототипов функций все равно нифига не поймешь. Нужен хороший пример. Насчет того, что параметры монтиования берутся через gconf, сомнений нет. Вот только потом вся совокупность полученных данных (от HAL и от gconf) пишется в fstab. А потом делается обычный mount /media/XXX, который кстати может сделать и пользователь ручками.

zloy_starper ★★★
() автор топика
Ответ на: комментарий от zloy_starper

Демон называется gnome-volume-manager, он в отдельном пакете идёт. Запускается из сеанса.

anonymous
()
Ответ на: комментарий от zloy_starper

>Вот только потом вся совокупность полученных данных (от HAL и от gconf) пишется в fstab. А потом делается обычный mount /media/XXX, который кстати может сделать и пользователь ручками.

100% там вызывается программа pmount, которая позволяет монтировать утсройства от непривелигированного юзера. В fstab ничего не пишется. Вообще есть уже такая штука как ivman, которая работает аналогичным образом.(слушая dbus и вызывая pmount)

vgudkov
()
Ответ на: комментарий от vgudkov

в gnome-volume-manager не используется никакой pmount%) Вот пример кода из собственного проекта на Qt4. QDBusMessage msg =QDBusMessage::createMethodCall("org.freedesktop.Hal", udi, "org.freedesktop.Hal.Device.Volume", "Mount"); QString mp = "dev"; msg<<mp << "vfat"<<QStringList(); QDBusMessage reply = con->call(msg);

krum
()
Ответ на: комментарий от vgudkov

Так было раньше, теперь он использует gnome-mount.

grob ★★★★★
()
Ответ на: комментарий от vgudkov

strings /usr/bin/gnome-volume-manager | grep pmount
На ubuntu 7.04 ничего не выдаёт:) Сейчас монтирование отдали halу, и правильно. То есть, есть метод Mount у org.freedesktop.Hal.Device.Volume. 

krum
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.