Автор Тема: монтирование сетевой папки  (Прочитано 11141 раз)

Оффлайн bas-id

  • Участник
  • *
  • Сообщений: 61
Есть учительский комп и несколько ученических. Хочется такую возможность - на компе учителя создаются папку для каждого ученич. компа. А у учеников эта папка должна автоматически смонтироваться (сама, без участия ученика) и быть доступна так же, как и документы, рисунки...
Как бы это реализовать?
п.с. если будите отвечать, пожалуйста, разжуйте чтобы было понятно не линуксойду.

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: монтирование сетевой папки
« Ответ #1 : 03.12.2010 18:30:05 »
Вообще-то такая функциональность уже есть, только не на компе учителя, а на сервере.

Оффлайн bas-id

  • Участник
  • *
  • Сообщений: 61
Re: монтирование сетевой папки
« Ответ #2 : 03.12.2010 18:47:50 »
Вообще-то такая функциональность уже есть, только не на компе учителя, а на сервере.
Речь идет о случае когда на всех компах Simply Linux и учительских отличается только тем, что там сидит учитель :)

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: монтирование сетевой папки
« Ответ #3 : 03.12.2010 19:08:09 »
Тогда это надо руками делать. Смотрите в сторону pam_mount

Оффлайн bas-id

  • Участник
  • *
  • Сообщений: 61
Re: монтирование сетевой папки
« Ответ #4 : 03.12.2010 19:16:09 »
Тогда это надо руками делать. Смотрите в сторону pam_mount
Сложно куда-то смотреть когда  в linux тольком ни разу не работал ... Я и прошу, кто может разъяснить что и как, не как принято у заядлых линуксойдов сразу отправлять курить маны.

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 6 046
Re: монтирование сетевой папки
« Ответ #5 : 03.12.2010 19:21:40 »
Вообще-то такая функциональность уже есть, только не на компе учителя, а на сервере.
Речь идет о случае когда на всех компах Simply Linux и учительских отличается только тем, что там сидит учитель :)

А если просто в лоб монтировать
mount
и все ?
от рута
>mcedit /etc/rc.d/rc.local
туда вписать
mount.cifs //192.168.1.1/NET /mnt/smb -o user=user,pass=user,codepage=cp866,iocharset=utf8,file_mode=0666

где 192.168.1.1 - это ip учительского компа, а NET - это название шары...
user и user это логин и пароль
0666 Это только для чтения...
Для записи 0777

Оффлайн bormant

  • Участник
  • *
  • Сообщений: 358
Re: монтирование сетевой папки
« Ответ #6 : 06.12.2010 16:31:21 »
YYY,
незачем тут самбу советовать, ибо написано недвусмысленно
на всех компах Simply Linux
На учительском добавить в /etc/exports путь к общей папке, например, с доступом только на чтение
/home/pub (ro)

На ученических добавить в /etc/fstab (например, имя учительского компьютера master, монтировать в /home/pub, который нужно предварительно создать)
master:/home/pub /home/pub nfs _netdev 0 0

Подробнее: man exports, man nfs, man exportfs

Рецепт легко модифицируется для случая своя папка "для каждого ученического компа". Если же всё-таки нужно по папке на каждого ученика, то, как уже упоминали, смотреть нужно в сторону pam_mount.
« Последнее редактирование: 16.12.2010 16:27:44 от bormant »

Оффлайн orcdunaev

  • Участник
  • *
  • Сообщений: 92
Re: монтирование сетевой папки
« Ответ #7 : 07.12.2010 13:23:58 »
Цитировать
где 192.168.1.1 - это ip учительского компа, а NET - это название шары...
user и user это логин и пароль
0666 Это только для чтения...
Для записи 0777

Скажите, а есть разница, что передавать в параметрах username и login, если общая папка на самбе и доступ share, т.е. заходят все, кто хочет?

Оффлайн rxxrus

  • Участник
  • *
  • Сообщений: 359
  • AltLinux p?/Ubuntu 15.04
Re: монтирование сетевой папки
« Ответ #8 : 07.12.2010 16:26:11 »
Скажите, а есть разница, что передавать в параметрах username и login, если общая папка на самбе и доступ share, т.е. заходят все, кто хочет?
В принципе оставьте все как есть ведь  монтироваться будет определенная папка. С simply увидеть разшареные папки бел лишних телодвижений нельзя! 

Оффлайн bas-id

  • Участник
  • *
  • Сообщений: 61
Re: монтирование сетевой папки
« Ответ #9 : 10.12.2010 14:34:39 »
YYY,
незачем тут самбу советовать, ибо написано недвусмысленно
на всех компах Simply Linux
На учительском добавить в /etc/exports путь к общей папке, например, с доступом только на чтение
/home/pub (ro)

На ученических добавить в /etc/fstab (например, имя учительского компьютера master, монтировать в /home/pub, который нужно предварительно создать)
master:/pub /home/pub nfs _netdev 0 0

Подробнее: man exports, man nfs, man exportfs

Рецепт легко модифицируется для случая своя папка "для каждого ученического компа". Если же всё-таки нужно по папке на каждого ученика, то, как уже упоминали, смотреть нужно в сторону pam_mount.

На всех компах пользователь user.
На учительском (comp01) создал папку /home/user/school, в /etc/exports добавил строку /home/user/school (ro).
На ученическом (comp02) создал папку  /home/user/school, в /etc/fstab добавил строку
copm01:/school /home/user/school nfs _netdev 0 0

Ничего не получилось...

Оффлайн bormant

  • Участник
  • *
  • Сообщений: 358
Re: монтирование сетевой папки
« Ответ #10 : 12.12.2010 12:32:13 »
bas-id,
ок, давайте разбираться. Если теперь на ученическом выполнить от суперпользователя (root)

# mount /home/user/school
# ls /home/user/school

каталог подключается, содержимое выводится?

В FAQ рекомендуют добавлять "nolock,_netdev"

Особенности ALTLinux описаны в http://www.altlinux.org/NFS
« Последнее редактирование: 12.12.2010 12:56:16 от bormant »

Оффлайн bas-id

  • Участник
  • *
  • Сообщений: 61
Re: монтирование сетевой папки
« Ответ #11 : 15.12.2010 10:50:42 »
bas-id,
ок, давайте разбираться. Если теперь на ученическом выполнить от суперпользователя (root)

# mount /home/user/school
# ls /home/user/school

каталог подключается, содержимое выводится?

В FAQ рекомендуют добавлять "nolock,_netdev"

Особенности ALTLinux описаны в http://www.altlinux.org/NFS


[root@comp02 ~]# mount /home/user/school
[mntent]: предупреждение: no final newline at the end of /etc/fstab
mount.nfs: rpc.statd is not running but is required for remote locking.
mount.nfs: Either use '-o nolock' to keep locks local, or start statd.

По имени компы не пингуются, по  ip пингуются, поэтому поменял имя на ip

ftab:
proc      /proc         proc   nosuid,noexec,gid=proc      0 0
devpts      /dev/pts      devpts   nosuid,noexec,gid=tty,mode=620   0 0
tmpfs      /tmp         tmpfs   nosuid            0 0
UUID=100a4226-2f2b-40d2-b6b0-e31b85349fd8   /   ext3   relatime   1   1
UUID=03933b2a-cd4a-497a-9e67-4a0bacc1fec9   /home   ext3   nosuid,relatime   1   2
UUID=7453eaf7-59c3-43f3-93c7-8c8b8b074cfb   swap   swap   defaults   0   0
UUID=54B499A0B4998560   /mnt/hda1   ntfs-3g locale=ru_RU.UTF-8,dmask=0,fmask=0111 0 0
/dev/cdrom   /media/cdrom   udf,iso9660   ro,noauto,user,utf8   0 0
10.32.59.231:/school /home/user/school nfs _netdev 0 0

Оффлайн bormant

  • Участник
  • *
  • Сообщений: 358
Re: монтирование сетевой папки
« Ответ #12 : 15.12.2010 11:23:39 »
[root@comp02 ~]# mount /home/user/school
[mntent]: предупреждение: no final newline at the end of /etc/fstab
mount.nfs: rpc.statd is not running but is required for remote locking.
mount.nfs: Either use '-o nolock' to keep locks local, or start statd.

/etc/fstab:
...
10.32.59.231:/school /home/user/school nfs _netdev 0 0
По порядку.

Во-первых:
[mntent]: предупреждение: no final newline at the end of /etc/fstab

[mntent]: предупреждение: отсутствует завершающий перевод строки в конце /etc/fstab

Суть в том, что после добавленной  строки в /etc/fstab не нажали Enter, Ваша последняя строка не завершается символом конца строки. Это в данном случае не ошибка, но в общем случае может приводить к ошибкам в виде игнорирования такой строки.
Избавиться от подобного предупреждения просто: откройте /etc/fstab для редактирования от имени суперпользователя (root), поставьте курсор в конец последней строки, нажмите Enter, тем самым добавив новую пустую строку перед концом файла, сохраните файл.

Во-вторых:
mount.nfs: rpc.statd is not running but is required for remote locking.
mount.nfs: Either use '-o nolock' to keep locks local, or start statd.

mount.nfs: rpc.statd не запущен, но необходим для удалённых блокировок.
mount.nfs: Либо используйте '-o nolock' для хранения блокировок локально, либо запустите statd.

Вам указана суть проблемы и предложены альтернативные варианты решения: либо явно указать, что удалённые блокировки не используются, либо запустить соответствующий сервис.

Вариант 1: добавить параметр nolock. Параметры монтирования указываются в 4-й колонке /etc/fstab, поэтому достаточно привести строку к следующему виду:
10.32.59.231:/home/user/school /home/user/school nfs nolock,_netdev 0 0

Вариант 2: запустить сервис statd.
Выполнив от имени суперпользователя (root)
# chkconfig --list rpc.statd
error reading information on service rpc.statd: No such file or directory
убеждаемся, что такой сервис не сконфигурирован

# which rpc.statd
/sbin/rpc.statd
убеждаемся, что исполняемый файл в установке присутствует.

Поискав упоминания rpc.statd в каталоге сервисов:
# grep rpc.statd -R /etc/rc.d/init.d/
/etc/rc.d/init.d/nfslock:# processname: rpc.statd
видим, что сервис называется nfslock

Запускаем сервис:
# service nfslock start
Starting rpc.statd service:                                             [ DONE ]

Смотрим настройки запуска сервиса и выставляем автозапуск сервиса на нужных уровнях, например 3 и 5:
# chkconfig --list nfslock
nfslock         0:off   1:off   2:off   3:off   4:off   5:off   6:off
# chkconfig --level 35 nfslock on
# chkconfig --list nfslock
nfslock         0:off   1:off   2:off   3:on    4:off   5:on    6:off

Проверяем, достигли мы желаемой цели:
# mount /home/user/school

Я -- да. А Вы?

ps.
В итоге получили как один из вариантов решение из FAQ (Frequently Asked Questions - Часто задаваемые вопросы - ЧаВО). Но, если бы прислушались к написанному в FAQ -- получили бы решение намного раньше.
« Последнее редактирование: 16.12.2010 16:28:45 от bormant »

Оффлайн bas-id

  • Участник
  • *
  • Сообщений: 61
Re: монтирование сетевой папки
« Ответ #13 : 15.12.2010 15:46:11 »
/etc/ftab
- - -
proc      /proc         proc   nosuid,noexec,gid=proc      0 0
devpts      /dev/pts      devpts   nosuid,noexec,gid=tty,mode=620   0 0
tmpfs      /tmp         tmpfs   nosuid            0 0
UUID=100a4226-2f2b-40d2-b6b0-e31b85349fd8   /   ext3   relatime   1   1
UUID=03933b2a-cd4a-497a-9e67-4a0bacc1fec9   /home   ext3   nosuid,relatime   1   2
UUID=7453eaf7-59c3-43f3-93c7-8c8b8b074cfb   swap   swap   defaults   0   0
UUID=54B499A0B4998560   /mnt/hda1   ntfs-3g locale=ru_RU.UTF-8,dmask=0,fmask=0111 0 0
/dev/cdrom   /media/cdrom   udf,iso9660   ro,noauto,user,utf8   0 0
10.32.59.231:/school /home/user/school nfs nolock,_netdev 0 0

- - -

[root@comp02 ~]# mount /home/user/school
//тут комп о чем-то некторое время думает...
mount.nfs: mount system call failed


[root@comp02 ~]# ping 10.32.59.231
PING 10.32.59.231 (10.32.59.231) 56(84) bytes of data.
64 bytes from 10.32.59.231: icmp_seq=1 ttl=64 time=0.261 ms
64 bytes from 10.32.59.231: icmp_seq=2 ttl=64 time=0.236 ms
64 bytes from 10.32.59.231: icmp_seq=3 ttl=64 time=0.249 ms
64 bytes from 10.32.59.231: icmp_seq=4 ttl=64 time=0.269 ms
64 bytes from 10.32.59.231: icmp_seq=5 ttl=64 time=0.245 ms

Может не верно файл /etc/export на 10.32.59.231? Его содержание:
# see also /etc/sysconfig/portmap (control portmap)
/home/user/school(ro)







Оффлайн bormant

  • Участник
  • *
  • Сообщений: 358
Re: монтирование сетевой папки
« Ответ #14 : 15.12.2010 15:58:47 »
# see also /etc/sysconfig/portmap (control portmap)
/home/user/school(ro)
Пропущен пробел после имени ресурса и перед скобкой:
/home/user/school (ro)