上次講到怎麼檢視檔案的權限以及檔案的屬性,那麼在一些場合你要修改檔案的屬性和權限怎麼辦呢?
我們可以使用下面3個指令來修改檔案的屬性和權限:
chgrp(change group):改變檔案所屬使用者組
chown(change owner):改變檔案所有者
chmod(change mode):改變檔案的權限
那麼到底是怎麼實作的呢?
例如:
[[email protected] 檔案]# ls -al 3.c
-rw-r–r– 1 root root 424 02-01 10:54 3.c
[[email protected] 檔案]# chgrp user 3.c
chgrp: 無效的組 “user”
[[email protected] 檔案]# chgrp bin 3.c
[[email protected] 檔案]# ls -al 3.c
-rw-r–r– 1 root bin 424 02-01 10:54 3.c
[[email protected] 檔案]# chown mail 3.c
[[email protected] 檔案]# ls -al 3.c
-rw-r–r– 1 mail bin 424 02-01 10:54 3.c
[[email protected] 檔案]# chmod 755 3.c
[[email protected] 檔案]# ls -al 3.c
-rwxr-xr-x 1 mail bin 424 02-01 10:54 3.c
[ro[email protected] 檔案]# chmod a+w 3.c
[[email protected] 檔案]# ls -al 3.c
-rwxrwxrwx 1 mail bin 424 02-01 10:54 3.c
下面來做簡單的講解:
我們看到3.c這個檔案最初的檔案所有者和檔案使用者組都是root,剛開始我想通過chgrp把它的檔案使用者組改為user,那麼為什麼不行呢?
原因在于你要修改的組名必須要在/etc/group這個檔案中存在才行,不然它就會提示你修改的是無效的組。
然後下面我就打開/etc/group這個檔案,選擇一個可以修改的組名進行了修改,接着用chown去修改檔案所有者,最後用chmod去修改檔案的權限。
注意:修改檔案的方式有2種
數字類型和符号類型,相對來說數字類型更加友善。
數字類型:
r:4
w:2
x:1
755就是rwxr-xr-x
你可以用不同的數字組去表示不同的檔案權限
符号類型:
u:user
g:group
o:other
a:all
例如
chmod u = rwx,go = rx 3.c
表示:rwxr-xr-x
還可以用+,-,=符号
例如
chmod a+w 3.c
作用:使3.c這個檔案的3個組都具有了w功能,在這裡隻是舉個例子,在實際中要避免這麼寫,因為w權限是不能随便給的。