สิทธิ์ในการแชร์ cifs ที่ติดตั้ง (แชร์จาก FreeNAS)


9

ฉันมีการติดตั้ง FreeNAS ทำงานภายใต้ VirtualBox เมื่อฉันพยายามเมานต์ FreeNAS ที่แบ่งปันใน Ubuntu 12.10 สิทธิ์ในการแชร์จะป้องกันไม่ให้ฉันเข้าสู่ไดเรกทอรีรายชื่อหรือสร้างไฟล์

ความตั้งใจของฉันคือการให้ส่วนแบ่งที่johnบัญชีFreeNAS มีสิทธิ์อย่างเต็มที่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

อย่างไรก็ตามการพยายามทำสิ่งเดียวกันภายใต้ Ubuntu ก็ไม่ได้ผลเช่นกัน:

[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 สำหรับjohnFreeNAS ของฉันและ1003gid สำหรับ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 $ 

ฉันทำอะไรผิดที่นี่


โปรดทราบว่าฉันมีความสะดวกสบายใน Linux แต่ฉันไม่เคยเป็นผู้เชี่ยวชาญมาก่อน มีอะไรมากมายที่ฉันไม่รู้เกี่ยวกับการอนุญาตการแชร์ ฯลฯ
John Dibling

คุณอาจจำเป็นต้องส่งข้อมูลประจำตัว CIFS ในการติดตั้งโทร (รับในขณะที่ตั้งแต่ผมทำงานร่วมกับม้า CIFS) แต่ตรวจสอบการเชื่อมโยงนี้askubuntu.com/questions/72471/...
rtmie

หากคุณลองเป็นผู้ใช้ super คุณสามารถแสดงรายการ? คัดลอก? rm
codeScriber

@John Dibling ทำไมไม่สร้างการแชร์ CIFS และ NFS ในไดเรกทอรีเดียวกัน จากนั้นคุณสามารถตั้งค่าการอนุญาตสำหรับกลุ่มเฉพาะและเพิ่มจอห์นในกลุ่มที่สามารถเขียนได้และบาร์บาร่าและทำเครื่องหมายในกลุ่มอ่านอย่างเดียว?
BsdHelper

@BsdHelper: ฉันคิดว่ามันจะใช้งานได้กับไคลเอนต์ * nix แต่ Windows ไม่พูด NFS และฉันจะต้องเข้าถึงการอ่าน / เขียนจากที่ใดก็ได้ในโลก เนื่องจากฉันโพสต์คำถามนี้ฉันได้ละทิ้ง FreeNAS อย่างสมบูรณ์และใช้วิธีการ DIY ตอนนี้ฉันมีเซิร์ฟเวอร์ linux ที่ใช้อาร์เรย์ 5 TB RAID 5 โดยมีการอนุญาตที่ถูกต้องทุกที่ ปรากฎว่าฉันไม่ต้องการ FreeNAS เลย ขอบคุณสำหรับคำแนะนำของคุณ
John Dibling

คำตอบ:


2

เขียนการเมานต์ (/ etc / fstab ในกรณีนี้) ด้วยพารามิเตอร์nopermเพื่อสั่งให้ไคลเอ็นต์โลคัลละเว้นการตรวจสอบสิทธิ์ มันมีลักษณะเช่นนี้ (ใช้งานได้สำหรับฉันยกเว้นฉันได้เพิกเฉยสิทธิ์การอนุญาตในพื้นที่)

//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

คำสั่ง mount ของคุณ


นี่คือสิ่งที่ฉันได้รับประสบการณ์ในการติดตั้ง cifs ที่ใช้ร่วมกันบนเครื่องของฉันผ่านfstab จุดเชื่อมต่อในเครื่องจะต้องเข้าถึง uid และ gid ของผู้ใช้ในพื้นที่ที่ได้รับมอบหมาย การอนุญาตบน NAS นั้นเป็นเรื่องรองตราบใดที่มีการแสดงคอมโบของผู้ใช้ / พาสที่ถูกต้องสำหรับการแชร์เมื่อทำการติดตั้ง
douggro

0

มันใช้งานได้ดีสำหรับฉัน:

  • สิทธิ์การเขียนสำหรับผู้ใช้หนึ่งราย
  • สิทธิ์การเข้าถึงเพื่ออ่านสำหรับผู้ใช้รายอื่นผ่านบัญชีแขก

โปรดจำไว้ว่าบน Unix ผู้ใช้ต้องตั้งค่าสิทธิ์ที่ปฏิบัติสำหรับไดเรกทอรีที่พวกเขาจำเป็นต้องขวาง


-1

FreeNAS ใช้ระบบปฏิบัติการยูนิกซ์และคุณต้องการติดตั้งบนเครื่อง Linux

ฉันคิดว่าคุณต้องติดตั้งด้วย NFS เพราะนั่นคือ linux, unix based แทน CIFS ซึ่งเขียนขึ้นสำหรับเครื่อง windows

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

คุณแน่ใจหรือไม่ นี่คือ CIFS ที่ใช้ร่วมกันทางด้าน FreeNAS และมีไว้สำหรับใช้กับเครื่อง Windows และ Linux
John Dibling

ฉันแน่ใจว่าจะใช้งานได้ไหม ไม่ แต่คุณสามารถลอง .. ใช่ freeNAS จะทำงานบน windows เช่นกัน .. แต่ดูที่รูปภาพของแท็บการอนุญาตของคุณเองมันให้ทางเลือกระหว่างยูนิกซ์และ windows ด้วยการเลือก unix ทำไมไม่ใช้โปรโตคอลเมาท์มาตรฐานสำหรับ unix
Bart.a

ภาพที่ผมโพสต์หมายถึงการเลือกระหว่าง Windows และ Linux ACL มันยังคงแบ่งปัน CIFS
John Dibling

นี้ไม่เป็นความจริง หากเป็นการแชร์ CIFS / Samba การพยายามเมาท์เนื่องจากการแชร์ NFS จะไม่ทำอะไรเลย Linux มีไคลเอ็นต์สำหรับการติดตั้งชนิดนี้อย่างแน่นอน
esmail
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.