[oracle@dbserver data]$ mkdir oracle
mkdir: cannot create directory ‘oracle’: Permission denied
[oracle@dbserver data]$ df -h
Filesystem?????????????? Size? Used Avail Use% Mounted on
devtmpfs???????????????? 4.7G???? 0? 4.7G?? 0% /dev
tmpfs??????????????????? 4.7G???? 0? 4.7G?? 0% /dev/shm
tmpfs??????????????????? 4.7G?? 13M? 4.7G?? 1% /run
tmpfs??????????????????? 4.7G???? 0? 4.7G?? 0% /sys/fs/cgroup
/dev/mapper/centos-root?? 89G? 9.2G?? 80G? 11% /
/dev/sda1?????????????? 1014M? 185M? 830M? 19% /boot
192.168.133.195:/data???? 20G?? 32M?? 20G?? 1% /nfs/data
tmpfs??????????????????? 959M?? 12K? 959M?? 1% /run/user/42
tmpfs??????????????????? 959M???? 0? 959M?? 0% /run/user/0
[oracle@dbserver data]$ pwd
/nfs/data
如上所示:oracle用戶在共享目錄下無法寫,以下實(shí)現(xiàn)客戶端NFS掛載的目錄非root用戶也能讀寫.
如果需要允許所有用戶具有讀寫權(quán)限,服務(wù)器端修改共享目錄的基礎(chǔ)權(quán)限為777即可.
服務(wù)器端
[root@prometheus /]# mkdir /backup/
[root@prometheus /]# chmod 777 /backup/
[root@prometheus backup]# vi /etc/exports
/backup 192.168.133.191/24(rw,sync)
[root@prometheus /]# exportfs -r
客戶端
[root@dbserver mnt]# mount 192.168.133.190:/backup /mnt/backup
說明:經(jīng)測試rman備份可以存放在此目錄中.
說明:客戶端root掛載,使用user1用戶(uid :1000)訪問,在NFS服務(wù)端識別uid為1000 的用戶訪問,如果服務(wù)器端有對應(yīng)的uid,則映射為對應(yīng)用戶,即:如果服務(wù)端uid 1000對應(yīng)為testuser1,則最后客戶端user1所對應(yīng)的權(quán)限實(shí)際為服務(wù)端testuser1的權(quán)限.
客戶端創(chuàng)建與服務(wù)器端相同UID的用戶.
服務(wù)器端
[root@prometheus /]# cat /etc/exports
/rmanbak 192.168.133.191/24(rw,sync)
[root@prometheus /]# exportfs -r
[root@prometheus /]# chown -R oracle:oinstall /rmanbak
[root@prometheus /]# id oracle
uid=1001(oracle) gid=1001(oinstall) groups=1001(oinstall),1002(dba),1003(oper)
客戶端
[root@dbserver mnt]# mkdir /mnt/rmanbak
[root@dbserver mnt]# mount 192.168.133.190:/rmanbak /mnt/rmanbak
[root@dbserver mnt]# df -h
Filesystem??????????????? Size? Used Avail Use% Mounted on
devtmpfs????????????????? 4.7G???? 0? 4.7G?? 0% /dev
tmpfs???????????????????? 4.7G???? 0? 4.7G?? 0% /dev/shm
tmpfs???????????????????? 4.7G?? 13M? 4.7G?? 1% /run
tmpfs? ???????????????????4.7G???? 0? 4.7G?? 0% /sys/fs/cgroup
/dev/mapper/centos-root??? 89G?? 30G?? 60G? 33% /
/dev/sda1??????????????? 1014M? 185M? 830M? 19% /boot
tmpfs???????????????????? 959M???? 0? 959M?? 0% /run/user/1100
tmpfs???????????????????? 959M?? 12K? 959M?? 1% /run/user/42
tmpfs???????????????????? 959M???? 0? 959M?? 0% /run/user/0
tmpfs???????????????????? 959M???? 0? 959M?? 0% /run/user/1101
192.168.133.190:/rmanbak? 119G?? 24G?? 96G? 20% /mnt/rmanbak
注意:此時在客戶端創(chuàng)建一個uid為1001的用戶
[root@dbserver home]# useradd -u 1001 -g oinstall -G dba,oper,asmdba leo
[root@dbserver home]# su - leo
[leo@dbserver ~]$ cd /mnt/rmanbak
[leo@dbserver rmanbak]$ touch hello.txt
[leo@dbserver rmanbak]$ ll
total 0
-rw-r--r-- 1 leo oinstall 0 Aug 29 15:11 hello.txt
[leo@dbserver rmanbak]$ id leo
uid=1001(leo) gid=1030(oinstall) groups=1030(oinstall),1031(dba),1032(oper),1021(asmdba)
[grid@dbserver rmanbak]$ touch hello1.txt
touch: cannot touch ‘hello1.txt’: Permission denied
結(jié)論:用戶leo可以在共享目錄寫,而grid用戶不能.
現(xiàn)在實(shí)現(xiàn)在服務(wù)器端創(chuàng)建與客戶端oracle相同uid的用戶liujun,到時建立一個目錄劃分給用戶liujun用于客戶端的rman備份.
服務(wù)器端
[root@prometheus home]# useradd -u 1101 -g oinstall -G dba,oper liujun
[root@prometheus home]# chown -R liujun:oinstall /rmanbak
[root@prometheus home]# vi /etc/exports
[root@prometheus home]# cat /etc/exports
/rmanbak 192.168.133.191/24(rw,sync)
[root@prometheus home]# exportfs -r
客戶端
[root@dbserver home]# mkdir -p /mnt/rmanbak
[root@dbserver home]# mount 192.168.133.190:/rmanbak /mnt/rmanbak
[oracle@dbserver rmanbak]$ touch hello.txt
[oracle@dbserver rmanbak]$ ll
total 0
-rw-r--r-- 1 oracle oinstall 0 Aug 29 15:19 hello.txt
現(xiàn)在執(zhí)行rman備份
RMAN> backup as compressed backupset full database format '/mnt/rmanbak/2dbf_%d_%u_%p_%s' plus archivelog format '/mnt/rmanbak/3arc_%d_%u_%p_%s' delete all input;
結(jié)果:rman備份可存放在NFS掛載的共享目錄中,也就實(shí)現(xiàn)rman遠(yuǎn)端存儲的備份.?
本文摘自 :https://blog.51cto.com/u