Автомонтирование из под пользователя USB, CD/DVD, NTFS, FAT в KDE 4.2 [РЕШЕНО]
Здравствуйте, у меня возникла такая проблема. Я перешел с Gnome 2.24 на KDE 4.2. В Gnome был такой апплет, который позволял автоматически монтировать флешки, CD/DVD, USB'шные жесткие диски в формате NTFS, FAT и ext3. Это делалось нажатием правой кнопки мыши на значке устройства - было очень удобно. Причем я fstab при этом не трогал вообще. В KDE, на сколько я понимаю, эту функцию выполняет апплет "извещение о новых устройствах". Но у меня он только показывает, какое устройство подсоединено, но монтировать его не может. Эту проблему я поборол только для CD/DVD, прописав в fstab такую строчку:
/dev/cdrom /media/cdrom iso9660 auto,user,ro,noexec,mode=0444,iocharset=utf8
У меня есть 2 HDD. Один в ntfs, а другой в ext3 + ещё флешка в FAT32. Если в fstab прописать
/dev/sdb1 /media/USB_disk ntfs-3g mask=0,nls=utf8 0 1
то тогда можно из командной строки сказать mount /dev/sdb1 и всё нормально монтируется. Размонтировать тоже приходиться из командной строки. Всё из под root. Елси нужно смонтировать диск в ext3 - приходиться закоментировать строчку в fstab для ntfs. Ни монтировать, ни размонтировать через апплет "извещение о новых устройствах" не получается - пишет, что нет прав доступа. Хотя делел passwd -a (user) plugdev. Пробовал устанавливать ivman и добавлял его в автозагрузку. Не помогает.
Вопрос такой, можно ли натсроить KDE так, чтобы было как в Gnome? Втыкаеш устройство, любое USB_диск/флешку/CD/DVD в любой системе NTFS/FAT/ext3 и нажатием кнопочки "открыть в Dolphin" получаешь автоматом смонтированное устройство, а лучше вообще так: втыкаешь устройство, а оно само монтируется в /media. И всё это из под user. При этом каждый раз не править fstab.
PS Я пробовал гуглить - нашел кучу решений, но они все не подходят. В основном предлагают править fstab, но делать это каждый раз, для куждого устройства не удобно :( При этом приходиться всё время монтировать/размонтировать устройства через консоль из под root. Помогите пожалуйста, я в линукс не больше месяца.
- Для комментирования войдите или зарегистрируйтесь
поидее клик по устройству в
поидее клик по устройству в апплете должен открывать его (там даже подпись есть такая), но этого не происходит
открываешь файловый менеджер dolphin и сбоку увидишь устройство - кликай по нему. отмонтировать: по нему правой кнопкой - отмонтировать
У меня это работает только с
У меня это работает только с файловой системой ext3, а с ntfs не получается :( Пишет следующее:
Произошла ошибка при обращении к 500GB, система ответила: org.feeddecktop.Hal.Device.Volume.UnknownFailure: TODO: have to rethink extra options
"500GB" - это мой диск. Когда я из под root его примонтировал, а потом из KDE захотел отмонтировать - пишет:
umount: (много кракозябр) root (опять кракозябры) /dev/sdb1 (кракозябры) /media/USB_disk
Все эти надписи отображаються в нижнем окне Dolphin. Кстати, откуда кракозябры взялись :( ?
ну если ФС именно ntfs, то
ну если ФС именно ntfs, то _самое_простое_ (без оглядок на другие средства) было бы подключение модулем в ядре этой файловой системы.
второй метод (при установленной ntfs-3g) исправление файла
/usr/share/hal/fdi/policy/10osvendor/20-storage-methods.fdi
но второй только до обновления hal'a. ну и, естественно, не совсем халяль ;)
Кстати, если в файле
Кстати, если в файле /etc/env.d/02locale LC_MESSAGES="ru_RU.UTF-8" поменять на LC_MESSAGES="POSIX", то кракозябры изчезают и вместо них вся эта надпись пишется на по-английски, без кракозябр. Чег-то наверное с Dolphin, но это всё на автомонтирование точно не влияет :).
И ещё если в Dolphi навести
И ещё если в Dolphi навести мышкой на какой-нибудь аудио файл, mp3 например, то справа, в области "Сведения", пишется информация о файле - Тип, размер, изменён, загаловок, альбом, жанр, исполнитель. Если файл находится в папке с русским названием и/или сам называется по-русски, то информация в "загаловок", "альбом", "жанр", "исполнитель" отбражается кракозябрами, при этом в основном поле, где отображаються все файлы, название файла нормально отображается по-русски. Я конечно извиняюсь, что отклонился от темы, но всёже интересно это вообще можно как-нибудь исправить. Если можно, но сложно, то заведу отдельную тему. Кстати, тоже самое происходит, елси включить проигрывание этого файла в "vlc" - русское название проигрываемого файла отображатеся кракозябрами в заголовке окна vlc-плеера. Всё это, конечно мелочи, но неприятно :(
Схожая проблема,
Схожая проблема, автомантирование под пользователем не происходит, у меня даже СД, хотя юзер во всех группах. Встречал в Google рекомендации по написанию скрипта для udev. Инструкция там довольно простая, но насколько это надежно, не знаю.
Ключевые слова для Google udev-flash-mount
My website: http://comb.org.ru
С ноября 2022 нетбук HP mini (Processor: Atom n570)
Спасибо за совет, попробую. О
Спасибо за совет, попробую. О результатах отпишусь.
ядрёный автомоунтер
в помощь! ;-)
Сегодня некогда, а завтра
Сегодня некогда, а завтра вечером вплотную займусь своей проблемой, потом отпишусь. Спасибо за ссылку.
Если все получится, напиши,
Если все получится, напиши, как решил. У меня просто тоже руки не доходят, очень много всего настроить надо и мануалов перечитать.
My website: http://comb.org.ru
С ноября 2022 нетбук HP mini (Processor: Atom n570)
где-то вычитал и помогло ln
где-то вычитал и помогло
ln -s /sbin/mount.ntfs /sbin/mount.ntfs-3g
Решил таки проблему. Ура!
Решил таки проблему. Ура! Гугль - лучший друг :) Это оказывается баг такой был в KDE. Вот решение того, почему не монтируется USB_HDD_NTFS: http://bugs.kde.org/show_bug.cgi?id=157378 - пост №20. В итоге я понял следующее, что для того, чтобы всё автоматом монтировалось в KDE (да и наверное не только в KDE...) с помощью апплетов, нужен установленный HAL + DBus. Есть разные способы реализоать автомонтирования такие, как "ivman", "udev", "pmount", "autofs", может и ещё какие-нибудь есть. ivman удобная штука, но он нужен для удобства монтирования из консоли, я его из автозапуска убрал - боюсь будет как-нибудь конфликтовать с KDE'шным апплетом, хотя можно попробовать совметить и апплет KDE и ivman, но это потом. Соответственно их нужно погрузить в автозагрузку #rc-update add hald dbus default, хотя у меня они и так там были. Затем юзвера нужно проместить в группу "plugdev". По идее вышеупомянутого достаточно, если бы не баг в KDE. Делаем так, как написали "Francesco Di Muccio" и "Shaumyadeep Chaudhuri" в постах №18 и №20 в вышеупомянутой ссылке. И тогда будет счастье :) По крайней мере у меня было :)
Единственное что пока не нравится - это монтирование FAT, русские буквы кракозябрами отображаются, но я сейчас ещё погуглю, может найду чего-нибудь. И ещё одна странная особенность - диск DVD после того как его в привод вставишь монтируется около минуты. А в остальном всё гут. Буду сейчас искать как кракозябры в FAT исправить.
Да, трудно искать чёрную
Да, трудно искать чёрную кошку в тёмной комнате, особенно тогда, когда её там нет :) У меня оказывается на флешке большинство русских надписей читается как положено, а те которые в виде кракозябр - те и на винде также читаются, кракозябрами :) Правда я так и не понял как так получилось... ну да ладно. Просто у меня файлы с нормальным русским были в папках, названия которых были в кракозябрах, а проверял эффект от моих танцев с бубном я как раз по этим кракозябрным папкам :) Короче всё заработало вери гуд. Единственное, на рабочем столе не появляются иконки устройств и DVD диск долговато инициализируется, но это не беда, главное работает. Всем огромное спасибо за внимание к моей проблеме. Всем удачи. Тему помечаю решённой.
читать
1) читать elog после emerge нужно хоть изредка
2) rc-update add hald dbus hotplug default
3) при сборке ядра указать все типы файловых сиcтем с которыми планируется работать
4) из fstab убрать все моунты для флэшек и сд
5) для моунта (ели не критично и не требуется иначе) - использовать тип файловой системы "auto"
6) add user в критичные группы (диск,звук,видео и т.д.) - это позволит избежать многих проблем и избавит от чтения мануалов
7)кракозябли на флэшке (диске) - это по всей видимости koi8-r - как результат кривонастроенной локализации и\или неправильного монтирования
8)настрой правильно локализацию под иксами (сложилось впечатление, что консоль у тебя в utf, а иксы в koi8)
что-то добрый я сегодня ....
> 2) rc-update add hald dbus
> 2) rc-update add hald dbus hotplug default
Делаю так
whiteshark ~ # rc-update add hotplug default
пишет
* rc-update: service `hotplug' does not exist
Посмотрел через eix, у меня ни sys-apps/hotplug ни sys-apps/hotplug-base не установлены.
Но у меня вроде и без этого заработало, а на что это влияет?
Вот вывод моего rc-update
whiteshark ~ # rc-update
xdm | default
dbus | default
fsck | boot
hald | default
mtab | boot
root | boot
swap | boot
udev | sysinit
keymaps | boot
devfs | sysinit
dmesg | sysinit
local | default nonetwork
svnserve | default
savecache | shutdown
localmount | boot
consolefont | boot
modules | boot
hsqldb | default
hostname | boot
mount-ro | shutdown
net.lo | boot
procfs | boot
netmount | default
sysctl | boot
urandom | boot
termencoding | boot
hwclock | boot
bootmisc | boot
alsasound | boot
killprocs | shutdown
> 8)настрой правильно локализацию под иксами (сложилось впечатление, что консоль у тебя в utf, а иксы в koi8)
А как проверить правильно натсроена локализация или нет? Я делал по этому HOWTO
http://belgorod.lug.ru/wiki/index.php/Установка_Gentoo_Linux#UTF-8_.D0.BB.D0.BE.D0.BA.D0.B0.D0.BB.D1.8C
Единственное моё отступление от этого HOWTO:
"в файле /etc/locales.build выставить:
ru_RU.UTF-8/UTF-8
ru_RU.UTF-8
ru_RU/KOI8-R"
Я этого не сделал, поскольку у меня не было такого файла, а создавать я его не стал, вроде и без этого всё локализовалось :)
По этому выводу можно судить о правильности локализации?
whiteshark ~ # locale
LANG=ru_RU.UTF-8
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=
А то может и правда у меня чего с локализацией напутано? У меня Dolphin отображает тэги в MP3 в виде кракозябр (при этом все названия русских файлов показывает нормально) да и некоторые сообщения выдает кракозябрами (правда очень редко). VLC плеер, теги, название трэка (в загаловке окна воспроизведения) список плей-листа, отображает кракозябрами, хотя когда выбираешь трэк для воспроизведения (в собсвенном просмотрщике VLC-плеера, до того как трэк добавился в плей-лист) все названия трэков на русском, без кракозябр. Разумеется тэги были созданы в какой-нибудь винде на русском.
> 6) add user в критичные группы (диск,звук,видео и т.д.)
Я извиняюсь, что задаю такой вопрос, но как проверить в каких группах состоит пользователь?
Установил potplug, добавил
Установил potplug, добавил его в автозагрузку, думал станут появляться занчки с подключенными устройствами на рабочем столе и DVD станет монтироваться быстрее. В результате этого не произошло, но вот NTFS теперь монтируется так, что русскоязычные файлы и папки вообще не отображаются, отображаются только англоязычные, в консоле та же ситуация. Снёс hotplug - проблема не изчезла :( Буду опять гуглить.
Чет всё слетело. Теперь всё
Чет всё слетело. Теперь всё монтируется, но вот когда монтируется NTFS, папки с русскими названиями просто не отображаются. Гуглил-гуглил нашел кучу советов как это решить, но ни один мне не подходит. В основном все рекомендации сводятся к такому содержанию /sbin/mount.ntfs:
#!/bin/bash
ntfs-3g $1 $2 -o locale=ru_RU.UTF8
или
к такому содержанию /usr/share/hal/fdi/policy/10osvendor/10-ntfs-policy.fdi:
как тут: http://linuxforum.ru/index.php?showtopic=59831
тут: http://forum.ntfs-3g.org/viewtopic.php?t=628
или например тут: http://wiki.archlinux.org/index.php/HAL
Вторым способом у меня вчера всё решилось, но толи после установки hotplug, толи после доделывания этого
"в файле /etc/locales.build выставить:
ru_RU.UTF-8/UTF-8
ru_RU.UTF-8
ru_RU/KOI8-R"
шага по локализации, всё слетело. Пробовал удалит созданный файл /etc/locales.build и пакет hotplug - результат тот же :(
Пробовал реализовать этот способ лечения
http://linuxforum.ru/index.php?showtopic=59831 в различных вариациях - не помогает.
Если идти первым способом, то автомонтирование вообще не работает (в апплете появляется устройство, нажимаю не него, а Dolphin его не открывает), а если вторым, то всё автомонтируется, но русских папок вообще не видно. Может это из-за того, что у меня hal-0.5.11-r6? Такое ощущение, что строчкаlocale=ru_RU.UTF-8 просто игнорируется, какую бы локаль я там не прописывал. Подскажите пожалуйста что делать?
C автомонтированием cdrom
C автомонтированием cdrom решил проблему:
ivman теперь этим занимается.
Причем, похоже, в fstab ничего не нужно прописывать.
Установил ivman и hald, обновил систему
emerge --update --deep world
Обновил файлы конфигурации в /etc
etc-update
P.S. А уже начал кустарный способ придумывать :)
Раскомментировал wheel в sudoers
И сделал bash скрипт и иконку на него.
update:Нет, неправ был, грязно наврал, нужно-таки редактировать fstab. Вписал туда так:
My website: http://comb.org.ru
С ноября 2022 нетбук HP mini (Processor: Atom n570)
А меня теперь тоже всё
А у меня теперь тоже всё завелось. Я пересобрал ядро с поддержкой UTF-8 и всё заработало в лучшем виде. В fstab ничего не прописывал. У меня он выглядит так:
/dev/sda3 /boot ext2 defaults 1 1
/dev/sda1 / reiserfs noatime,notail 0 1
/dev/sda2 /var reiserfs defaults 0 1
/dev/sda8 /var/tmp reiserfs defaults 0 1
/dev/sda5 swap swap pri=42 0 0
/dev/sda7 /home reiserfs defaults 1 2
/dev/sda6 /usr reiserfs noatime,notail 0 1
#/dev/cdrom /mnt/cdrom auto noauto,ro 0 0
proc /proc proc defaults 0 0
#/dev/cdrom /media/cdrom iso9660 auto,user,ro,noexec,mode=0444,iocharset=utf8
#/dev/sdb1 /media/USB_disk ntfs-3g mask=0,nls=utf8 0 1
#/dev/sdb1 /media/corsar vfat auto,codepage=866,iocharset=utf8,quiet,umask=000 0 0
#/dev/fd0 /mnt/floppy auto noauto 0 0
# glibc 2.2 and above expects tmpfs to be mounted at /dev/shm for
# POSIX shared memory (shm_open, shm_unlink).
# (tmpfs is a dynamically expandable/shrinkable ramdisk, and will
# use almost no memory if not populated with files)
shm /dev/shm tmpfs nodev,nosuid,noexec 0 0
Пока оставил на всякий случай закоментаренными строчки с CD ищё некоторые, но наверное скоро удалю. У меня вообще всё просто получилось в итоге. Сделал так.
1) Убрал из автозагрузки ivman'ов и т.п. вещи. Мой вывод rc-update теперь выглядит так:
#rc-update
xdm | default
dbus | default
fsck | boot
hald | default
mtab | boot
root | boot
swap | boot
udev | sysinit
keymaps | boot
devfs | sysinit
dmesg | sysinit
local | default nonetwork
svnserve | default
savecache | shutdown
localmount | boot
consolefont | boot
modules | boot
hsqldb | default
hostname | boot
mount-ro | shutdown
net.lo | boot
procfs | boot
netmount | default
sysctl | boot
urandom | boot
termencoding | boot
hwclock | boot
bootmisc | boot
alsasound | boot
killprocs | shutdown
2) Пересобрал ядро так, как сказано здесь http://www.gentoo.org/doc/ru/utf-8.xml (у меня система в кодировке UTF-8). Драйвера NTFS и FAT пересобрал модулями, до этого они у меня были вкомпилины в ядро (может это было одной из причин проблем - не знаю).
2) Для того, чтобы HAL использовал не ntfs драйвер, а ntfs-3g, в папке /usr/share/hal/fdi/policy/10osvendor/ создал файлик следующего содержания http://bugs.kde.org/show_bug.cgi?id=157378 (пост №20).
3) Перезапустил HAL
#/etc/init.d/hald restart
4) У меня всё заработало, главное проследить, чтобы автомонтирование производил именно HAL, а не какие-нибудь другие программы (ivman, udev или ещё что-нибудь такое), иначе апплет из под юзера не будет работать.
5) Да, кстати, убедился, что user в группе plugdev (может я и ещё в какие группы себя добавлял, уже не помню - столько я HOWTO перелазил... :) ). Мне всё нравится. Никаких подправлений fstab и прочих манипуляций. Единственное, DVD диск долго инициализируется - но это не страшно :).
Помечаю тему решённой повторно :))
Ну я то изначально с UТF 8
Ну я то изначально с UТF 8 собрал по handbook, но кажется, для глобальной смены кодировки пересборка ядра не требуется. Однако просек одну вещь: в ядре - CD-ROM/DVD Filesystems есть файловая система UDF, которая отключена по умолчанию,
Если интересно вот? http://ru.wikipedia.org/wiki/Universal_Disk_Format
My website: http://comb.org.ru
С ноября 2022 нетбук HP mini (Processor: Atom n570)
>Ну я то изначально с UТF 8
>Ну я то изначально с UТF 8 собрал по handbook
А я с самго начала пользовался этим хендбуком, там про это не говорили :)
http://www.gentoo.org/doc/ru/handbook/handbook-x86.xml?full=1#book_part1_chap7
>для глобальной смены кодировки пересборка ядра не требуется
Да оно вроде так и есть, но если я правильно понял, ntfs-3g, когда монтирует диск пользуется умолчальной системной кодировкой (откуда он её считывает я не знаю) и никаие строчки вроде этой "append key="volume.mount.valid_options" type="strlist">locale=(((((ru_RU.UTF-8)))))к/append" в файле /usr/share/hal/fdi/policy/10osvendor/20-ntfs-config-write-policy.fdi эффекта теперь не дают (если не ошибаюсь, в предыдущих версиях HAL давали, а сейчас разработчики от этого отказались). На каком-то форуме дали эту ссылку http://people.freedesktop.org/~david/hal-spec/hal-spec.html со словаим, что перестал HAL поддерживать эти вещи (если я правильно понял то высказываение), но я всю эту нифу на английском читать не стал, подумал, что если совсем никак не нагуглится ничего, тогда буду разгрызать уже эту инфу. Не знаю, что точно возымело эффект, толи сборка драйвера ntfs (родного драйвера ядра, не путать с ntfs-3g) модулем, толи прописание системной локали UTF-8 в ядре, но только после этого у меня ntfs-3g стал не только монтировать диски через HAL, но и распознавать русские имена папок, чему я очень рад :)
>файловая система UDF
А у меня этот драйвер с самого начала был включен. Я когда первый раз конфигурировал ядро все пункты вручнцю простматривал + использовал какой-то wiki-HOWTO для настройки ядра. Сейчас уже не помню, что меня подтолкнуло поставить этот пункт, толи мысль: "раз уж UDF новая файловая система дисков - пусть будет, а вдоруг пригодиться", толи в этом HOWTO посоветовали :)
P.S. Могу в чем угодно ошибаться, поскоьку я в Gentoo, да и в Linux вообще, только около месяца.
Такая же штука
Такая же штука. :))
Пойду пересоберу ядро, ибо у мну кажется есть подобный диск.
На канал Gentoo-ru заходи в irc
Вот сижу и гадаю, почему диски, которые не монтировались в Убунту монтируются в Генту, а некоторые старые музыкальные нооборот.
А заодно, зачем вообще автомонтирование, когда все парметры можно передать через shell скрипт, положить его куда-нибудь в домашнюю папку, сделать на него права исполнения только для группы и Симлинк с панели рабочего стола. Аналогичный на отмонтирование и еще eject. И тоже самое с флешками.
My website: http://comb.org.ru
С ноября 2022 нетбук HP mini (Processor: Atom n570)
> На канал Gentoo-ru заходи в
> На канал Gentoo-ru заходи в irc
Спасибо, зайду как-нибудь :)
>А заодно, зачем вообще автомонтирование, когда все парметры можно передать через shell скрипт, положить его куда-нибудь в домашнюю >папку, сделать на него права исполнения только для группы и Симлинк с панели рабочего стола. Аналогичный на отмонтирование и еще >eject. И тоже самое с флешками.
Кстати, интересная мысль - надо будет над этим потом подумать, может и вправду удобнее получитсья. Но для этого мне, напрмер, квалификации пока не хватит. Я вообще прогать не умею, соответсвенно и скрипты писать тоже. Если время появится, попробую заняться скриптописанием..., мож чего и полчитсья :)
Тут не нужно быть
Тут не нужно быть программистом. Простая пользовательская логика. Собственно, я уже это сделал
Создал в домашней папке дир bin (чтобы потом не искать, где и что) туда закинул скрипт
Там создал просто файл mount cd, в него вписал
#!/bin/sh
exo-open --launch TerminalEmulator sudo mount -o umask=000 /dev/sda4 /media/disk-4; sleep 5; thunar /media/disk-4/mnt/cdrom
Это монтирование логического раздела - просто последовательность команд, в эмул. терминала... если sudo не помнит пароль, появится окно для ввода, но в этом случае все в одну строку и не нужно ставить ";"
после TerminalEmulator, иначе окно терминала останется после завершения. Могу прокомментировать, но думаю, сам догадаешься, что здесь к чему...
Да... И самое главное - это права на доступ к скрипту - только выполнение для рута и хозяина скрипта
А дальше, только ссылку на этот скрипт на рабочий стол.
My website: http://comb.org.ru
С ноября 2022 нетбук HP mini (Processor: Atom n570)
Да, действительно не сложно,
Да, действительно не сложно, но я бы тогда как-нибудь так сделал:
#!/bin/sh
exo-open --launch TerminalEmulator sudo pmount /dev/sdb1; sleep 5; dolphin /media/
и такой
#!/bin/sh
exo-open --launch TerminalEmulator sudo pumount /dev/sdb1
Ведь не всегда знаешь, какой диск будешь вставлять: NTFS,ext3 или iso-9660, а pmount сам это определит. И ещё было бы не плохо привязать определённый тип диска к определённому индексу 1,2 или 3 и т.д. здесь /dev/sdb"1". Тогда можно эти симлинки на рабочем столе обозвать в соответствии с монтируемым приводом.
Хотя иметь два скрипта для
Хотя иметь два скрипта для каждого устройства - один для монтирования, а другой для размонтирования - много ярлыков получиться. Можно поробовать узнать как это в скрипте описывается и написать скрипт так:
При запуске скрипта, скрипт проверяет сминтировано ли данное устройство, если смонтировано, то выполняет его размонтирование, а если не смонтировано, то пытается его (устройство) смонтировать. Получиться скрипт монтирования/размонтирования. Но как это описать скриптом, я не знаю. Надо будет потом погуглить - наверняка это в сети есть в больших количествах :)
>Ведь не всегда знаешь, какой
>Ведь не всегда знаешь, какой диск будешь вставлять: NTFS,ext3 или iso-9660
Для этого параметр auto есть, можно передать скрипту -o auto
А скрипт с проверкой тоже интересно, но это почти уровень udev - куда более сложные правила, а тут уже до автомонтирования рукой подать.
И мой easy-подход не везде хорош, конечно же... У меня флешки все раво на автомонтировании, но есть кнопка размонтирования.
My website: http://comb.org.ru
С ноября 2022 нетбук HP mini (Processor: Atom n570)
>можно передать скрипту -o
>можно передать скрипту -o auto
И он даже ntfs правильно распознает? А драйвер правильный таким образом выберется, не ntfs, а ntfs-3g? Кстати, действтельно интересно - сейчас у себя попробую, хотя наверное выберется. У pmount есть ещё одно преимущество, на мой взляд. Ему не обязательно указывать куда именно нужно монтировать устройство. Ему можно сказать pmount /dev/sdb1 и он автоматом сосздаст в /media папку по метке тома устройства и смонтирует его туда.
Про pmount вооще не слышал,
Про pmount вооще не слышал, сейчас помотрю, что это...
спс...
создание симлинка на рабочем столе и его удаление также можно передать скриптом через ";"
равно, как и переход в папку с примонтированным устройством ; thunar /mnt/cdrom
однако я не стал так делать... Уж очень как-то напрягает писать такие строчки туда rm -r /home/usr/smlinktocdrom :)
My website: http://comb.org.ru
С ноября 2022 нетбук HP mini (Processor: Atom n570)
>rm -r
>rm -r /home/usr/smlinktocdrom
а если без "-r", тоже ведь должно работать. По идее, если ты точно знаешь, что /home/usr/smlinktocdrom - это симлинк, то это не страшно, почти тоже самое, что удаление ярлыка на рбочем столе в винде. Но вообще, не знаю, действительно мало ли, я ещё пока ни в чем не уверен, поскольку опыта у меня совсем мало :)
Подумал про монтирование и
Подумал про монтирование и отмонтирование одной кнопкой, тоже несложно... Тогда тут должно быть три скрипта: в первом проверка смонтировано ли, если да, то запуск скрипта с отмонтированием, если нет, то запуск скрипта с монтированием и симлинк на первый скрипт на рабочий стол.
My website: http://comb.org.ru
С ноября 2022 нетбук HP mini (Processor: Atom n570)
Да, только какими командами
Да, только какими командами выполнять проверку смонтировано/отмонтировано? И как описать логическое ветвление: "если да, то одно, в противном случае другое" - понятно, что это можно сделать, только для этого надо этим заняться - погуглить как следует и т.д :)
Условный оператор нужно явно
Условный оператор нужно явно использовать. Вроде конструкции из учебника c if.
Сейчас поспрашаю у программистов на форумах...
My website: http://comb.org.ru
С ноября 2022 нетбук HP mini (Processor: Atom n570)
Попробовал. Прикольно
Попробовал. Прикольно :)
#mount -t auto -o umask=000 /dev/sdb1 /media
Это тоже самое, что pmount /dev/sdb1. Эффект тот же.
Спросил у программистов, все
Спросил у программистов, все и правда просто:
if mount | grep -q sdb; then echo mounted; fi
echo заменяем скриптом, я указывал полный путь
Чтобы он примонтировал нужно добавить
else и скрипт монтирования.
My website: http://comb.org.ru
С ноября 2022 нетбук HP mini (Processor: Atom n570)
Круто. Покажи пожалуйста как
Круто. Покажи пожалуйста как у тебя в итоге получилось, полностью.
if mount | grep -q sda4; then
if mount | grep -q sda4; then /home/me/bin/umountLD; else /home/me/bin/mountLD; fi
Вот собственно: монтирование и размонтирование локального диска одной кнопкой.
Единсвенное, пока не до конца понял, как правильно подставить запуск эмулятора терминала в начало скрипта,
У меня просто sudo недолго помнит пароль и если в скрипте появляются доп. параметры не открывает терминал для ввода пароля.
My website: http://comb.org.ru
С ноября 2022 нетбук HP mini (Processor: Atom n570)
Не знаю почему, но у меня
Не знаю почему, но у меня именно твой вариант не заработал. Я немного скрипт подправил
if mount | grep -q sdb1; then umount /dev/sdb1; else mount -t auto -o umask=000 /dev/sdb1 /media; fi
и тогда всё завелось. pmount чего-то заглючил у меня - стал долго тупить перед монтированием и перестал создавать директорию в /media с именем метки тома диска. Поэтому заюзал mount. Спасибо, отличный способ монтирования/размонтирования. А по поводу sudu, попробуй так
if mount | grep -q sdb1; then exo-open --launch TerminalEmulator sudo umount /dev/sdb1; else exo-open --launch TerminalEmulator sudo mount -t auto -o umask=000 /dev/sdb1 /media; fi
у себя проверить не могу - sudo у меня пока нет.
Кстати, было бы не плохо заставить этот скрипт распосзнавать тип диска, чтоб создать на рабочем столе симлинки для каждого диска и не замарачиваться над тем, какой номер в данный момент у CD, а какой у HDD. Чтоб скрипт монтировал отмонтировал толко тот тип диска, который в нем прописан, чтоб не было путаницы sdb1, sdb2, sdb3 и т.д. Я думаю, что это тоже можно сделать с помощью "if".
Наешл вчера вот эту инфу в
Наешл вчера вот эту инфу в гугле http://linfoline.homedns.org/bash/abs-book.html#PART1 - буду кождый день понемногу читать. Потом попробую скрипт твой более универсальным сделать, чтоб на каждый диск или привод по ярлычку на рабочем столе и чтоб кадый раз не думать какой и под каким номером диск уже смонирован. В общем, вставил диск, появился симлинк на столе (для этого нужно демона делать), на симлинк кликнул диск смонтировался, кликнул ещё раз размонтировался, вытащил диск - симлинк убрался со стола. Это конечно изобретение велосипеда заново :), но для тренировки и в рамках свободного творчества очень даже не плохо, по-моему. Если что-нибудь получится - отпишусь, выложу то, что у меня выйдет.
Вот еще хороший учебник по
Вот еще хороший учебник по bash Advanced bash script programming
А с той проблемой справился добавлением в "цепочку" еще одного стартого скрипта, в итоге их 4, но уже точно работает без ошибок. Видимо, это нормально для bash - передавать управление от одного скрипта к другому.
My website: http://comb.org.ru
С ноября 2022 нетбук HP mini (Processor: Atom n570)
Спасибо за ссылку. Буду
Спасибо за ссылку. Буду изучать :)
Ээээ у меня тут давно уже
Ээээ у меня тут давно уже тянется маленькая проблемка: вроде бы флешки то нормально монтируются, но разделы с виндой и макосью в кедах не видятся, приходится ручками монтировать. Недавно Арх на ноут поставил, там все возможные диски в places как надо отображаются. Куда копать?
Я конечно не спец, я сам
Я конечно не спец, я сам новичок, но попробуй сделать так как я советовал выше, в таком длинном посте с выводом коанды #rc-update. Попробуй осуществить пункт (2) поста, а именно:
"2) Для того, чтобы HAL использовал не ntfs драйвер, а ntfs-3g, в папке /usr/share/hal/fdi/policy/10osvendor/ создал файлик следующего содержания http://bugs.kde.org/show_bug.cgi?id=157378 (пост №20). "
Дык ладно бы он только ntfs
Дык ладно бы он только ntfs не видел, он ещё не видит HFS+ раздел))) тут явно какой то другой косяк
А после добавления того
А после добавления того файлика хотябы ntfs видеть стал? Может для HFS+ нужно ещё какой-нибудь драйвер особенный? На самом деле это всё версии. Кстати, а mount'ом обычным получается монтировать? Если да, то наверное чего-то с Hal, и ещё проверьте включили ли Вы поддержку этой файловой системы в ядре.
Да всё руками прекрасно
Да всё руками прекрасно монтируется, а в places ток флешы да цдром появляется))
у меня тоже косяк с kde4.2 и
у меня тоже косяк с kde4.2 и автомонтирование.
Ничего из темы не помогло.Flash монтирует на ура, а вот ни ntfs, ни cdrom не хочет монтировать(((
Понимаете, для того, чтобы создать систему, подобную Linux, недостаточно быть хорошим кодером. Нужно быть еще и коварной сволочью. Линус Торвальдс
мой трабл
у меня два диска sda1 и sda5
sda1 автомонтировалось из Places нормально, но вот sda5 - глюк
An error occurred while accessing'Disk D', the system responded: org.freedesktop.Hal.Device.Volume.UnknownFailure: ntfs-3g:
You must specify exactly one device and exactly one mount point.
ntfs-3g 2009.11.14 external FUSE 28 - Third Generation NTFS Driver XATTRS are on, POSIX ACLS are ...
дык вылечилось тем, что с sda5 убрал метку 'disk D' (партишином правится) и все заработало
вобщем довольно странно : )