Автомонтирование сменных носителей [SOLVED]
ASGAlex 13 июня, 2007 - 16:53
Товарищи, хочу поинтересоваться, какой такой демон отвечает за автомонтирование сменных носителей? Уверен, что такого добра полно, поэтому конкретизирую: какой демон используется в KDE для автомонтирования сменных носителей? И что необходимо для его корректного функционирования?
Спрашиваю в связи с так и не решенным вопросом по адресу http://gentoo.ru/node/7250
Вопреки господствующему мнению (о чем можно судить по количеству и качеству ответов) проблема вовсе не в том, что тупой юзер (то есть я) не может поставить галочки там где надо. Проблема даже не в самом KDE, так как я его пересобрал уже. Проблема где-то... далеко и глубоко...
»
- Для комментирования войдите или зарегистрируйтесь
emerge ivman rc-update add
emerge ivman
rc-update add ivman default
в автозапуск от юзера
кого в какие группы сунуть сообщит при инсталляции
Сделал как
Сделал как сказали... эффекта ноль... в fstab то надо прописывать или нет? и вообще кудо он будет монтировать?
_________________
GA-P965-DS3/C2D-E6320 2.94 GHz/2Gb/SATAIIx160/GF7600GT-256/Gentoo-x86_64
Quote: Проблема
в ДНК ? =)
з.ы. протев тибя ниче не имею)
Сожалею, но
Сожалею, но бородатая шутка уже совсем не уместна...
_________________
[ASG]: У нас на обед - салат "Рекурсивный" : помидоры, огурцы, салат.
Есть такой
Есть такой демон, HAL называется, туда тебе и копать... Хотя достаточно поставить HAL и добавить в автозагрузку. Вот так например:
emerge hal
rc-update add hald (или просто hal) default
Вот и всё....
_________________
Gentoo Linux + здравая голова + ровные руки + терпение = Linux сервер своими руками! :)
Демон вроде
Демон вроде стоит, и при загрузке (у меня привычка уже следить за логом загрузки) запускается...
Переставлю, конечно, попробую...
_________________
[ASG]: У нас на обед - салат "Рекурсивный" : помидоры, огурцы, салат.
Кстати, а
Кстати, а почему у меня в ЦУП КДЕ ->периферия->устройства хранения данных->дополнительно заблокированы почти все галочки, в том числе "Включить HAL (текущая система не поддерживает HAL)"? Это кеды неправильно собраны или нудно (опять же) чего-то доставить?
_________________
[ASG]: У нас на обед - салат "Рекурсивный" : помидоры, огурцы, салат.
USE="hal"
_________________
~? **!
А после того
А после того как в юзе добавил хал надо только kdebase пересобрать? или еще что? соответственно hal и ivman я уже поставил.
_________________
Linux ns 2.6.18-suspend2-r1 #2 SMP Sat Feb 3 13:56:55 KRAT 2007 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz GenuineIntel GNU/Linux
Теперь и HTC TyTN :) Жалко на Windows Mobile 5.0 :(
после emerge halemerge
после
Всё заработало. Попробуй пере-emerge эти два пакета. И в разном порядке.
Флэшка монтируется секунд пять в /media/sdb1 (имени флехи не определил :-( )
Кеды никаких окошек не генерили (типа, что делать с девайсеной)
Сейчас пересоберу с USE="hal"
Всем спасибо,
Всем спасибо, видимо, пока баловался с ufed, удалил из make.conf флаг hal, а потом ведь обновлялся...
Пересобрал веды, все работает))
_________________
[ASG]: У нас на обед - салат "Рекурсивный" : помидоры, огурцы, салат.
Поблемы новичков
Не следить за USE флагами - это наверно проблема всех новичков :).
Я постипенно становлюсь к ним внимательным, а раноше очень много проблем из-за USE флагов. И все они решались самым простым пересобиранием emerge с нужными USE флагами.
Главное быть внимательным и помнить, что со стандартными конфигами почти все работает по умалчанию, главное следить за зависимостями USE флагами.
Да и вообще стараться бать внимательнам к хенбуку
Может еще кому
Может еще кому пригодится на будущее:
Раньше монтировал все носители вручную, для чего добавил соответствующие записи в /etc/fstab. Потом пересел на KDE и решил настроить автомонтирование. Для чего установил hal, добавил его в уровень default (KDE собран с флагом hal).
Увидел такой глюк: при подключении любого носителя, hal его видит, KDE высовывает соответствующее окошко для выбора действия - но если выбрать что-нибудь вроде "открыть в новом окне" - ошибка доступа. Если смотреть ручками /media - то там ничего не подмонтировано.
Решилась проблема так: закомментировал в /etc/fstab ранее добавленные правила для ручного монтирования. После чего все заработало как надо.
Народ, а я
Народ, а я наоборот хочу руками флеху монтировать (как CD).
как ее в fstab прописывать
/dev/что???
/dev/666
Флешки представляются как SCSI-диски. Соответственно:
/dev/sda1
/dev/sdb1
/dev/sdc1
/dev/sdd1
/dev/sde1
.......
Если у тебя жесткий диск SATA, то он есть /dev/sdaX, где X - номер раздела. На флешках обычно только один раздел. Тогда все флешки начинаются с sdB и дальше по алфавиту.
можно вообще
можно вообще настроить UDEV и сделать так, что флешки будут отдельлно от скази дисков. у меня например так
флешки:
/dev/flash/sdXX
скази десткие диски:
/dev/sdXX
правила для udev:
Надо создать файл /etc/udev/rules.d/10-udev-my.rules и записать туда следующие:
BUS="usb" SUBSYSTEM=="block", KERNEL=="sd*", ACTION=="add", NAME="flash/%k", GROUP="disk"
более подробная информация на http://ru.gentoo-wiki.com/HOWTO_Udev_и_автомонтирование_носителей
Re: /dev/666
а это не зависит от того в какой USB я ее вставлю? (у меня их всего 8)
Не-а
Нет. Как ни вставляй, они всегда будут /dev/sda1 и так далее. Только сложно разобраться, в каком порядке нумеруется несколько флэшек, то есть кто из них будет a, а кто b. Но в fstab пиши только sda1 и sdb1 (ну, или сколько ты собираешься их одновременно втыкать)
Гы
не верно. Как ни вставляй, на nforce-250 с подключенным sata-hdd в primary ты не добъёшся того, чтобы флехи были sda*...
Вот на некоторых чипах под коре2 это возможно, т.к. там sata может определяться через hd*
Ну да, про SCSI/SATA
Ну да, про SCSI/SATA я забыл (-:Е
тут есть ещё
тут есть ещё /dev/disk/ в котором лежат они по разным признакам отсортированные
Да, но вот
Да, но вот проблема в том, что флеха, например, монтируется по-умолчанию с какой-то кривой кодировкой, поэтому в fstab нужно прописать в опциях монтирования utf-8, и тогда не будет аброкодабры вместо русских имен.
_________________
[ASG]: У нас на обед - салат "Рекурсивный" : помидоры, огурцы, салат.
А у меня и так
А у меня и так нет никакой абракадабры. Русские имена в порядке.
Что я делаю не так?
Наверное,
Наверное, подлым образом настроил в ядре нужные кодировки (-:Е
(если я ничего не путаю и не забыл)
Каюсь, грешен.
Каюсь, грешен.
Не знаю, у
Не знаю, у самого в ядре utf-8, как и у всей системы...
_________________
[ASG]: У нас на обед - салат "Рекурсивный" : помидоры, огурцы, салат.
кодировки
utf8 в ядре - наздоровье!
а вот default nls - вот это затрагивает ФС
еще одна
У меня все было наоборот: автомонтирование работало отлично именно благодаря наличию соответвующих строчек в /etc/fstab. После того как я их удалил, значок устройства на рабочем столе появляется, а при попытке его открыть - выдается ошибка.
Проблема решилась добавлением себя в группу plugdev.
Немного иной профиль, не стал создавать новую тему
Немного другая проблема
До обновления, жесткие диски нормально монтировались и папки "появлялись" на рабочем столе и в меню "переход".
simba-pc simba # hal-device |grep hda1
block.device = '/dev/hda1' (string)
linux.sysfs_path = '/sys/block/hda/hda1' (string)
udevadm test /sys/block/hda/hda1
import_uevent_var: import into environment: 'MAJOR=3'
import_uevent_var: import into environment: 'MINOR=1'
import_uevent_var: import into environment: 'DEVTYPE=partition'
import_uevent_var: import into environment: 'PHYSDEVPATH=/devices/pci0000:00/0000:00:14.1/ide0/0.0'
import_uevent_var: import into environment: 'PHYSDEVBUS=ide'
import_uevent_var: import into environment: 'PHYSDEVDRIVER=ide-disk'
udevtest: looking at device '/block/hda/hda1' from subsystem 'block'
match_rule: '/sys/block/hda/hda1/whole_disk' does not exist
udev_rules_get_name: add symlink 'disk/by-id/ata-ST3250620A_9QE4MSWE-part1'
udev_rules_get_name: add symlink 'disk/by-path/pci-0000:00:14.1-ide-0:0-part1'
run_program: 'vol_id --export /dev/.tmp-3-1'
run_program: '/lib64/udev/vol_id' (stdout) 'ID_FS_USAGE=filesystem'
run_program: '/lib64/udev/vol_id' (stdout) 'ID_FS_TYPE=ntfs'
run_program: '/lib64/udev/vol_id' (stdout) 'ID_FS_VERSION=3.1'
run_program: '/lib64/udev/vol_id' (stdout) 'ID_FS_UUID=1EDC402BDC3FFB91'
run_program: '/lib64/udev/vol_id' (stdout) 'ID_FS_UUID_ENC=1EDC402BDC3FFB91'
run_program: '/lib64/udev/vol_id' (stdout) 'ID_FS_LABEL=DATA'
run_program: '/lib64/udev/vol_id' (stdout) 'ID_FS_LABEL_ENC=DATA'
run_program: '/lib64/udev/vol_id' (stdout) 'ID_FS_LABEL_SAFE=DATA'
run_program: '/lib64/udev/vol_id' returned with status 0
udev_rules_get_name: add symlink 'disk/by-uuid/1EDC402BDC3FFB91'
udev_rules_get_name: add symlink 'disk/by-label/DATA'
udev_rules_get_name: no node name set, will use kernel name 'hda1'
udev_device_event: device '/block/hda/hda1' already in database, cleanup
udev_node_add: creating device node '/dev/hda1', major=3, minor=1, mode=0640, uid=0, gid=6
udev_node_update_symlinks: update symlink 'disk/by-id/ata-ST3250620A_9QE4MSWE-part1' of '/block/hda/hda1'
udev_db_get_devices_by_name: found index directory '/dev/.udev/names/disk\x2fby-id\x2fata-ST3250620A_9QE4MSWE-part1'
update_link: found 1 devices with name 'disk/by-id/ata-ST3250620A_9QE4MSWE-part1'
update_link: found '/block/hda/hda1' for 'disk/by-id/ata-ST3250620A_9QE4MSWE-part1'
update_link: compare (our own) priority of '/block/hda/hda1' 0 >= 0
update_link: 'disk/by-id/ata-ST3250620A_9QE4MSWE-part1' with target 'hda1' has the highest priority 0, create it
udev_node_update_symlinks: update symlink 'disk/by-path/pci-0000:00:14.1-ide-0:0-part1' of '/block/hda/hda1'
udev_db_get_devices_by_name: found index directory '/dev/.udev/names/disk\x2fby-path\x2fpci-0000:00:14.1-ide-0:0-part1'
update_link: found 1 devices with name 'disk/by-path/pci-0000:00:14.1-ide-0:0-part1'
update_link: found '/block/hda/hda1' for 'disk/by-path/pci-0000:00:14.1-ide-0:0-part1'
update_link: compare (our own) priority of '/block/hda/hda1' 0 >= 0
update_link: 'disk/by-path/pci-0000:00:14.1-ide-0:0-part1' with target 'hda1' has the highest priority 0, create it
udev_node_update_symlinks: update symlink 'disk/by-uuid/1EDC402BDC3FFB91' of '/block/hda/hda1'
udev_db_get_devices_by_name: found index directory '/dev/.udev/names/disk\x2fby-uuid\x2f1EDC402BDC3FFB91'
update_link: found 1 devices with name 'disk/by-uuid/1EDC402BDC3FFB91'
update_link: found '/block/hda/hda1' for 'disk/by-uuid/1EDC402BDC3FFB91'
update_link: compare (our own) priority of '/block/hda/hda1' 0 >= 0
update_link: 'disk/by-uuid/1EDC402BDC3FFB91' with target 'hda1' has the highest priority 0, create it
udev_node_update_symlinks: update symlink 'disk/by-label/DATA' of '/block/hda/hda1'
udev_db_get_devices_by_name: found index directory '/dev/.udev/names/disk\x2fby-label\x2fDATA'
update_link: found 1 devices with name 'disk/by-label/DATA'
update_link: found '/block/hda/hda1' for 'disk/by-label/DATA'
update_link: compare (our own) priority of '/block/hda/hda1' 0 >= 0
update_link: 'disk/by-label/DATA' with target 'hda1' has the highest priority 0, create it
udevtest: run: 'socket:/org/freedesktop/hal/udev_event'
udevtest: run: 'socket:@/org/kernel/udev/monitor'
аналогичная проблема после
аналогичная проблема после обновления, причём до этого сервис работал вообще как часы идеально.
сейчас стартует и всё вроде бы нормально, но нет никакой реакции ни на внешние-диски, ни на флешки.
Замечена одна особенность, если воткнуть флешку или диск и после рестартануть сервис, то он тут же отрабатывает и всё монтирует, на вновь подключаемые опять никакой реакции.
ivman, hal, pmount уже пересобраны и не раз никакого эффекта.
ivman (libxml2)
ivman нормально работает только на libxml2-2.7.2-rX, на 2.7.3, так что откатывайтесь и маскируйте.
спасибо
Откатился, спасибо, всё заработало. А то пользуюсь каждый день, на работу со сменным hdd хожу, он типа флешки, вся работа на нём.
А то я уже вчера нашёл обсуждение на forums.gentoo.org, так там ребята уже придумали замену, сделали ebuild, вот ветка - http://forums.gentoo.org/viewtopic-t-731555-highlight-ivman.html
Не люблю менять что-то к чему уже привык, да к тому же всё работало как надо.