J'ai une installation FreeNAS fonctionnant sous VirtualBox. Lorsque j'essaie de monter l'un de mes partages FreeNAS dans Ubuntu 12.10, les autorisations sur le partage m'empêchent d'entrer dans le répertoire, de répertorier ou de créer des fichiers.
Mon intention était de fournir un partage où le john
compte FreeNAS a les pleins pouvoirs et les comptes barbara
et mark
ont un accès en lecture seule. Cependant, les autorisations du partage monté m'empêchent même de répertorier le répertoire, et encore moins de créer ou de lire des fichiers là-bas.
Suis-je en train de faire quelque chose de mal lors du montage du partage?
J'essaierai de fournir plus d'informations ci-dessous.
J'ai configuré mon FreeNAS selon les instructions trouvées ici . Le stockage résultant a des autorisations comme indiqué ici:
(Je sais que je dois modifier les autorisations d'écriture pour le groupe.)
Sous Windows7, je n'ai aucun problème à monter le partage:
C:\Users\John>ipconfig /all
Windows IP Configuration
Host Name . . . . . . . . . . . . : Orion
Primary Dns Suffix . . . . . . . :
Node Type . . . . . . . . . . . . : Hybrid
IP Routing Enabled. . . . . . . . : No
WINS Proxy Enabled. . . . . . . . : No
DNS Suffix Search List. . . . . . : dibnatri.net
Wireless LAN adapter Wireless Network Connection:
Connection-specific DNS Suffix . : dibnatri.net
Description . . . . . . . . . . . : Intel(R) Centrino(R) Wireless-N 1030
Physical Address. . . . . . . . . : [redacted]
DHCP Enabled. . . . . . . . . . . : Yes
Autoconfiguration Enabled . . . . : Yes
IPv4 Address. . . . . . . . . . . : 192.168.1.100(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Lease Obtained. . . . . . . . . . : Tuesday, May 14, 2013 6:47:24 AM
Lease Expires . . . . . . . . . . : Friday, June 20, 2149 1:24:02 PM
Default Gateway . . . . . . . . . : 192.168.1.1
DHCP Server . . . . . . . . . . . : 192.168.1.1
DNS Servers . . . . . . . . . . . : 192.168.1.1
NetBIOS over Tcpip. . . . . . . . : Enabled
Ethernet adapter Local Area Connection:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . : dibnatri.net
Description . . . . . . . . . . . : Realtek PCIe FE Family Controller
Physical Address. . . . . . . . . : [redacted]
DHCP Enabled. . . . . . . . . . . : Yes
Autoconfiguration Enabled . . . . : Yes
[snip]
C:\Users\John>net use
New connections will be remembered.
There are no entries in the list.
C:\Users\John>net use y: /user:john \\192.168.1.20\Tunes
The password is invalid for \\192.168.1.20\Tunes.
Enter the password for 'john' to connect to '192.168.1.20':
The command completed successfully.
Y:\>net use
New connections will be remembered.
Status Local Remote Network
-------------------------------------------------------------------------------
OK Y: \\192.168.1.20\Tunes Microsoft Windows Network
The command completed successfully.
C:\Users\John>y:
Y:\>dir
Volume in drive Y is Tunes
Volume Serial Number is 1D20-98EC
Directory of Y:\
05/14/2013 06:54 AM <DIR> .
05/13/2013 02:58 PM <DIR> ..
0 File(s) 0 bytes
2 Dir(s) 6,131,715,282,944 bytes free
Y:\>copy con test1
sss
^Z
1 file(s) copied.
Y:\>dir
Volume in drive Y is Tunes
Volume Serial Number is 1D20-98EC
Directory of Y:\
05/14/2013 06:56 AM <DIR> .
05/13/2013 02:58 PM <DIR> ..
05/14/2013 06:56 AM 5 test1
1 File(s) 5 bytes
2 Dir(s) 6,131,715,447,808 bytes free
Y:\>type test1
sss
Cependant, essayer de faire la même chose sous Ubuntu ne fonctionne pas aussi bien:
[johnd:~] $ ifconfig
eth0 Link encap:Ethernet HWaddr [redacted]
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:215 errors:0 dropped:0 overruns:0 frame:0
TX packets:215 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:20073 (20.0 KB) TX bytes:20073 (20.0 KB)
wlan0 Link encap:Ethernet HWaddr [redacted]
inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::4e80:93ff:fe0c:f3a0/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2287 errors:0 dropped:0 overruns:0 frame:0
TX packets:1980 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1669164 (1.6 MB) TX bytes:761260 (761.2 KB)
[johnd:~] $ sudo mount -l
[sudo] password for johnd:
/dev/sda5 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/cgroup type tmpfs (rw)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
/dev/sda6 on /home type ext4 (rw)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
gvfsd-fuse on /run/user/johnd/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=johnd)
[johnd:~] $ ls /mnt/
[johnd:~] $ sudo mkdir /mnt/tunes
[johnd:~] $ ls -l /mnt/
total 4
drwxr-xr-x 2 root root 4096 May 14 07:04 tunes
[johnd:~] $ ls -l /mnt/
total 4
drwxr-xr-x 2 root root 4096 May 14 07:04 tunes
Notez les autorisations et propriétaire /mnt/tunes
ci - dessus. Il est sur le point de changer, mais je ne sais pas si c'est prévu / correct.
[johnd:~] $ sudo mount -t cifs //192.168.1.20/Tunes /mnt/tunes -o rw,user=john
Password:
[johnd:~] $ ls -l /mnt/
total 0
drwxrwx--- 2 1001 1003 0 May 14 06:56 tunes
1001
est l'uid pour john
sur mon FreeNAS, et 1003
est le gid pour users
là-bas. john
devrait avoir un accès complet.
[johnd:~] 1 $ ll /mnt/tunes
ls: cannot open directory /mnt/tunes: Permission denied
[johnd:~] 1 $ cat>/mnt/tunes/test2
bash: /mnt/tunes/test2: Permission denied
[johnd:~] 2 $
Qu'est-ce que je fais mal ici?
la source
Réponses:
écrire le montage (/ etc / fstab dans ce cas) avec le paramètre noperm pour demander au client local d'ignorer les vérifications d'autorisation. Il ressemble à ceci (fonctionne pour moi, une fois que j'avais ignoré les droits d'autorisation locaux)
la source
Vous devez ajouter des options pour forcer l'uid et le gid aux valeurs souhaitées sur votre machine client au lieu des valeurs du serveur. Cela peut être fait en ajoutant les options
à votre commande de montage.
la source
fstab
- le point de montage local doit avoir l'attribut uid et gid de l'utilisateur local. Les autorisations sur le NAS sont secondaires tant que le combo utilisateur / passe correct pour le partage est présenté lors du montage.Cela fonctionne bien pour moi:
N'oubliez pas que sous Unix, les utilisateurs ont besoin du jeu d'autorisations exécutable pour les répertoires qu'ils doivent parcourir .
la source
FreeNAS est basé sur Unix, et vous souhaitez le monter sur une machine Linux.
Je pense que vous devez le monter avec NFS car c'est aussi Linux, basé sur Unix, au lieu de CIFS qui a été écrit pour les machines Windows.
la source