1. 程式人生 > >嵌入式Linux基礎知識6(ubuntu16 下操作目錄,出現Permission denied的解決辦法)

嵌入式Linux基礎知識6(ubuntu16 下操作目錄,出現Permission denied的解決辦法)

需求說明:IPC專案需要Linux系統,知識儲備

來自:時間的詩

1、問題

在對目錄(share_windows)進行操作的時候,出現這樣一個提示Permission denied

查閱資料是許可權沒設好

解決的辦法:

$ sudo chmod -R 777 share_windows

注:-R 是指級聯應用到目錄裡的所有子目錄和檔案
       777 是所有使用者都擁有最高許可權

2、基礎知識

檔案/目錄許可權設定命令:chmod 
這是Linux系統管理員最常用到的命令之一,它用於改變檔案或目錄的訪問許可權。該命令有兩種用法: 
用包含字母和操作符表示式的文字設定法 
其語法格式為:chmod [who] [opt] [mode] 檔案/目錄名 


其中who表示物件,是以下字母中的一個或組合: 

u:表示檔案所有者 
g:表示同組使用者 
o:表示其它使用者 
a:表示所有使用者 
opt則是代表操作,可以為: 
+:新增某個許可權 
-:取消某個許可權 
=:賦予給定的許可權,並取消原有的許可權 


而mode則代表權限: 
r:可讀 
w:可寫 
x:可執行 


例如:為同組使用者增加對檔案a.txt的讀寫許可權: 
chmod g+rw a.txt 
用數字設定法 
而數字設定法則更為簡單:chmod [mode] 檔名 
關鍵是mode的取值,一開始許多初學者會被搞糊塗,其實很簡單,我們將rwx看成二進位制數,如果有則有1表示,沒有則有0表示,那麼rwx r-x r- -則可以表示成為: 
111 101 100 
再將其每三位轉換成為一個十進位制數,就是754。 


例如,我們想讓a.txt這個檔案的許可權為: 
自己 同組使用者 其他使用者 
可讀 是 是 是 
可寫 是 是 可執行 
那麼,我們先根據上表得到許可權串為:rw-rw-r--,那麼轉換成二進位制數就是110 110 100,再每三位轉換成為一個十進位制數,就得到664,因此我 們執行命令: 
chmod 664 a.txt