Автомонтирование внешних дисков в KDE3

Модератор: Модераторы разделов

Аватара пользователя
savigm
Сообщения: 127
ОС: openSUSE

Автомонтирование внешних дисков в KDE3

Сообщение savigm »

Всем добрый день.

Обьясните мне пожалуйста поподробней как происходит автомонтирование внешних дисков (флешек) в КДЕ3?
Вроде как haldaemon или udev изначально видит устройство, далее его параметры передает КДЕ.
В частности интересует: каким образом директории, в которую монтируется флешка /media/<diskname> и всем нижестоящим файлам, т.е. соодержимому влешки присваиваются права user ID и group ID? Откуда КДЕ берет параметры iocharset и codepage?
В связи с этими вопросами возникают проблемы: при копировании в MC фалов на флешку, MC пытается оставить user ID group ID файлов, а флешка монтируется почемуто с group ID - root, соответсвенно начинает ругаться что не может сменить режим доступа, даже если убрать галочку в этом пункте меню копирования. chown не помагает - операция не позволяетсяю Мало того: по правому клику на флешке, в свойствах невозможно сохранить режим доступа к флешке и файла, остаются прежние.
Ну и проблема с русскими именами файлов, хотелось бы настроить iocharset=koi8-r и codepage=866, но непонятно куда прописывать.
В принципе все это можно настроить в /etc/fstab, но тогда при вставке флешки автомонтирование не происходит, толко руками mount ..., а это напряжно, тем более хочется более универсальное решение, чтобы не для одной конкретной флешки, а для всех vfat.

Буду очень благодарен за ответы и оказанное внимание.
Спасибо сказали:
Аватара пользователя
Snupt
Бывший модератор
Сообщения: 2062
Статус: No Place for RTFM Here…
ОС: Mac OS X

Re: Автомонтирование внешних дисков в KDE3

Сообщение Snupt »

iУведомление от модератора Snupt
Переносится а раздел Обсуждение GUI, DE/WM
Спасибо сказали:
Аватара пользователя
savigm
Сообщения: 127
ОС: openSUSE

Re: Автомонтирование внешних дисков в KDE3

Сообщение savigm »

Нашел схожую темку по кодировке при автомонтировании - Slackware 12 и автомонтирование vfat+кириллица в KDE. В документации HAL сказано что все настроки для внешних устройств берутся из /usr/share/hal/fdi/policy/10osvendor/20-storage-methods.fdi, однако правка этого файлика и перезапуск haldaemon эффекта не дает. Заметил что при монтировании в /media появляется файлик .hal-mtab, в котором прописаны текущие настройки примонтированного внешнего устройства, только вот откуда они берутся непонятно. В /var/log/messages пишется много строк от kernel по опознаванию девайса и последняя строка - hald: mounted /dev/sdb1 on behalf of uid 1000.
Спасибо сказали:
KernelPanic
Бывший модератор
Сообщения: 2060
Статус: Brain Атаке
ОС: Debian squeeze/sid/exp

Re: Автомонтирование внешних дисков в KDE3

Сообщение KernelPanic »

Как вариант могу Вам предложить сделать небольшой финт для решения проблем с русскими именами файлов для системной кодировки KOI8-R.
Итак, нужно сделать скрипт:

Код: Выделить всё

#!/bin/bash

################################################################################
############
#                                                                                          #
# This script corrects cyrillic problems with USB Flash Drives when you need to mount it   #
# with IOCHARSET other than your Linux system trys to assign to it.                        #
# The problem is when you use system locales other than ru_RU.UTF-8 and try to mount       #
# USB Flash Drives (filesystem type VFAT) automatically with HAL.                          #
#                                                                                          #
#  To use this script you need to create folder /bin/trying and replace the binary file    #
#  /bin/mount to that folder, than copy this script to /bin folder (or create) and enjoy.  #
#  The script name must be "mount" and it must be executable.                              #
#                                                                                          #
################################################################################
############

# Change Additional mount options with IOCHARSET and CODEPAGE you need :)
# Additional mounting options (cyrillic correction)
additional_options=",iocharset=koi8-r,codepage=866"

# Use correction
vfat=0

# Result Message (was used for debuging)
message=""

# Maximum parameters count
Num=0

# Filling the array of input parameters
for input_param in $*
do
  let "Num++"    # Increment Num
  params[$Num]=$input_param
done


# Main checking cycle (check mount input parameters)
for ((i=1; i <= Num; i++))
do
  # Checking if FS type specified
  if [ ${params[$i]} = "-t" ]; then
    if [ ${params[$i+1]} = "vfat" ]; then
      let "vfat = 1"
      let "i++"
      message=$message"Found FSType VFAT (additional mount options ON). "
    fi
  # Checking if Mounting Options specified
  elif [ ${params[$i]} = "-o" ]; then
    let "i++"                         # go to the next parameter (mount options themself)
    params[$i]=${params[$i]}"$additional_options"    # update mount options
  fi
done


# This part makes mounting with additional parameters or with standard parameters depending
# on filesystem type
if [ $vfat -eq 1 ]; then
  # Filling new mount options
  parameters=''
  for (( i=1; i <= Num; i++ ))
  do
    parameters=$parameters"${params[$i]} "
  done
  # mount
  /bin/trying/mount $parameters
else
  /bin/trying/mount $*
fi
Назвать его нужно mount и сделать исполняемым.
После чего создать папку /bin/trying и переместить туда бинарник /bin/mount.
Созданный скрипт поместить в папку /bin, т.е. фактически подменить бинарник. Данный скрипт просто добавляет опции iocharset=koi8-r,codepage=866 в строку опций для дисков с ФС VFAT и вызывает бинарник /bin/trying/mount.
Для всех остальных файловых систем он прозрачен.
Спасибо сказали:
Аватара пользователя
savigm
Сообщения: 127
ОС: openSUSE

Re: Автомонтирование внешних дисков в KDE3

Сообщение savigm »

mount - не подойдет, при автомонтировании исползуется другой монтировщик, если не ошибаюсь. Полазив по инету наткнулся на bugs-страницу kde3 - судя по тексту простого решения данной проблемы в КДЕ3 нет, только если выдумывать изащренные методы. Как вариант пердлагают пересобрать ядро с указанием настроек для всех vfat ф.с. - говорят помогает. Дело в том что в КДЕ3 для haldaemon кодировку невозможно поменять т.к. настройки haldaemon игнорятся. Еще если прям в X-ах задавать права для флешки - они все равно не сохранятся, а вот монтировать от пользователя работает. В общем с настройками автомонтирования беда. В КДЕ4 обещают все исправить.
Спасибо сказали:
KernelPanic
Бывший модератор
Сообщения: 2060
Статус: Brain Атаке
ОС: Debian squeeze/sid/exp

Re: Автомонтирование внешних дисков в KDE3

Сообщение KernelPanic »

ВСЁ монтирование в конечном итоге происходит через mount у меня при системной кодировке KOI8-R данный скрипт отрабатывал нормально.
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: Автомонтирование внешних дисков в KDE3

Сообщение Bluetooth »

savigm писал(а):
14.03.2009 03:10
mount - не подойдет, при автомонтировании исползуется другой монтировщик, если не ошибаюсь. Полазив по инету наткнулся на bugs-страницу kde3 - судя по тексту простого решения данной проблемы в КДЕ3 нет, только если выдумывать изащренные методы. Как вариант пердлагают пересобрать ядро с указанием настроек для всех vfat ф.с. - говорят помогает. Дело в том что в КДЕ3 для haldaemon кодировку невозможно поменять т.к. настройки haldaemon игнорятся. Еще если прям в X-ах задавать права для флешки - они все равно не сохранятся, а вот монтировать от пользователя работает. В общем с настройками автомонтирования беда. В КДЕ4 обещают все исправить.

для нтфс лично я знаю 2 рабочих и удобных решения, оба они описаны тут, и для фата скорее всего тож подойдут:
Проблема с автомонтированием NTFS(драйвер ntfs-3g)
Спасибо сказали:
KernelPanic
Бывший модератор
Сообщения: 2060
Статус: Brain Атаке
ОС: Debian squeeze/sid/exp

Re: Автомонтирование внешних дисков в KDE3

Сообщение KernelPanic »

Там слишком много решений приведено, может немного конкретики?
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: Автомонтирование внешних дисков в KDE3

Сообщение Bluetooth »

KernelPanic писал(а):
14.03.2009 18:42
Там слишком много решений приведено, может немного конкретики?

ну, по-моему данная тема как раз и хороша тем, что там приведена куча решений, из которых большое количество хороших.
Спасибо сказали:
vadiml
Сообщения: 446
ОС: fc12.x86_64

Re: Автомонтирование внешних дисков в KDE3

Сообщение vadiml »

Я флешек с ntfs не видел (точнее знаю что 1 знакомый такую купил и форматнул её в fat32)
поэтому сделал проще:
прописал в fstab строку:
/dev/sdс1 /media/flash vfat user,flush,noauto,showexec,iocharset=utf8,codepage=866,umask=000,quiet 0 0
(у меня 2 винта уже в системе висит, потому и /dev/sdс1)
и создал каталог /media/flash

Теперь когда вставляю флешку, на столе появляется её значёк и окошко с вопросом что с ней делать (открыть в том-то или том-то или ничего не делать и снизу "запомнить это действие для этого диска")
phenom x4 905e, asus m4a79 deluxe, 4 gb, ati x550, ati 4350, 2 x 17" LCD
Спасибо сказали: