The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Настройка NFS сервера и клиента в Debian Lenny
1. Вводные данные

   * NFS Server: server.example.com, IP address: 192.168.0.100
   * NFS Client: client.example.com, IP address: 192.168.0.101

2 Установка NFS

На машине, выступающей в роли NFS сервера, выполняем:

   apt-get install nfs-kernel-server nfs-common portmap

На машине, выступающей в роли NFS клиента, выполняем:

   apt-get install nfs-common portmap

3. Экспортируем каталоги с сервера

Для того чтобы сделать доступными для клиентов каталоги /home и /var/nfs необходимо 
предпринять следующие нехитрые действия.

Когда клиент получает доступ к общему NFS ресурсу, то обычно это случается с
правами пользователя nobody.
Владельцем каталога /home nobody не является (и я не рекомендую это менять), а
поскольку мы хотим иметь
права на чтение и запись в /home, то нам необходимо указать NFS работать с
правами пользователя root
(если /home будет доступен только для чтения, то в этом нет необходимости). Каталог /var/nfs не 
существует, поэтому мы его создадим и назначим владельцем nobody и nogroup:

   mkdir /var/nfs
   chown nobody:nogroup /var/nfs

Теперь необходимо отредактировать файл /etc/exports, в котором указываются общие ресурсы. 
Мы укажем в нем /home и /var/nfs, при этом доступ к /home будет осуществляться
с правами пользователя root.


   # /etc/exports: the access control list for filesystems which may be exported
   #               to NFS clients.  See exports(5).
   #
   # Example for NFSv2 and NFSv3:
   # /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
   #
   # Example for NFSv4:
   # /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
   # /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
   #
   /home           192.168.0.101(rw,sync,no_root_squash,no_subtree_check)
   /var/nfs        192.168.0.101(rw,sync,no_subtree_check)

Для получения дополнительной информации, воспользуйтесь командой man 5 exports.

Для того, чтобы изменения вступили в силу, выполните команду:

   exportfs -a

4. Монтируем NFS ресурс на клиенте

 Создаем каталоги, куда мы будем монтировать шары NFS:

   mkdir -p /mnt/nfs/home
   mkdir -p /mnt/nfs/var/nfs

Монтируем:

   mount 192.168.0.100:/home /mnt/nfs/home
   mount 192.168.0.100:/var/nfs /mnt/nfs/var/nfs

Проверяем:

   client:~# df -h
   Filesystem            Size  Used Avail Use% Mounted on
   /dev/mapper/vg0-root   19G  676M   17G   4% /
   tmpfs                 253M     0  253M   0% /lib/init/rw
   udev                   10M   80K   10M   1% /dev
   tmpfs                 253M     0  253M   0% /dev/shm
   /dev/sda1             471M   20M  427M   5% /boot
   192.168.0.100:/home    29G  684M   27G   3% /mnt/nfs/home
   192.168.0.100:/var/nfs 29G  684M   27G   3% /mnt/nfs/var/nfs

И:

   client:~# mount
   /dev/mapper/vg0-root on / type ext3 (rw,errors=remount-ro)
   tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
   proc on /proc type proc (rw,noexec,nosuid,nodev)
   sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
   udev on /dev type tmpfs (rw,mode=0755)
   tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
   devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)  /dev/sda1 on /boot type ext3 (rw)
   192.168.0.100:/home on /mnt/nfs/home type nfs (rw,addr=192.168.0.100)
   192.168.0.100:/var/nfs on /mnt/nfs/var/nfs type nfs (rw,addr=192.168.0.100)

5. Проверка

На клиенте создадим несколько файлов:

   touch /mnt/nfs/home/test.txt
   touch /mnt/nfs/var/nfs/test.txt

Зайдем на сервер и полюбуемся на результат:

   server:~# ls -l /home/
   total 4
   drwxr-xr-x 2 administrator administrator 4096 2009-02-16 13:18 administrator
   -rw-r--r-- 1 root          root             0 2009-03-12 17:08 test.txt

   server:~# ls -l /var/nfs
   total 0
   -rw-r--r-- 1 nobody nogroup 0 2009-03-12 17:08 test.txt
   server:~#

Обратите внимание на то, что владельцы файлов различаются.

6 Монтирование ресурсов NFS во время загрузки

Вместо ручного монтирования шар, вы можете указать их в файле /etc/fstab для автоматического 
монтирования во время начальной загрузки.

   vi /etc/fstab
   [...]
   192.168.0.100:/home  /mnt/nfs/home   nfs      rw,sync,hard,intr  0     0
   192.168.0.100:/var/nfs  /mnt/nfs/var/nfs   nfs    

Вместо опций rw,sync,hard,intr вы можете использовать что-то другое, для получения дополнительной 
информации, обратитесь к man nfs.

Для проверки правильности монтирования перезагрузите систему. После этого в
очередной раз проверим результат:

  df -h
 
Ключи: nfs, linux, debian
Раздел:    Корень / Администратору / Система / Диски и файлы / Файловые системы

Обсуждение [ Линейный режим | Показать все | RSS ]
  • 1.1, metallic (?), 14:35, 06/05/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Из-за того, что в нфс не предусмотрена какая-либо идентификация пользователей, кроме как по IP-адресу, эта ФС не очень бузопасна. Я эту проблему решил с помощью openvp, монтирую фс по vpn-каналу, очень удобно, авторизация по ключам, канал при рестарте поднимается автоматом и монтируется фс. Может не очень красиво, зато безопасно и вроде бы надежно.
     
  • 1.2, Ivan (??), 14:49, 06/05/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    В NFSv4 эта проблема решена. Может быть, кто-нить напишет мануал для NFSv4?
     
     
  • 2.3, vitek (??), 18:25, 06/05/2009 [^] [^^] [^^^] [ответить]  
  • +/
    https://help.ubuntu.com/community/NFSv4Howto
    http://opennet.ru/openforum/vsluhforumID1/80288.html
     

  • 1.4, pavlinux (ok), 21:11, 06/05/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Всё это чудненько, а кто нить прикрутил CacheFiles к NFS или CIFS
     
  • 1.5, Руслан (?), 22:27, 06/05/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Есть ли поддержка корзины, как это сделано в samba?
     
     
  • 2.9, pavlinux (ok), 02:44, 07/05/2009 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Есть !!!

    mkdir /tmp/Корзина
    cp -f Чеёй-надо.mp3 /tmp/Корзина


     
     
  • 3.12, Руслан (?), 00:59, 08/05/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Ljabuf lthpjr.
    Мои юзеры - хлебом не корми, зарплатой не мани - что-нибудь удалят. А следить за ними, или, тем более, заниматься резервным копированием всякого на 90% бесполезного мусора, меня не сподвигнуть.
    В smb.conf я просто включил правила переноса удаляемых файлов во вне шары.
     
     
  • 4.13, Налсур (?), 03:13, 08/05/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Я бы молился на таких пользователей, ибо есть бекапы.
    Мои же наоборот все тащат в шару.
     
  • 4.15, Warhead Wardick (?), 17:52, 08/05/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Мои юзеры - хлебом не корми, зарплатой не мани - что-нибудь удалят.

    Просто удивительно как некоторые своего счастья не понимают! :)

     
  • 4.16, GR (??), 17:57, 08/05/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >В smb.conf я просто включил правила переноса удаляемых файлов во вне шары.

    Молодец. А теперь подумай и ответь себе на вопрос - ну и какую проблему ты этим решил? :) Ну да скоро дойдет ...

     
  • 4.17, Linus Torvalds (?), 17:59, 08/05/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Те. ты создал себе проблему для того чтобы победить несуществующую проблему? Малаца :)
     

  • 1.6, QuAzI (??), 23:39, 06/05/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Блин... вот мне нравится как в последнее время линух идёт по следам гламурщиков: дизайн в массы, а поддержку сети надо ставить через сеть, которой из коробки то и нету О_о Это не только NFS касается, но и всяких звонилок и прочих мелочей. Тобишь если у тебя нет выделенки, а есть например gprs-модем или обычный модем, прийдётся сосать лапу, пока не добежишь до интернет-кафе, не сольёшь нужные пакеты. Но зато у них графическая инсталяшка на CD
     
     
  • 2.8, pavlinux (ok), 02:41, 07/05/2009 [^] [^^] [^^^] [ответить]  
  • +/
    А вы купите DVD c Убунтой... и поддержу платную из любой точки галактики.

    Что жаба душит... тогда Ctrl+Alt+1, login/password,  и # man gcc

    Думается в висте, для вашего любимого GPRS модема, тоже нет дравов....



     
  • 2.11, Irish (??), 18:46, 07/05/2009 [^] [^^] [^^^] [ответить]  
  • +/
    При первых экспериментах с FreeBSD в 1995 году у меня тоже не было выделенки. Не говоря уже о gprs модеме. И Интернета не было. У меня была Supra на 9600 и FIDO. И ничего, обходился как-то.
     
  • 2.18, Crazy Alex (?), 19:03, 08/05/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Согласен полностью. Из инсталляционного диска норовят сделать невесть что. Да лучше оно ничего уметь не будет в плане десктопности, зато можно будет установить все мыслимые драйвера, в том числе всякие вайфаи и gprs, поднять клиента самбы/nfs и т.д. А если место остается - лучше разной диагностикой и рековери добить...
    когда уже дойдет, что ливсд - это одно, а инсталляха - другое?

    Впрочем, как же - маркетинг важнее...

    P.S. О DVD речь не идет, конечно - туда и юзерский софт влезет... Лишь бы ради него системный не выкинули.

     

  • 1.14, anonymous (??), 13:18, 08/05/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ну а если сервер нфс в даун уходит, что делать?
     
     
  • 2.19, pavlinux (ok), 17:47, 10/05/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Вы едите на машине по трассе  Москва-Хабаровск, а бензин вдруг кончился
    и денег нет, и вы не блондинка, - минет не умеете делать!?

    Вопросы:
    1. Зачем без денег в Хабаровск попёрлись?
    2. Почему раньше не подумали, о том, достаточно ли бензина?
    3. Почему не сменили ориентацию, чтоб автостопом до Хабаровска добраться?

    Про заначку в виде пояса Шахида, TT или Ф-1 не будем...


     

  • 1.21, Алекс (??), 12:27, 18/04/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    В NFSv4 эта проблема решена. Может быть, кто-нить напишет мануал для NFSv4?

    В приницпе мануал уже есть http://www.linuxspace.org/archives/2383

     
  • 1.22, Афанасий (?), 02:50, 27/10/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не работает!!!Расшариваю со своего внешнего ip. IP виден в интернете, на ftp люди заходят!
    Вот как я монтирую
    root@debian:/var# mount.nfs 82.144.120.99:/var/nfs /mnt/nfs -v
    mount.nfs: timeout set for Thu Oct 27 02:46:52 2016
    mount.nfs: trying text-based options 'vers=4,addr=82.144.120.99,clientaddr=82.144.120.99'
    mount.nfs: mount(2): Connection refused
    mount.nfs: trying text-based options 'vers=4,addr=82.144.120.99,clientaddr=82.144.120.99'
    mount.nfs: mount(2): Connection refused
    mount.nfs: trying text-based options 'vers=4,addr=82.144.120.99,clientaddr=82.144.120.99'
    mount.nfs: mount(2): Connection refused
    А ВОТ КАК ВЫГЛЯДИТ МОЙ ФАЙЛ EXPORTFS
      GNU nano 2.2.6                 Файл: /etc/exports                                        

    # /etc/exports: the access control list for filesystems which may be exported
    #               to NFS clients.  See exports(5).
    #
    # Example for NFSv2 and NFSv3:
    # /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
    #
    # Example for NFSv4:
    # /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
    # /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
    #

    /home/admin/Music       82.144.120.99(ro,sync,no_subtree_check)
    /var/nfs/               82.144.120.99(rw,sync,no_subtree_check)

     


     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Спонсоры:
    Слёрм
    Inferno Solutions
    Hosting by Ihor
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2019 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру