Před krátkou dobou jsem doma přezbrojil z linuxivých počítačů na Macbooky. Bylo s tím pár problémů, z nichž poslední--zápis na NFS disk--docela dlouho odolával. Popíšu zde možné řešení.
Abych popsal situaci. Doma jsem k internetu připojený routerem Asus WL500g s Olegovým neoficiálním firmware. Pro ty, kteří tento router neznají, dodávám, že běží na Linuxu. V routeru je připojený disk, který je sdílen přes NFS počítačům ve vnitřní síti. Donedávna fungovaly doma 2 počítače s Debianem Etch. Síťový disk normálně fungoval, dalo se číst i psát, pokud na to měl člověk práva. Po připojení Macbooku nastaly problémy.
Problém 1 -- Disk nešel z Macbooku připojit
Po chvíli hledání jsem zjistil, že problém je tento: V linuxu je standardně nastaveno, že klient se připojuje z privilegovaného portu (<1024) ve víře, že je to tak bezpečnější. Apple poukazuje na to, že to není tak slavné a standardně se připojuje s neprivilegovaných portů. Viz na Macovi mount_nfs a hledej resvport a na Linuxu man exports a hledej secure nebo insecure
Řešení může vypadat takto:
/etc/exports se nastaví volba insecure.resvport příkazu mount_nfs. Toto řešení je poměrně hloupé, protože se musí dělat v terminálu, v GUI nejdou nastavovat parametry pro mountBSD soubor /etc/nfs.conf, kam se dají nacpat volby pro mount_nfs. Tím se vyřeší bod 2 a bude to fungovat i v GUI.Problém 2 -- na disk nešlo psát, i když člověk měl práva
Při pokusu kopírovat něco na síťový disk vyhodil Finder nějakou trapnou hlášku a error code tuším -36. V terminálu zase vypadlo něco ve smyslu No locks available. Abych problém nemusel popisovat podrobně uvedu odkazy na zdroje, které mi pomohly a kde je problém dobře popsán (zejména v tom prvním):
Oba odkazy pro jistotu dávám do přílohy, jenom si soubory přejmenujte na .html.
Problém je nejspíš v tom, že na serveru má běžet služba lockd, která buď vůbec něběží, nebo neodpovídá.
Řešení jsou zhruba tato:
lockd, aby fungovala. Vzhledem k tomu, že se mi nechtělo v routeru moc vrtat, rozhodl jsem se problém obejít, viz další bod.mount_nfs se člověk dozví, že může použít locallocks nebo nolocks. Aby to fungovalo i v GUI, nacpu se tyto volby do /etc/nfs.conf, takže soubor pak může vypadat takto:
nfs.client.mount.options = locallocks
Toto řešení včera večer fungovalo. Nebylo ještě tak moc pozdě, takže doufám, že to nebyl výplod fantazie.
Diskuse
Pokud máte nějaké lepší návody, pište je do diskuse. Obzvláště vděčný budu za poznatky k routeru Asus WL500g (třeba jak tam opravit lockd, aby fungoval).
| Příloha | Velikost |
|---|---|
| nfs_and_extended_attr.txt | 90.83 KB |
| leopard_nfs_issue.txt | 73.8 KB |
Komentáře
Poslat nový komentář