26

Odp: Serwer NFS - Permission Denied

can't stat exported dir /debian-live: No such file or directory

Nie ma katalogu /debian-live....

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

27 (edytowany przez jzef 2016-01-19 17:14:44)

Odp: Serwer NFS - Permission Denied

Wiem co to znaczy, znam angielski ale jak ustawić aby widział ten katalog bo on na pewno jest na dysku sdb1 i mogę do niego wejść:

root@OpenWrt:~# cd /mnt/extstor/images/debian-live
root@OpenWrt:/mnt/extstor/images/debian-live# ls
initrd.img   initrd2.img  live         vmlinuz      vmlinuz2

W opcjach startowych w menu.cfg PXELINUX mam tak:

LABEL live
MENU LABEL Debian Live 486
kernel images/debian-live/vmlinuz
append initrd=images/debian-live/initrd.img boot=live config netboot=nfs ip=dhcp nfsroot=/debian-live

a plik /etc/exports skonfigurowany tak:

/ *(ro,no_subtree_check,fsid=0)
/mnt/extstor/images *(ro,async,no_subtree_check)

Próbowałem też wyeksportować tak:

/ *(ro,no_subtree_check,fsid=0)
/mnt/extstor/images/debian-live *(ro,async,no_subtree_check)

ale nadal to samo :-(

Jak mam wyeksportować ten katalog /debian-live aby był wyeksportowany?
Czy nie mogę po prostu wyeksportować całego folderu /images ?

28 (edytowany przez jzef 2016-01-19 17:51:30)

Odp: Serwer NFS - Permission Denied

Wreeeeeeeeszcie poszło :-) Zmieniłem ścieżkę w konfiguracji PXELINUX w pliku menu.cfg w opcji nfsroot=:

nfsroot=/debian-live

na

nfsroot=/mnt/extstor/images/debian-live

i działa :-)

Ale jednak wolałbym nie zmieniać nic w konfiguracji PXELINUX. Chcę mieć tak, że w pliku menu.cfg ma być po staremu czyli:

nfsroot=/debian-live

i teraz jak ma wyglądać plik /etc/exports ???

P.S. Nie trzeba eksportować dodatkowo katalogu głównego i wystarczy tylko taki wpis w pliku /etc/exports:

/mnt/extstor/images/debian-live *(ro,async,no_subtree_check)

29

Odp: Serwer NFS - Permission Denied

Zrób katalog /debian-live. I albo tam podmontuj nośnik albo zrób bindowanie do innego katalogu.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

30

Odp: Serwer NFS - Permission Denied

Katalog /debian-live już mam na dysku sdb1 więc nie będę robił drugiego bo mi się pomiesza. Jak zrobić te bindowanie poprawnie bo właśnie kombinuję z tym.

31

Odp: Serwer NFS - Permission Denied

Zrób zwykłego linka zamiast tego.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

32 (edytowany przez jzef 2016-01-19 18:52:19)

Odp: Serwer NFS - Permission Denied

Cezary napisał/a:

Zrób zwykłego linka zamiast tego.

Możesz jaśniej bo nie rozumiem?

W ostateczności mogłoby zostać tak, że podaję dokładnie taką samą ścieżkę w menu.cfg jak jest wyeksportowana w pliku /etc/exports ale dlaczego mam zmieniać konfigurację mojego serwera PXELINUX który działa bez problemu w systemie Windows ??? Przypominam iż bardzo długo tworzyłem i testowałem serwer na systemie Windows.

Załóżmy, że mam serwer skonfigurowany na pendrive co docelowo chcę osiągnąć. Teraz mam podłączony pen w systemie Windows i wszystko działa. Przekładam sobie pena do routera z OpenWRT i już mi nie działa Debian przez NFS i żeby zadziałał muszę edytować plik menu.cfg na pendrive - nie chcę tak.

Musi być jakiś sposób, podobno na Linuksie wszystko da się zrobić :-)

33

Odp: Serwer NFS - Permission Denied

ln -s /mnt/sdb1/debian-live /

Czy gdzie tam masz ten katalog. Utworzy to link w głównym katalogu.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

34 (edytowany przez jzef 2016-01-19 19:20:42)

Odp: Serwer NFS - Permission Denied

Zaraz, zaraz - po kolei bo zaraz się wszystko pomiesza.

  • katalog główny partycji sdb1 to katalog główny serwera PXELINUX i TFTP, jest w nim bezpośrednio plik pxelinux.0

  • partycja ta zamontowana jest w OpenWRT tak: mount /dev/sdb1 /mnt/extstor

  • Debian Live jest na dysku sdb1 w /mnt/extstor/images/debian-live

Zrobiłem więc tak jak piszesz:

ln -s /mnt/sdb1/images/debian-live /

w pliku /etc/exports dałem tak:

/debian-live *(ro,sync,no_subtree_check)

ale niestety przy restarcie demona nfsd mam błąd, że nie ma takiego katalogu:
http://savepic.net/7601757.png

Napiszę tak, w Windows używam serwera FreeNFS - jest to malutki programik w którym podaje się dowolny katalog na dysku jako root NFS i mam tak:
http://savepic.net/7577181m.png
Jak zrobić to w OpenWRT, jak ustawić jakiś katalog jako katalog root NFS ???

35

Odp: Serwer NFS - Permission Denied

ln -s /mnt/extstor/images/debian-live /

w tym przypadku bo taki masz katalog gdzie montujesz dysk. Nie /mnt/sdb1

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

36

Odp: Serwer NFS - Permission Denied

Działa :-) Dzięki za pomoc. Ale jeszcze jedno pytanko - popatrz na mój poprzedni post bo edytowałem. Czy demon nfsd ma domyślną lokalizację root NFS którą można by zmienić jak robię to w Windows w programiku FreeNFS?

37

Odp: Serwer NFS - Permission Denied

Nie, tu się podaje całe ścieżki.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

38 (edytowany przez jzef 2016-01-19 19:55:07)

Odp: Serwer NFS - Permission Denied

Jeszcze jedno pytanko :-)
Czy ten link folderu będzie zapamiętany po restarcie OpenWRT czy trzeba gdzieś to dodać do autostartu czy jak?

Muszę napisać iż OpenWRT dla x86 nie rozpoznaje automatycznie podłączonego drugiego dysku FAT16 i musiałem doinstalować pakiety np. kmod-fs-vfat i jeszcze coś - według instrukcji na Wiki PXE-Boot from OpenWRT. Poinstalowałem pakiety dla USB chociaż testuję na dysku twardym i dodałem montowanie w fstab - wykonałem cały punkt 1 z instrukcji tylko użyłem nazwy folderu extstor zamiast extstorage. Mój plik wygląda teraz tak /etc/config/fstab:

config global
        option auto_swap '1'
        option auto_mount '1'
        option check_fs '0'

config mount
        option target '/mnt/extstor'
        option device '/dev/sdb1'
        option enabled '1'
        option fstype 'vfat'

Instalacja pakietów dla USB prawdopodobnie nie była w tym przypadku potrzebna a plik fstab też zmieniłem i nie wiem czy dobrze.

Muszę od nowa wgrać obraz OpenWRT na dysk i jeszcze raz wszystko skonfigurować bo w tej chwili to nie pamiętam już jakie pakiety poinstalowałem i które są niezbędne a które zbędne żeby odpalić serwer TFTP z NFS z drugiego dysku FAT16.

Jak to wszystko sprawdzę i ustawię to postaram się napisać instrukcję w punktach co i jak :-)

39

Odp: Serwer NFS - Permission Denied

Link do folderu będzie. Inna sprawa że wcześniej przed wystartowaniem usług musisz mieć zamontowany nośnik.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

40 (edytowany przez jzef 2016-01-25 21:20:33)

Odp: Serwer NFS - Permission Denied

Już to rozgryzłem :-) Przerobiłem wszystko od samego początku - to jest od wgrania systemu na dysk. Wszystko robi się automatycznie po zainstalowaniu pakietów:

  • kmod-fs-vfat               \

  • kmod-nls-cp437             obsługa partycji FAT

  • kmod-nls-iso8859-1    /

  • block-mount                automatyczne montowanie

i nie trzeba modyfikować pliku /etc/config/fstab

Podsumowując temat - to tytułowy problem ma związek tylko ze źle określoną ścieżką NFS i nie ma nic wspólnego z uprawnieniami katalogu bo przecież partycja FAT nie obsługuje uprawnień.

Ścieżki muszą być identyczne zarówno w /etc/exports na serwerze OpenWRT oraz w pxelinux.cfg/menu.cfg w menu uruchamiającym system np. Debian przez NFS, dokładnie chodzi o ścieżkę w nfsroot=:

LABEL live
MENU LABEL Debian Live 486
kernel images/debian-live/vmlinuz
append initrd=images/debian-live/initrd.img boot=live config netboot=nfs ip=dhcp nfsroot=/debian-live

i nasz plik /etc/exports po wcześniejszym zastosowaniu linkowania folderu /debian-live w katalogu głównym. Wystarczy zmienić tylko domyślny folder /mnt, opcje mogą zostać te same:

/debian-live    *(ro,all_squash,insecure,sync)