Автор Тема: Монтирование сетевого ресурса с помощью fstab  (Прочитано 28221 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Vena

  • Собеседник
  • ****
  • Сообщений: 375
    • Просмотр профиля
Монтирование сетевого ресурса с помощью fstab
« : Воскресенье, 20 Ноября, 2011, 05:32:47 »
Прописал в fstab такую строку:
//192.168.1.1/share     /mnt/share        cifs    username=user,password=pass,ro,_netdev,iocharsed=utf8   0       0
Загружаюсь, смотрю df -h - не вижу примонтированного сетевого ресурса. Выполняю
sudo mount -aресурс появляется. Вывод такой, рановато срабатывает fstab, и сетевой ресурс автоматически не монтируется.
Как в fstab это регулируется, или надо скрипт с отдельной задачей выполнять после загрузки основной системы ?
//192.168.1.1/share     /mnt/share        cifs    username=user,password=pass,ro,_netdev,iocharsed=utf8   0       0

PS
Debian 6.0

vovka

  • Global Moderator
  • Про
  • *****
  • Сообщений: 787
    • Просмотр профиля
    • www.nixzeya.ru.net
Re: Монтирование сетевого ресурса с помощью fstab
« Ответ #1 : Воскресенье, 20 Ноября, 2011, 08:27:23 »
Перед проверкой я доустановил пакет smbfs с зависимостями (samba-common, cifs-utils, samba-common-bin) хотя может и без него бы работало.
Цитировать
Вывод такой, рановато срабатывает fstab, и сетевой ресурс автоматически не монтируется.
Не думаю что проблема во времени. Смотрим dmesg:
[   14.775764] r8169 0000:04:00.0: eth0: link up
[   14.775969] ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   21.678492] Registering the dns_resolver key type

[   21.678606] CIFS: Unknown mount option iocharsed
[   21.733323]  CIFS VFS: cifs_mount failed w/return code = -6
[   21.733447] CIFS: Unknown mount option iocharsed
[   21.748903]  CIFS VFS: cifs_mount failed w/return code = -6
Интерфейс начинает работать на 14-ой секунде, cifs монтируется на 21-ой. Оп-па! Что за "iocharsed" - такого параметра нету! Есть iocharset. Параметр _netdev не влияет на cifs. Опции можно глянуть в man mount.cifs . После исправления ошибок, снова запускаем и оказывается что всё работает.
« Последнее редактирование: Воскресенье, 20 Ноября, 2011, 08:51:17 от vovka »
*nix - свобода мысли, свобода творчества!

Vena

  • Собеседник
  • ****
  • Сообщений: 375
    • Просмотр профиля
Re: Монтирование сетевого ресурса с помощью fstab
« Ответ #2 : Воскресенье, 20 Ноября, 2011, 15:00:06 »
да, опечатка. У меня iocharset=utf8
всё равно автоматически не монтируется :(

vovka

  • Global Moderator
  • Про
  • *****
  • Сообщений: 787
    • Просмотр профиля
    • www.nixzeya.ru.net
Re: Монтирование сетевого ресурса с помощью fstab
« Ответ #3 : Воскресенье, 20 Ноября, 2011, 15:33:20 »
всё равно автоматически не монтируется :(

У меня, на реальной машине с Debian 6.0 монтируется без проблем. Правда в fstab я не использую параметр _netdev, и вместо ro использую rw.
*nix - свобода мысли, свобода творчества!

Vena

  • Собеседник
  • ****
  • Сообщений: 375
    • Просмотр профиля
Re: Монтирование сетевого ресурса с помощью fstab
« Ответ #4 : Воскресенье, 20 Ноября, 2011, 16:19:41 »
На реальной машине с Debian 6.0 монтируется без проблем.
чудеса :)
Ладно, разберусь мобыть. Сейчас сервер что-то заглючил, надо его восстановить для начала :)

Vena

  • Собеседник
  • ****
  • Сообщений: 375
    • Просмотр профиля
Re: Монтирование сетевого ресурса с помощью fstab
« Ответ #5 : Воскресенье, 20 Ноября, 2011, 17:59:20 »
ничего не помогает пока. Автомонтирование не срабатывает, доустановка samba-common, cifs-utils, samba-common-bin ситуёвину не исправила.
Интересно, почему команда
sudo mount -a
всё выполняет, значит параметры в fstab правильные?

vovka

  • Global Moderator
  • Про
  • *****
  • Сообщений: 787
    • Просмотр профиля
    • www.nixzeya.ru.net
Re: Монтирование сетевого ресурса с помощью fstab
« Ответ #6 : Понедельник, 21 Ноября, 2011, 04:16:36 »
    Что пишет dmesg в своё оправдание? Стартует ли интерфейс раньше процесса монтирования? Используется ли Network-manager для конфигурирования сети?
*nix - свобода мысли, свобода творчества!

Vena

  • Собеседник
  • ****
  • Сообщений: 375
    • Просмотр профиля
Re: Монтирование сетевого ресурса с помощью fstab
« Ответ #7 : Понедельник, 21 Ноября, 2011, 14:09:58 »
в dmesg вообще не нашел строк , содержащих CIFS
манагер не учавствует, иксы не стартую, это сервер.
« Последнее редактирование: Понедельник, 21 Ноября, 2011, 14:13:22 от Vena »

vovka

  • Global Moderator
  • Про
  • *****
  • Сообщений: 787
    • Просмотр профиля
    • www.nixzeya.ru.net
Re: Монтирование сетевого ресурса с помощью fstab
« Ответ #8 : Понедельник, 21 Ноября, 2011, 16:41:51 »
Тогда сделаем так - убеждаемся, что строка в fstab обрабатывается при загрузке системы. Для этого параметр _netdev оставляем в строке параметров fstab:
//192.168.1.1/share     /mnt/share        cifs    username=user,password=pass,ro,_netdev,iocharset=utf8   0       0
Затем перезагружаем систему и смотрим dmesg. У меня строка обрабатывается, о чём говорят сообщения об ошибке. Попутно становится видно, что сетевой интерфейс начинает работать раньше:
...
[   14.531219] r8169 0000:04:00.0: eth0: link up
[   14.531423] ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   21.502912] Registering the dns_resolver key type
[   21.503034] CIFS: Unknown mount option _netdev
[   21.557231] CIFS: Unknown mount option _netdev
...

Проделайте это и сообщите результат - участок dmesg где отобажается и старт интерфейса и "маты"  на некорректную опцию.
*nix - свобода мысли, свобода творчества!

Vena

  • Собеседник
  • ****
  • Сообщений: 375
    • Просмотр профиля
Re: Монтирование сетевого ресурса с помощью fstab
« Ответ #9 : Понедельник, 21 Ноября, 2011, 17:00:08 »
[   21.406855] r8169: eth0: link up
[   23.798524] fuse init (API version 7.13)
[   32.332092] eth0: no IPv6 routers present
такая вот концовка dmesg. CIFS не обнаружено ;)

Vena

  • Собеседник
  • ****
  • Сообщений: 375
    • Просмотр профиля
Re: Монтирование сетевого ресурса с помощью fstab
« Ответ #10 : Понедельник, 21 Ноября, 2011, 17:05:40 »
после
sudo mount -aвот такое в dmesg
[  709.598707] Registering the dns_resolver key type
[  709.598773] Slow work thread pool: Starting up
[  709.599071] Slow work thread pool: Ready
[  709.599922] CIFS: Unknown mount option _netdev
сетевой ресурс появился

vovka

  • Global Moderator
  • Про
  • *****
  • Сообщений: 787
    • Просмотр профиля
    • www.nixzeya.ru.net
Re: Монтирование сетевого ресурса с помощью fstab
« Ответ #11 : Вторник, 22 Ноября, 2011, 04:37:58 »
Эти два лога говорят о том, что строка о cifs в fstab не обрабатывается! Иначе бы вышла ошибка в первом логе. По каким причинам - я не знаю. Попробуем разобраться:
когда машина стартует, сначала происходит переход в однопользовательский режим. Все сервисы этого режима описаны в /etc/rcS.d/ :
Цитировать
root@comp:~# ls -1 /etc/rcS.d/
README
S01mountkernfs.sh
S02udev
S03mountdevsubfs.sh
S04bootlogd
S05keyboard-setup
S06hdparm
S06hostname.sh
S06hwclockfirst.sh
S07checkroot.sh
S08hwclock.sh
S08ifupdown-clean
S08module-init-tools
S08mtab.sh
S09checkfs.sh
S10ifupdown    # поднимаем интерфейсы
S10mountall.sh # монтируем файловые системы, в том числе и cifs
S11mountall-bootclean.sh
S12mountoverflowtmp
S13networking
S13procps
S13udev-mtab
S13urandom
S13x11-common
S14portmap
S15nfs-common
S16mountnfs.sh
S17mountnfs-bootclean.sh
S18kbd
S19console-setup
S20alsa-utils
S20bootmisc.sh
S20fuse
S21stop-bootlogd-single
Здесь поднятие интерфейсов совпадает по времени с монтированием. У меня всё работает, значит, теоретически, какой-то временнОй разнос всё-таки есть.
Когда все скрипты из /etc/rcS.d/  выполнены, стартуют сервисы из 2-го многопользовательского режима: /etc/rc2.d/
Кстати, скрипты инициализации требуют пустой строки в конце fstab. Есть такая?
*nix - свобода мысли, свобода творчества!

Vena

  • Собеседник
  • ****
  • Сообщений: 375
    • Просмотр профиля
Re: Монтирование сетевого ресурса с помощью fstab
« Ответ #12 : Вторник, 22 Ноября, 2011, 05:23:00 »
Кстати, скрипты инициализации требуют пустой строки в конце fstab. Есть такая?
Есть, даже две :)
Цитировать
root@comp:~# ls -1 /etc/rcS.d/
total 4
-rw-r--r-- 1 root root 447 Jan  1  2011 README
lrwxrwxrwx 1 root root  24 Aug 23 10:15 S01mountkernfs.sh -> ../init.d/mountkernfs.sh
lrwxrwxrwx 1 root root  14 Aug 23 10:15 S02udev -> ../init.d/udev
lrwxrwxrwx 1 root root  26 Aug 23 10:15 S03mountdevsubfs.sh -> ../init.d/mountdevsubfs.sh
lrwxrwxrwx 1 root root  18 Aug 23 10:15 S04bootlogd -> ../init.d/bootlogd
lrwxrwxrwx 1 root root  19 Dec  4  2010 S05keymap.sh -> ../init.d/keymap.sh
lrwxrwxrwx 1 root root  24 Sep 16 14:02 S06keyboard-setup -> ../init.d/keyboard-setup
lrwxrwxrwx 1 root root  16 Sep 16 14:04 S07hdparm -> ../init.d/hdparm
lrwxrwxrwx 1 root root  21 Sep 16 14:02 S07hostname.sh -> ../init.d/hostname.sh
lrwxrwxrwx 1 root root  25 Sep 16 14:02 S07hwclockfirst.sh -> ../init.d/hwclockfirst.sh
lrwxrwxrwx 1 root root  22 Sep 16 14:02 S08checkroot.sh -> ../init.d/checkroot.sh
lrwxrwxrwx 1 root root  20 Sep 16 14:02 S09hwclock.sh -> ../init.d/hwclock.sh
lrwxrwxrwx 1 root root  24 Sep 16 14:02 S09ifupdown-clean -> ../init.d/ifupdown-clean
lrwxrwxrwx 1 root root  27 Sep 16 14:02 S09module-init-tools -> ../init.d/module-init-tools
lrwxrwxrwx 1 root root  17 Sep 16 14:02 S09mtab.sh -> ../init.d/mtab.sh
lrwxrwxrwx 1 root root  20 Sep 16 14:02 S10checkfs.sh -> ../init.d/checkfs.sh
lrwxrwxrwx 1 root root  18 Sep 16 14:02 S11ifupdown -> ../init.d/ifupdown
lrwxrwxrwx 1 root root  21 Sep 16 14:02 S11mountall.sh -> ../init.d/mountall.sh
lrwxrwxrwx 1 root root  31 Sep 16 14:02 S12mountall-bootclean.sh -> ../init.d/mountall-bootclean.sh
lrwxrwxrwx 1 root root  26 Sep 16 14:02 S13mountoverflowtmp -> ../init.d/mountoverflowtmp
lrwxrwxrwx 1 root root  20 Sep 16 14:02 S14networking -> ../init.d/networking
lrwxrwxrwx 1 root root  16 Sep 16 14:02 S14procps -> ../init.d/procps
lrwxrwxrwx 1 root root  19 Sep 16 14:02 S14udev-mtab -> ../init.d/udev-mtab
lrwxrwxrwx 1 root root  17 Sep 16 14:02 S14urandom -> ../init.d/urandom
lrwxrwxrwx 1 root root  20 Sep 16 14:02 S14x11-common -> ../init.d/x11-common
lrwxrwxrwx 1 root root  21 Sep 16 14:02 S15mountnfs.sh -> ../init.d/mountnfs.sh
lrwxrwxrwx 1 root root  31 Sep 16 14:02 S16mountnfs-bootclean.sh -> ../init.d/mountnfs-bootclean.sh
lrwxrwxrwx 1 root root  27 Sep 16 14:02 S17console-screen.sh -> ../init.d/console-screen.sh
lrwxrwxrwx 1 root root  23 Sep 16 14:02 S18console-setup -> ../init.d/console-setup
lrwxrwxrwx 1 root root  20 Sep 16 14:02 S19alsa-utils -> ../init.d/alsa-utils
lrwxrwxrwx 1 root root  21 Sep 16 14:02 S19bootmisc.sh -> ../init.d/bootmisc.sh
lrwxrwxrwx 1 root root  14 Sep 16 14:04 S19fuse -> ../init.d/fuse
lrwxrwxrwx 1 root root  24 Sep 16 14:02 S19screen-cleanup -> ../init.d/screen-cleanup
lrwxrwxrwx 1 root root  30 Sep 16 14:02 S20stop-bootlogd-single -> ../init.d/stop-bootlogd-single

vovka

  • Global Moderator
  • Про
  • *****
  • Сообщений: 787
    • Просмотр профиля
    • www.nixzeya.ru.net
Re: Монтирование сетевого ресурса с помощью fstab
« Ответ #13 : Вторник, 22 Ноября, 2011, 06:05:46 »
Проверил на виртуалке с DHCP - всё равно работает блин! Всё-равно монтируется!
Зайдём с другой стороны и рассмотрим монтирование как процесс после поднятия интерфейса, но не в процессе загрузки.
Цитировать
root@comp:~# ls -l /etc/network/if-up.d/
итого 12
-rwxr-xr-x 1 root root 4523 Янв  1  2011 mountnfs
-rwxr-xr-x 1 root root  849 Дек 21  2009 openssh-server

Скрипт mountnfs монтирует не только NFS-шары, но и smbfs и cifs при поднятии интерфейса. Имеется ли этот скрипт в этом каталоге?
*nix - свобода мысли, свобода творчества!

Vena

  • Собеседник
  • ****
  • Сообщений: 375
    • Просмотр профиля
Re: Монтирование сетевого ресурса с помощью fstab
« Ответ #14 : Вторник, 22 Ноября, 2011, 08:36:18 »
 ls -l /etc/network/if-up.d/
total 20
-rwxr-xr-x 1 root root 4523 Jan  1  2011 mountnfs
-rwxr-xr-x 1 root root 1089 Nov 23  2009 ntpdate
-rwxr-xr-x 1 root root  849 Dec 21  2009 openssh-server
-rwxr-xr-x 1 root root  641 Jul 27 16:55 samba