Автор Тема: Tray_eject_PLUS. Для монтирования съемных устройств Бетатестеры, требуются %)  (Прочитано 20527 раз)

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 6 046
Выключение по средней кнопке
Меню теперь по левой и правой - кому как нравится.
Кодировки на СД вроде победил

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 6 046
Версия в которой, я надеюсь, профиксина проблема найденая jabx
http://forum.altlinux.org/index.php/topic,7228.msg111005.html#msg111005
а также локализация с переводом от Вовы


Оффлайн akdengi

  • Участник
  • *
  • Сообщений: 3
Чтобы использовать утилиту в Mandriva и возможно в других дистрибутивх нужно внести некоторые изменения в код - в main секции иначе вызывало segfault - вылечилось классически:

dialog = gtk_dialog_new_with_buttons("Error", NULL,
GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
  GTK_STOCK_OK,
                                                  GTK_RESPONSE_ACCEPT,
                                                  GTK_STOCK_CANCEL,
                                                  GTK_RESPONSE_REJECT,
                                                  NULL);

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 6 046
Чтобы использовать утилиту в Mandriva и возможно в других дистрибутивх нужно внести некоторые изменения в код - в main секции иначе вызывало segfault - вылечилось классически:

Спасибо за ответ.
Вообще это интересно...
т.е. вместо
        dialog = gtk_dialog_new_with_buttons("Error", NULL,
                        GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
                        GTK_STOCK_OK, NULL);
надо
        dialog = gtk_dialog_new_with_buttons("Error", NULL,
                        GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
                        GTK_STOCK_OK, GTK_RESPONSE_OK,
                        NULL);
т.е. GTK_RESPONSE_* необходимо всегда ?

Оффлайн akdengi

  • Участник
  • *
  • Сообщений: 3
похоже да - в таком виде не вылетает

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 6 046
Спасибо. Подправлю.
Не думал что на Мандриве будут проблемы - они же с Альтом дальние родственники :)

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 6 046
Добавил GTK_RESPONSE_

Переделал определение раздела диска в fstab
Кроме by-id сработает и по by-label и по by-uuid - запомнить должна прожка точку монтировани и не показывать...

Оффлайн jabx

  • Участник
  • *
  • Сообщений: 185
  • KDesktop 6
    • офф.сайт. ФГОУ ВПО УГАВМ
Добавил GTK_RESPONSE_

Переделал определение раздела диска в fstab
Кроме by-id сработает и по by-label и по by-uuid - запомнить должна прожка точку монтировани и не показывать...
Пока не разобрался в нюансах...
Дисков стало меньше :) но               при отключенных флэшках их осталось 3
1 - floppy - пусть будет
и 2 раздела на 15 и на 20 Gb причем подключаются они явно не корректно. Возможно остались косяки от прежней версии.
Перегружу систему начисто отпишусь.

Вывод отладочной информации:
by-id=/
allfstabdrive=id/scsi-SATA_WDC_WD3200AAJS-_WD-WCARW0256287-part8| mountpoint=|/|
by-id=/media/home
allfstabdrive=id/scsi-SATA_WDC_WD3200AAJS-_WD-WCARW0256287-part7| mountpoint=|/media/home|
by-id=/media/shared
allfstabdrive=id/ata-WDC_WD3200AAJS-00VWA0_WD-WCARW0256287-part10| mountpoint=|/media/shared|
by-id=/media/vdr
allfstabdrive=id/ata-WDC_WD3200AAJS-00VWA0_WD-WCARW0256287-part9| mountpoint=|/media/vdr|
allfstabdrive=/dev/sr0| mountpoint=|/media/cdrom|
allfstabdrive=/dev/fd0| mountpoint=|/media/floppy|
floppy_mp=/media/floppy
dev_or_uuid=/dev/sdb1
allfstabdrive=/dev/sdb1| mountpoint=|/media/storage|
g_list 5
udi|/org/freedesktop/Hal/devices/volume_uuid_4b795aa5_7a61_4563_a96a_fcae78203237| -- ok
u|/org/freedesktop/Hal/devices/volume_uuid_4b795aa5_7a61_4563_a96a_fcae78203237| - modif
F_by_dev |/dev/sdb1|
IN_by_dev |/dev/sdb1|
stor=/org/freedesktop/Hal/devices/storage_serial_WDC_WD1600AAJS_00PSA0_WD_WCAP92606509|ctupe=disk|type=6|dm=1|mp=/media/storage|fs=ext3|bd=/dev/sdb1|uuid=4b795aa5-7a61-4563-a96a-fcae78203237

udi|/org/freedesktop/Hal/devices/volume_part2_size_1024| -- ok
u|/org/freedesktop/Hal/devices/volume_part2_size_1024| - modif
stor=/org/freedesktop/Hal/devices/storage_serial_WDC_WD3200AAJS_00VWA0_WD_WCARW0256287|ctupe=disk|type=3|dm=0|mp=|fs=|bd=/dev/sda2|uuid=

udi|/org/freedesktop/Hal/devices/volume_uuid_34e9e029_fe55_4288_b3d8_ec9aba4786ba| -- ok
u|/org/freedesktop/Hal/devices/volume_uuid_34e9e029_fe55_4288_b3d8_ec9aba4786ba| - modif
F_by_UUID |/media/shared|
stor=/org/freedesktop/Hal/devices/storage_serial_WDC_WD3200AAJS_00VWA0_WD_WCARW0256287|ctupe=disk|type=6|dm=1|mp=/media/shared|fs=ext3|bd=/dev/sda10|uuid=34e9e029-fe55-4288-b3d8-ec9aba4786ba

udi|/org/freedesktop/Hal/devices/volume_uuid_E69CDF419CDF0B47| -- ok
u|/org/freedesktop/Hal/devices/volume_uuid_E69CDF419CDF0B47| - modif
opt|ro|
opt|sync|
opt|dirsync|
opt|noatime|
opt|nodiratime|
opt|relatime|
opt|noexec|
opt|quiet|
opt|remount|
opt|exec|
opt|uid=|
opt|gid=|
opt|umask=|
opt|utf8|

OPT uid=501|
stor=/org/freedesktop/Hal/devices/storage_serial_WDC_WD3200AAJS_00VWA0_WD_WCARW0256287|ctupe=disk|type=6|dm=0|mp=|fs=ntfs|bd=/dev/sda1|uuid=E69CDF419CDF0B47
ADD

udi|/org/freedesktop/Hal/devices/volume_uuid_b75961aa_889a_11dc_bf0c_15da657980fa| -- ok
u|/org/freedesktop/Hal/devices/volume_uuid_b75961aa_889a_11dc_bf0c_15da657980fa| - modif
F_by_UUID |/media/home|
stor=/org/freedesktop/Hal/devices/storage_serial_WDC_WD3200AAJS_00VWA0_WD_WCARW0256287|ctupe=disk|type=3|dm=1|mp=/media/home|fs=ext3|bd=/dev/sda7|uuid=b75961aa-889a-11dc-bf0c-15da657980fa

udi|/org/freedesktop/Hal/devices/volume_uuid_989361e9_8cd5_4991_b170_c733ef93cd82| -- ok
u|/org/freedesktop/Hal/devices/volume_uuid_989361e9_8cd5_4991_b170_c733ef93cd82| - modif
F_by_UUID |/media/vdr|
stor=/org/freedesktop/Hal/devices/storage_serial_WDC_WD3200AAJS_00VWA0_WD_WCARW0256287|ctupe=disk|type=6|dm=1|mp=/media/vdr|fs=ext3|bd=/dev/sda9|uuid=989361e9-8cd5-4991-b170-c733ef93cd82

udi|/org/freedesktop/Hal/devices/volume_uuid_1171f3c3_7253_4b90_9e17_31ed201537be| -- ok
u|/org/freedesktop/Hal/devices/volume_uuid_1171f3c3_7253_4b90_9e17_31ed201537be| - modif
F_by_UUID |/|
stor=/org/freedesktop/Hal/devices/storage_serial_WDC_WD3200AAJS_00VWA0_WD_WCARW0256287|ctupe=disk|type=3|dm=2|mp=/|fs=ext3|bd=/dev/sda8|uuid=1171f3c3-7253-4b90-9e17-31ed201537be

udi|/org/freedesktop/Hal/devices/volume_uuid_2bbf0422_0266_4c63_8d4c_8c3bda128251| -- ok
u|/org/freedesktop/Hal/devices/volume_uuid_2bbf0422_0266_4c63_8d4c_8c3bda128251| - modif
opt|ro|
opt|sync|
opt|dirsync|
opt|noatime|
opt|nodiratime|
opt|relatime|
opt|noexec|
opt|quiet|
opt|remount|
opt|exec|

OPT
stor=/org/freedesktop/Hal/devices/storage_serial_WDC_WD3200AAJS_00VWA0_WD_WCARW0256287|ctupe=disk|type=3|dm=0|mp=|fs=ext4|bd=/dev/sda5|uuid=2bbf0422-0266-4c63-8d4c-8c3bda128251
ADD

udi|/org/freedesktop/Hal/devices/volume_part6_size_4186635264| -- ok
u|/org/freedesktop/Hal/devices/volume_part6_size_4186635264| - modif
stor=/org/freedesktop/Hal/devices/storage_serial_WDC_WD3200AAJS_00VWA0_WD_WCARW0256287|ctupe=disk|type=3|dm=0|mp=|fs=swap|bd=/dev/sda6|uuid=

floppy=/dev/fd0
counttotal|3|
counttotal|3|
MOUNT DBUS uid|/org/freedesktop/Hal/devices/volume_uuid_E69CDF419CDF0B47|  opt{uid=501|}: {uid=501} +0= {uid=501}+ mountlab|disk|
 mountlab|disk|  fstype|ntfs|
OK
counttotal|3|
go|pcmanfm2 "/media/disk"|
counttotal|3|
UNMOUNT DBUS uid|/org/freedesktop/Hal/devices/volume_uuid_E69CDF419CDF0B47|
OK
counttotal|3|
MOUNT DBUS uid|/org/freedesktop/Hal/devices/volume_uuid_2bbf0422_0266_4c63_8d4c_8c3bda128251|  opt{}:mountlab|disk|
 mountlab|disk|  fstype|ext4|
OK
counttotal|3|
go|pcmanfm2 "/media/disk"|
counttotal|3|
go|pcmanfm2 "/media/disk"|
counttotal|3|

Перезагрузка начисто ничего не изменила.
прилагаю скрин
вывод df
Файловая система      Разм  Исп  Дост  Исп% смонтирована на
/dev/sda8              14G   12G  1,3G  91% /
udevfs                5,0M  284K  4,8M   6% /dev
shmfs                1004M  736K 1003M   1% /dev/shm
tmpfs                1004M  100K 1004M   1% /tmp
/dev/sda7              15G   14G  605M  96% /media/home
/dev/sda10            182G  113G   60G  66% /media/shared
/dev/sda9              46G   40G  3,8G  92% /media/vdr
/dev/sdb1             147G  124G   16G  89% /media/storage
и fstab
cat /etc/fstab
proc /proc proc nosuid,noexec,gid=proc 0 0
devpts /dev/pts devpts nosuid,noexec,gid=tty,mode=6200 0
tmpfs /tmp tmpfs nosuid 0 0
/dev/disk/by-id/scsi-SATA_WDC_WD3200AAJS-_WD-WCARW0256287-part8 / ext3 relatime 1 1
#UUID=06dd76d5-5087-4010-be0b-e156873736a8 /home ext3 nosuid,relatime 1 2
/dev/disk/by-id/scsi-SATA_WDC_WD3200AAJS-_WD-WCARW0256287-part6 swap swap defaults 0 0
/dev/disk/by-id/scsi-SATA_WDC_WD3200AAJS-_WD-WCARW0256287-part7 /media/home ext3 nosuid,relatime 1       2
#/dev/disk/by-id/scsi-SATA_WDC_WD3200AAJS-_WD-WCARW0256287-part7 /home ext3 nosuid,relatime 1       2
/dev/disk/by-id/ata-WDC_WD3200AAJS-00VWA0_WD-WCARW0256287-part10 /media/shared        ext3       acl,user_xattr       0 0
/dev/disk/by-id/ata-WDC_WD3200AAJS-00VWA0_WD-WCARW0256287-part9 /media/vdr           ext3       acl,user_xattr        0 0
/dev/sr0 /media/cdrom udf,iso9660 ro,noauto,user,utf8 0 0
/dev/fd0 /media/floppy msdos,vfat rw,noauto,user,utf8 0 0
/dev/sdb1 /media/storage ext3 rw,noauto,user 0 0
что-то мне непонятно откуда взялась вторая строка на 20 Gb?
« Последнее редактирование: 07.09.2010 14:27:05 от jabx »
KDesktop 6 основная рабочая, openSUSE 12.2 - домашняя, School-master-p5 -резервная

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 6 046
Спасибо за содержательный ответ.
Судя по логу раздел на 15 гигов это первый раздел первого винта /dev/sda1 с ntfs
раздел на 20 гигов это первый логический диск расширенного раздела первого винта /dev/sda5 с ext4

> причем подключаются они явно не корректно
А в чем некорретность ?
Файлов не видно ?
Кодировка не верна ?

Оффлайн jabx

  • Участник
  • *
  • Сообщений: 185
  • KDesktop 6
    • офф.сайт. ФГОУ ВПО УГАВМ
Спасибо за содержательный ответ.
Судя по логу раздел на 15 гигов это первый раздел первого винта /dev/sda1 с ntfs
раздел на 20 гигов это первый логический диск расширенного раздела первого винта /dev/sda5 с ext4

> причем подключаются они явно не корректно
А в чем некорретность ?
Файлов не видно ?
Кодировка не верна ?

Скорее наоборот, я забыл что у меня есть вин на разделе /dev/sda1 в 20 там ntfs
а вот второй на /dev/sda5 размером 15Gb это root - резервной системы openSUSE 11.3
Оба раздела не прописаны для монтирования в fstab, т.к. нужны крайне редко

По какому принципу tray_eject_plus выбрал их для использования, по отсутствию в fstab?
Убрать бы их чтобы не мешались.

а некорректность - была связана похоже с данными от прежней версии, немонтировались оба /media/disk. Почему не- потому что в обзоре показывалась файловая система флэшки которой уже в помине не было.
Но это уже не важно - одноразовый глюк. После загрузки с нуля все монтировалось корректно.
« Последнее редактирование: 08.09.2010 06:50:56 от jabx »
KDesktop 6 основная рабочая, openSUSE 12.2 - домашняя, School-master-p5 -резервная

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 6 046
По какому принципу tray_eject_plus выбрал их для использования, по отсутствию в fstab?
Убрать бы их чтобы не мешались.
Да.
Т.к. их нет в fstab  прожка считает что вы их будете монтировать.
Кстати так считать и pcmanfm должен... У него в списке девайсов (слева) их нет ?
Скрыть можно по девайсу так
+++
#sudo mkdir /usr/share/hal/fdi/preprobe/95userpolicy
#sudo nano /usr/share/hal/fdi/preprobe/95userpolicy/10ignore-disks.fdi

add inside 10ignore-disks.fdi:
Help = hda1 for IDE or sda1 SATA/USB 1=first Partition

<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
<device>
<match key="block.device" string="/dev/hdaX">
<merge key="info.ignore" type="bool">true</merge>
</match>
</device>
</deviceinfo>

restart HAL as root:
#sudo /etc/init.d/dbus restart

enjoy...
+++
http://my.opera.com/linuxonlinehelp/blog/hide-windows-ntfs-partitions-at-nautilus-or-pcmanfm-shown-by-hal

или по лейблу попробовать
<match key="volume.label" string="wddd">
или по UUID
<match key="volume.uuid" string="wdqwdwdw">

то-же можно в /etc/hal/fdi/policy/preferences.fdi попробовать прописать не создавая файлов в /usr/share/hal/fdi/preprobe
типа добавить
<device>
  <match ...
    <merge ...
  </match>
</device>

Но это уже не важно - одноразовый глюк. После загрузки с нуля все монтировалось корректно.
Наверно... У меня такого не было пока...

ЗЫ: еще некоторые hal хитрости можно подсмотреть тут http://wiki.archlinux.org/index.php/HAL_(Русский)
« Последнее редактирование: 08.09.2010 13:45:30 от YYY »

Оффлайн jabx

  • Участник
  • *
  • Сообщений: 185
  • KDesktop 6
    • офф.сайт. ФГОУ ВПО УГАВМ

#sudo nano /usr/share/hal/fdi/preprobe/95userpolicy/10ignore-disks.fdi

<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
<device>
<match key="block.device" string="/dev/hdaX">
<merge key="info.ignore" type="bool">true</merge>
</match>
</device>
</deviceinfo>

restart HAL as root:
#sudo /etc/init.d/dbus restart
в pcmanfm - слева этих девайсов нет.

сделал так
sudo vim  /usr/share/hal/fdi/preprobe/95userpolicy/10ignore-disks.fdi
<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
<device>
<match key="block.device" string="/dev/sda1">
<merge key="info.ignore" type="bool">true</merge>
</match>
<match key="block.device" string="/dev/sda5">
<merge key="info.ignore" type="bool">true</merge>
</match>
</device>
</deviceinfo>
завершил сессию lxde
в текстовой консоли из под root
#service haldaemon restartПосле запуска сессии LXDE остался только флоппик
... ну и флешка если вставлена. - всё Ок
Благодарю за оперативную помощь

Еще маленькая просьба на будущее. Можно поменять строки "Открыть содержимое" и "безопасно извлечь" местами.
Т.е. открыть поставить на первое место, а извлечь вниз.
Вроде как логичнее будет - хотя может я не прав.
А то я монтирую, а потом машинально выбираю верхнюю строку. А когда надо извлечь - машинально нижнюю.
« Последнее редактирование: 09.09.2010 07:11:29 от jabx »
KDesktop 6 основная рабочая, openSUSE 12.2 - домашняя, School-master-p5 -резервная

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 6 046
Новая версия.
Исправлен глюк возникающий при монтировании-размонтировании-монтировании устройства из fstab
По просьбе jabx заменил порядок пунктов на
Монтировать
Открыть
Отмонтировать
Добавли замену иконок для смонтированных и размонтированных устройств
Для устройств без лейбла вместо "..." теперь пишется устройство - думю так красивее чем 3 точки

Оффлайн jabx

  • Участник
  • *
  • Сообщений: 185
  • KDesktop 6
    • офф.сайт. ФГОУ ВПО УГАВМ
Новая версия.
Исправлен глюк возникающий при монтировании-размонтировании-монтировании устройства из fstab
По просьбе jabx заменил порядок пунктов на
Монтировать
Открыть
Отмонтировать
Добавили замену иконок для смонтированных и размонтированных устройств
Для устройств без лейбла вместо "..." теперь пишется устройство - думаю так красивее чем 3 точки
Красота!!! Потестил, всё работает.
С смена иконок - это очень полезная штука.
все иконки в /usr/share/icons/tray_eject_plus/
меняйте иконки на свои и наслаждайтесь! Я себе иконку флоппика нарисовал  ;)
Благодарность Юрию с занесением в личное дело!
Кстати у меня диск без имени отображается как /dev/sdg1, и мне это очень даже нравится.
« Последнее редактирование: 10.09.2010 15:01:57 от jabx »
KDesktop 6 основная рабочая, openSUSE 12.2 - домашняя, School-master-p5 -резервная

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 6 046
Я себе иконку флоппика нарисовал  ;)

Не возражаете если при следующей переборке вашу иконку добавлю в пакет?