Direcotrory saya adalah root:
pwd
/
Saya memiliki dir berikut:
drwxrwxrwx 4 root root 81920 Jun 4 09:25 imr_report_repo
CATATAN: imr_report_repo
adalah bagian NFS.
Ini fstab
daftar untuk imr_report_repo
:
netapp1:/imr_report_repos_stage /imr_report_repo nfs rw,bg,actimeo=0,nointr,vers=3,timeo=600,rsize=32768,wsize=32768,tcp 1 1
d imr_report_repo
File dalam mount:
$ ls -al
-rw-r--r-- 1 502 502 1273 Mar 21 2013 imr1_test.txt
UID 502 tidak ada. Jika kami menambahkan UID / GID secara lokal:
$ groupadd -g 502 jimmy
$ useradd -g 502 -u 502 jimmy
Sekarang muncul:
$ ls -al
-rw-r--r-- 1 jimmy jimmy 1273 Mar 21 2013 imr1_test.txt
Sekarang ubah ke root:
$ su -
$ chown oracle:oinstall imr1_test.txt
chown: changing ownership of `imr1_test.txt': Operation not permitted
Jawaban:
Biasanya
root
tidak memiliki izin khusus pada saham NFS. Sebaliknya:root
dipetakan ke pengguna biasa (yaitu bahkan tidak memiliki "normal" akses baca dan tulis keroot
file).Anda harus berjalan
chown
di server NFS.sumber
Biasanya, pengguna root lokal pada klien NFS dilarang melakukan jenis aktivitas ini pada share yang dipasang NFS. NetApp tampaknya menambahkan sedikit twist pada ini sebagai berikut:
/etc/nsswitch.conf
file untuk menentukan UID yang sesuai untuk ditugaskan oleh opsi anon.Jadi dari penampilannya, berbagi NetApp NFS memiliki opsi default, # 1. Anda dapat mengonfirmasi ini dengan menyentuh file pada share NFS sebagai root dan melihat ID apa yang dihasilkan dari melakukan ini.
Anda harus dapat melihat opsi yang diekspor pangsa NFS menggunakan
mount -v
pada klien NFS Anda.Referensi
sumber
Server NetApp NFS, secara default, akan mengubah kredensial pengguna root pada klien menjadi 65534 uid di server, sehingga operasi seperti
chown
akan gagal. Untuk mengubah ini, edit daftar ekspor pada filer sehingga baris untuk sistem file memiliki parameterroot=clientid
, di mana clientid adalah alamat IP atau nama host dari klien yang ingin Anda akses root ke sistem file itu. Kemudian jalankanexportfs -a
jika Anda menggunakan antarmuka baris perintah pada filer.sumber
Seperti komentar slm di atas berkata,
Fitur yang digunakan disebut rot squash . Informasi lebih lanjut di sini . Dalam kasus saya, satu-satunya cara adalah login untuk menonaktifkan ke root squash untuk server khusus ini dan mengaktifkannya kembali nanti.
Situasi serupa yang akan Anda temui jika Anda menggunakan
docker
wadah dengan volume dan wadah berjalan dengan pengguna yang tidak memiliki hak (misalnyaUSER apache
). Jadi ide NFS mountpoints menjadir
/w
hanya olehowner
, dan bukan olehroot
adalah praktik keamanan umum.sumber