[sisyphus] siefs + automount = проблемы

Aleksey Avdeev =?iso-8859-1?q?solo_=CE=C1_solin=2Espb=2Eru?=
Чт Янв 29 13:31:50 MSK 2004


Canis Cerberus пишет:
> В сообщении от 28 Январь 2004 13:51 Aleksey Avdeev написал(a):
> 
>>Здравствуйте.
>>
>>   Столкнулся с проблемами при монтировании мобильника (Siemens
>>ME45 на комовском шнурке) с помощью automount.
>>
>>   Монтирование через mount от root - без проблем (от
>>пользователя, когда загружен модуль fuse - тоже), но при
>>размонтировании:
> 
> а смысл?
> 
> 
>>$ sudo umount /mnt/mobil/
>>Password:
>>[solo на solo solo]$ /usr/bin/fusermount: entry for /mnt/mobil not
>>found in /etc/mtab
>>
>>Симптом: зависание консоли при обращении к точки монтирования
>>"/mnt/auto/mobil". Разбор полётов показал что появляется второй
>>процесс automount.
> 
> пусть себе живет с Богом, зачем убивать невинные процессы, грешно :-)))
> 
> 
>>  (CD, USB-диск и флоп - монтируются нормально.)
>>
>>Как настроено и что видно (лог с 12 консоли - прилагаю):
>>
>>$ cat /etc/auto.tab
>>...
>>mobil -fstype=siefs,nohide,umask=007,gid=510,noexec,nosuid,sync
>>
>>:/dev/ttyS2
>>
>>   Параметры после "-fstype=siefs" - картину не меняют (проверял).
> 
> Нет вот тут ошибочка, батенька:-)
> Если убрать ",umask=007,gid=510" то у меня все РАБОТАЕТ, я тоже проверял.

   Вот такая строка НЕ РАБОТАЕТ (её и проверял):

mobil  -fstype=siefs   :/dev/ttyS2

   Может существенно, что у меня /dev/ttyS2?

> 
> У меня строка в /etc/auto.tab выглядит так:
> "mobile  -fstype=siefs,nohide,noexec,nosuid,sync  :/dev/ttyS0", ну а если Вы 
> все таки решили использовать autofs, то из /etc/fstab все касающееся autofs 
> нужно стереть, уж не обезсудьте ;-)

   Знаю. Обычно, достаточно добавить noauto. (Что, впрочем, в 
данном случаи я забыл сделать... :-()

> 

...

>>
>>   Отмонтировать устройство можно только прибив проблемные процессы:
> 
> а зачем его отмонтировать? я просто виртуальный терминал вырубаю и все:-))

   Проверяю сейчас следующее:

/etc/auto.tab:

mobil -fstype=siefs,nohide,umask=007,gid=510,noexec,nosuid,sync 
:/dev/ttyS2

/etc/fstab:

/dev/ttyS2 /mnt/mobil siefs 
gid=510,umask=007,nohide,noexec,nosuid,sync,noauto 0 0

   Устройстово неподмонтировано.

$ sudo service autfs restart

$ ls -l /mnt/mobil/auto/

   (Где /mnt/mobil/auto/ -> mnt/auto/mobil/) повесает.

   Убиваю терминала.

$ sudo service autofs stop

$ ps -ax|fgrep auto
12620 ?        S      0:00 /usr/sbin/automount --timeout 2 
/mnt/auto file /etc/a
uto.tab
12651 ?        S      0:00 ls --color=auto -l /mnt/mobil/auto/
12652 ?        S      0:00 /usr/sbin/automount --timeout 2 
/mnt/auto file /etc/auto.tab
12772 pts/1    S      0:00 grep -F auto
[solo на solo solo]$ sudo umount /proc/fs/fuse/dev
Cannot create link /etc/mtab~
Perhaps there is a stale lock file?

$ mount
/dev/hda3 on / type reiserfs (rw,noatime)
proc on /proc type proc (rw,gid=19)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/hda1 on /boot type reiserfs (rw,noatime,notail)
/dev/lg1/1 on /home type reiserfs (rw,nosuid,noatime)
/dev/lg1/3 on /usr type reiserfs (rw,noatime)
/dev/lg1/4 on /var type reiserfs (rw,noatime)
/dev/lg1/2 on /var/cache/apt type reiserfs (rw,noexec,nodev)
usbdevfs on /proc/bus/usb type usbdevfs (rw)
automount(pid12620) on /mnt/auto type autofs 
(rw,fd=5,pgrp=12620,minproto=2,maxp
roto=4)
/proc/fs/fuse/dev on /mnt/auto/mobil type fuse (rw,nosuid,nodev)
$ ls /etc/mtab*
/etc/mtab  /etc/mtab~

   И самое паршивое:

$ cat /proc/mounts
rootfs / rootfs rw 0 0
/dev/root / reiserfs rw,noatime 0 0
/proc /proc proc rw 0 0
devpts /dev/pts devpts rw 0 0
/dev/hda1 /boot reiserfs rw,noatime 0 0
/dev/lg1/1 /home reiserfs rw,noatime,nosuid 0 0
/dev/lg1/3 /usr reiserfs rw,noatime 0 0
/dev/lg1/4 /var reiserfs rw,noatime 0 0
/dev/lg1/2 /var/cache/apt reiserfs rw,nodev,noexec 0 0
usbdevfs /proc/bus/usb usbdevfs rw 0 0
automount(pid12620) /mnt/auto autofs rw 0 0

   Вижу что вывод mount отличается от /proc/mounts по составу ФС 
  и осталось подмонтированой система automount...

   Проверяю, и виже что ls продолжает висеть (при _убитом_ 
терменале) а automount`а - нет:

$ ps -ax|fgrep auto
12651 ?        S      0:00 ls --color=auto -l /mnt/mobil/auto/
12851 ?        S      0:00 /usr/bin/fusermount -u /mnt/auto/mobil
13071 pts/1    S      0:00 grep -F auto

   Принимаю решение увить 12651 руками:

$ kill 12651
$ ps -ax|fgrep auto
12651 ?        S      0:00 ls --color=auto -l /mnt/mobil/auto/
12851 ?        S      0:00 /usr/bin/fusermount -u /mnt/auto/mobil
13917 pts/1    S      0:00 grep -F auto
$ kill -9 12651
$ ps -ax|fgrep auto
12851 ?        S      0:00 /usr/bin/fusermount -u /mnt/auto/mobil
13931 pts/1    S      0:00 grep -F auto

   Вроде убил...

   /usr/bin/fusermount убивается только kill -9 от root

   После всех этих опираций всё равно кто-то держит:

$ cat /proc/mounts
...
automount(pid12620) /mnt/auto autofs rw 0 0

   Причём:
$ sudo lsmod
Module                  Size  Used by    Not tainted
parport_serial          4392   0  (autoclean) (unused)
parport_pc             25640   2  (autoclean) [parport_serial]
lp                      6496   0  (autoclean)
parport                23072   2  (autoclean) [parport_pc lp]
autofs4                 8244   1  (autoclean)
snd-pcm-oss            37668   0
snd-mixer-oss          11152   0  [snd-pcm-oss]
snd-es1938             11084   0
snd-pcm                56800   0  [snd-pcm-oss snd-es1938]
snd-opl3-lib            5476   0  [snd-es1938]
snd-hwdep               4192   0  [snd-opl3-lib]
snd-timer              13444   0  [snd-pcm snd-opl3-lib]
snd-mpu401-uart         2912   0  [snd-es1938]
snd-rawmidi            12320   0  [snd-mpu401-uart]
snd-seq-device          3744   0  [snd-opl3-lib snd-rawmidi]
snd                    30660   0  [snd-pcm-oss snd-mixer-oss 
snd-es1938 snd-pcm snd-opl3-lib snd-hwdep snd-timer 
snd-mpu401-uart snd-rawmidi snd-seq-device]
soundcore               3684   6  [snd]
gameport                1660   0  [snd-es1938]
snd-page-alloc          5868   0  [snd-es1938 snd-pcm]
eepro100               18708   1  (autoclean)
mii                     2576   0  (autoclean) [eepro100]
usb-uhci               21708   0  (unused)
usbcore                58464   1  [usb-uhci]
fuse                   13176   0
agpgart                43108   0  (unused)
rtc                     6172   0  (autoclean)
loop                    8408   0  (autoclean)
lvm-mod                60160   9
reiserfs              177872   6
$ sudo rmmod autofs4
autofs4: Device or resource busy

   Придётся перегрухаться: дисковая подсистема вешь серьёзная. И 
когда они работает не предсказуемо...

> а потом правильно делаю запись в /etc/auto.tab, стираю хлам из /etc/fstab, 
> перезапускаю сервис autofs и снова набираю "cd /mnt/auto/mobile" 8-)
> 
> 

...

>>
>>   При этом процессы automount уже убиты, но избавится от
>>монтирования /mnt/auto удаётся только перезагрузкой.
> 
> а вот это зря :-))

   Знаю. :-( Но как по другому подчистить вывод mount - неумею 
(все что знал - сделал). :-((

   Буду рад, если научите.

> 
> 
>>$ cat /etc/fstab
>>/dev/hda3       /               reiserfs        async,noatime
>>                 1 1
>>proc            /proc           proc            gid=19
>>                 0 0
>>devpts          /dev/pts        devpts          gid=5,mode=620
>>                 0 0
>>...
>>/dev/ttyS2      /mnt/mobil      siefs
>>user,gid=510,umask=007,noexec,nosuid,sync       0 0
> 
> выкинь запись из fstab в помойку -- она никому не нужна (тем более такая:)
> достаточно написать все правильно в /etc/auto.tab.
> 
> 
>>   Что я не так настроил?
> 
> см. выше
> 
> 
>>PS: Система - вчерашний Сизиф.
> 
> Это хорошо, а также то что Вы так хорошо умеете задавать вопросы.
> Не пропустите, сегодня в Инкаминг отправилась SieFS-0.2-alt3 !

   До Сизифа пока не добралась... Жду.

PS: Пока вернулся к варианту /etc/fstab

-- 

С уважением. Алексей.




Подробная информация о списке рассылки Sisyphus