Izin berbagi cif yang dipasang (Dibagikan dari FreeNAS)

9

Saya memiliki instalasi FreeNAS yang berjalan di bawah VirtualBox. Ketika saya mencoba untuk memasang salah satu saham FreeNAS saya di Ubuntu 12.10, izin pada bagian itu mencegah saya memasuki direktori, daftar atau membuat file.

Tujuan saya adalah untuk memberikan bagian di mana johnakun FreeNAS memiliki otoritas penuh, barbaradan markakun dan memiliki akses hanya baca. Namun izin dari share yang dipasang membuat saya tidak bisa mendaftar direktori, apalagi membuat atau membaca file apa pun di sana.

Apakah saya melakukan sesuatu yang salah saat memasang bagian?

Saya akan mencoba memberikan informasi lebih lanjut di bawah ini.

Saya mengatur FreeNAS saya sesuai dengan instruksi yang ditemukan di sini . Penyimpanan yang dihasilkan memiliki izin seperti yang ditunjukkan di sini:

masukkan deskripsi gambar di sini

(Saya tahu saya perlu mengubah izin menulis untuk grup.)

Di bawah Windows7, saya tidak memiliki masalah dalam pemasangan bagian:

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

Namun, mencoba melakukan hal yang sama di bawah Ubuntu tidak berhasil juga:

[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

Perhatikan izin & pemilik di /mnt/tunesatas. Ini akan berubah, meskipun saya tidak tahu apakah itu yang diharapkan / benar.

[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

1001adalah uid untuk johnFreeNAS saya, dan 1003merupakan gid untuk userssana. johnharus memiliki akses penuh.

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

Apa yang saya lakukan salah di sini?

John Dibling
sumber
Perhatikan bahwa saya merasa nyaman di Linux, tetapi saya sama sekali tidak ahli. Ada banyak yang tidak saya ketahui tentang izin, pembagian, dll.
John Dibling
Anda mungkin perlu melewati kredensial CIFS di panggilan mount (sudah lama sejak saya bekerja dengan mounts CIFS) tetapi periksa tautan ini askubuntu.com/questions/72471/…
rtmie
jika Anda mencoba sebagai pengguna super dapatkah Anda mendaftar? salin? rm?
codeScriber
@ John Dibling Mengapa tidak membuat saham CIFS dan berbagi NFS di direktori yang sama? Kemudian Anda dapat mengatur izin untuk grup tertentu dan menambahkan John ke grup yang dapat ditulisi dan Barbara serta Markus ke grup hanya baca?
BsdHelper
@ BsdHelper: Saya kira itu akan bekerja untuk * nix klien, tetapi Windows tidak berbicara NFS dan saya akan memerlukan akses baca / tulis dari mana saja di dunia. Karena saya memposting pertanyaan ini, saya telah sepenuhnya meninggalkan FreeNAS, dan mengambil pendekatan DIY. Saya sekarang memiliki server linux yang menjalankan array 5 TB raid 5 dengan izin yang benar ditetapkan di mana-mana. Ternyata saya tidak membutuhkan FreeNAS sama sekali. Terima kasih atas saran Anda.
John Dibling

Jawaban:

2

tulis mount (/ etc / fstab dalam kasus ini) dengan parameter noperm untuk menginstruksikan klien lokal mengabaikan pemeriksaan izin. Terlihat seperti ini (berfungsi untuk saya, seringkali saya telah mengabaikan hak izin lokal)

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

Anda perlu menambahkan opsi untuk memaksa uid dan gid ke nilai yang Anda inginkan pada mesin klien Anda, bukan nilai-nilai server. Ini dapat dilakukan dengan menambahkan opsi

uid=xxxx forceuid gid=xxxx forceguid

ke perintah mount Anda.

Meminta kembali
sumber
Ini adalah apa yang saya alami dalam pemasangan cif berbagi di mesin saya melalui fstab - titik mount secara lokal harus memiliki pengguna lokal mengakses uid dan gid ditugaskan. Izin pada NAS bersifat sekunder selama kombo pengguna / pass yang benar untuk pembagian disajikan saat pemasangan.
douggro
0

Ini bekerja dengan baik untuk saya:

  • akses tulis untuk satu pengguna tertentu
  • baca akses untuk semua pengguna lain melalui akun tamu

Ingat bahwa pada Unix, pengguna memerlukan izin yang dapat dieksekusi yang ditetapkan untuk direktori yang harus dilalui .

Jan-Philip Gehrcke
sumber
-1

FreeNAS berbasis unix, dan Anda ingin memasangnya di mesin linux.

Saya pikir Anda perlu me-mount dengan NFS karena itu juga linux, berbasis unix, bukan CIFS yang ditulis untuk mesin windows.

sudo mount -t nfs //192.168.1.20/Tunes /mnt/tunes -o user=john
Bart.a
sumber
Apa kamu yakin akan hal itu? Ini adalah bagian CIFS di sisi FreeNAS, dan dimaksudkan untuk digunakan oleh mesin Windows dan Linux.
John Dibling
Apakah saya yakin ini akan berhasil? Tidak, tetapi Anda bisa mencoba .. Ya, freeNAS akan bekerja di windows juga .. Tapi lihat gambar Anda sendiri dari tab izin, itu memberi Anda pilihan antara unix dan windows. Dengan unix dipilih mengapa tidak menggunakan protokol mount standar untuk unix
Bart.a
Gambar yang saya posting mengacu pada pilihan antara Windows dan Linux ACL . Ini masih merupakan bagian CIFS.
John Dibling
Ini tidak benar . Jika ini adalah bagian CIFS / Samba, mencoba memasang itu sebagai bagian NFS tidak akan melakukan apa-apa. Linux memang memiliki klien untuk memasang jenis share ini.
esmail