마운트 된 cifs 공유의 권한 (FreeNAS에서 공유)


9

VirtualBox에서 FreeNAS 설치를 실행하고 있습니다. Ubuntu 12.10에서 FreeNAS 공유 중 하나를 마운트하려고하면 공유에 대한 권한으로 인해 디렉토리에 들어가거나 파일을 나열하거나 만들 수 없습니다.

내 의도는 FreeNAS john계정에 모든 권한이 있고 barbara및 mark계정에 읽기 전용 액세스 권한이 있는 공유를 제공하는 것이 었습니다 . 그러나 마운트 된 공유 권한은 디렉토리를 나열하지 않아도 파일을 만들거나 읽을 수는 없습니다.

공유를 마운트 할 때 문제가 있습니까?

아래에 더 많은 정보를 제공하려고 노력할 것입니다.

여기 에있는 지침에 따라 FreeNAS를 설정했습니다 . 결과 스토리지에는 다음과 같이 허용이 있습니다.

여기에 이미지 설명을 입력하십시오

(그룹에 대한 쓰기 권한을 조정해야한다는 것을 알고 있습니다.)

Windows7에서는 공유를 마운트하는 데 아무런 문제가 없습니다.

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

그러나 우분투에서 동일한 작업을 시도해도 효과가 없습니다.

[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

/mnt/tunes위 의 권한 및 소유자를 참고하십시오 . 그것이 예상 / 올바른지 모르겠지만 변경하려고합니다.

[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의 UID입니다 john내 FreeNAS에서에, 그리고 1003에 대한 GID입니다 users있다. john모든 액세스 권한이 있어야합니다.

[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 $ 

내가 여기서 뭘 잘못하고 있니?


나는 리눅스에 익숙하지만 결코 전문가는 아니다. 권한, 공유 등에 대해 잘 모릅니다.
— John Dibling

마운트 호출에서 CIFS 자격 증명을 전달해야 할 수도 있습니다 (CIFS 마운트로 작업 한 후 시간이 지났지
— rtmie

수퍼 유저로 시도하면 목록을 볼 수 있습니까? 복사? RM?
— codeScriber

@John Dibling 왜 같은 디렉토리에 CIFS 공유와 NFS 공유를 만들지 않습니까? 그런 다음 특정 그룹에 대한 권한을 설정하고 John을 쓰기 가능 그룹에 추가하고 Barbara 및 Mark를 읽기 전용 그룹에 추가 할 수 있습니까?
— BsdHelper

@BsdHelper : * nix 클라이언트에서 작동한다고 가정하지만 Windows는 NFS를 사용하지 않으므로 전 세계 어디서나 읽기 / 쓰기 액세스가 필요합니다. 이 질문을 게시 한 후 FreeNAS를 완전히 포기하고 DIY 방식을 취했습니다. 이제 모든 권한이 설정된 5TB raid 5 어레이를 실행하는 Linux 서버가 있습니다. FreeNAS가 전혀 필요하지 않은 것으로 나타났습니다. 제안 해 주셔서 감사합니다.
— John Dibling

답변:


2

로컬 클라이언트에게 권한 검사를 무시하도록 지시하려면 noperm 매개 변수를 사용 하여 마운트 (이 경우 / etc / fstab)를 작성하십시오 . 이것은 다음과 같습니다 (한 번 로컬 권한을 무시한 후에 작동합니다)

//remote-ip/share /local-path/dir/ cifs  credentials=/your-credential-file,iocharset=utf8,uid=local-user-uid,gid=local-group-id,**noperm** 0 0

1

uid 및 gid를 서버 값 대신 클라이언트 시스템에서 원하는 값으로 설정하려면 옵션을 추가해야합니다. 옵션을 추가하면됩니다.

uid=xxxx forceuid gid=xxxx forceguid

마운트 명령에.


이것은 내 컴퓨터에 cifs 공유를 마운트하여 경험 한 것입니다 fstab . 마운트 지점에는 로컬로 액세스하는 로컬 사용자 uid 및 gid가 할당되어 있어야합니다. 탑재시 공유에 대한 올바른 사용자 / 패스 콤보가 제공되는 한 NAS의 권한은 보조입니다.
— douggro

0

이것은 나를 위해 잘 작동합니다 :

  • 특정 사용자에 대한 쓰기 권한
  • 게스트 계정을 통한 다른 모든 사용자의 읽기 권한

Unix에서 사용자는 트래버스 해야하는 디렉토리에 대해 실행 권한 세트가 필요하다는 것을 기억하십시오 .


-1

FreeNAS는 유닉스 기반이므로 Linux 머신에 마운트하려고합니다.

Windows 시스템 용으로 작성된 CIFS 대신 Linux 기반의 유닉스 기반이기 때문에 NFS로 마운트해야한다고 생각합니다.

sudo mount -t nfs //192.168.1.20/Tunes /mnt/tunes -o user=john

확실합니까? 이것은 FreeNAS 측의 CIFS 공유이며 Windows 및 Linux 시스템 모두에서 사용하도록 고안되었습니다.
— John Dibling

이것이 효과가 있을까요? 아닙니다.하지만 시도해 볼 수 있습니다. 예, freeNAS는 창에서도 작동합니다. 그러나 권한 탭의 그림을 보면 유닉스와 창 중에서 선택할 수 있습니다. 유닉스 왜 유닉스에 대한 마운트 프로토콜 표준을 사용하지 선택
— Bart.a

내가 게시 한 그림은 Windows와 Linux ACL 사이의 선택을 나타냅니다 . 여전히 CIFS 공유입니다.
— John Dibling

사실이 아닙니다 . CIFS / Samba 공유 인 경우 NFS 공유로 마운트하려고 시도해도 아무런 작업이 수행되지 않습니다. Linux에는 실제로 이러한 유형의 공유를 마운트하기위한 클라이언트가 있습니다.
— esmail
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.