EduCoder Linux文件/目录高级管理一
Linux 系統中的每個文件和目錄都有訪問許可權限,用它來確定誰能通過何種方式對文件和目錄進行訪問和操作。
文件的訪問權限分為只讀,只寫和可執行三種。
目錄的訪問權限分為可瀏覽、可修改目錄內容和可進入三種。
只讀權限表示只允許讀其內容,而禁止對其做所有的更改操作。可執行權限表示允許將該文件作為一個程序執行。文件被創建時,文件所有者自動擁有對該文件的讀、寫和可執行權限,以便于對文件的閱讀和修改。用戶也可根據需要把訪問權限設置為需要 的所有組合。
有三種不同類型的用戶可對文件或目錄進行訪問:文件所有者,同組用戶、其他用戶。所有者一般是文件的創建者。所有者能允許同組用戶有權訪問文件,還能將文件的訪問權限賦予系統中的其他用戶。在這種情況下,系統中每一位用戶都能訪問該用戶擁有的文件或目錄。
本實訓將介紹如何修改文件或者目錄的屬性。
第1關:Linux文件權限修改
- 任務描述
- 相關知識
- Linux修改文件權限命令
- Linux修改所有者權限
- Linux修改同組用戶權限
- Linux修改其他用戶權限
- 編程要求
- 測試說明
任務描述
假設系統中存在一個文件File,修改該文件的權限,根據實際需求添加/刪除該文件讀、寫、執行權限,通過本關的學習,我們學會如何讓一個文件允許哪些用戶訪問或禁止哪些用戶訪問。
本關任務:學會如何修改文件的權限。
相關知識
Linux系統中的每個文件都有訪問許可權限,文件的訪問權限分為只讀,只寫和可執行三種。
只讀權限表示只允許讀其內容,而禁止對其做任何的更改操作。
只寫權限表示允許修改文件的內容。
可執行權限表示允許將該文件作為一個程序執行。
每一文件的訪問權限都有三組,每組用三位表示,分別為文件所屬主的讀、寫和執行權限;與屬主同組的用戶的讀、寫和執行權限;系統中其他用戶的讀、寫和執行權限。
當用ls -l或ll命令顯示文件的詳細信息時,最左邊的一列為文件的訪問權限。例如顯示test文件詳細信息:
[請在右側“命令行”里直接體驗]
Linux修改文件權限命令
Linux中使用chmod命令來修改文件權限。
文字設定法具體命令如下:
chmod [who] [+ | - | =] [mode] 文件名
who參數如下:
- u 表示“用戶(user)”,即文件或目錄的所有者;
- g 表示“同組(group)用戶”,即與文件屬主有相同組ID的所有用戶;
- o 表示“其他(others)用戶”;
- a 表示“所有(all)用戶”,它是系統默認值。
操作符如下:
- +:添加某個權限;
- -:取消某個權限;
- =:賦予給定權限并取消其他所有權限。
mode參數如下:
- r 可讀;
- w 可寫;
- x 可執行。
數字設定法具體命令如下:
chmod [mode] 文件名
mode為具體的數字。
首先了解用數字表示的屬性的含義:0表示沒有權限,1表示可執行權限,2表示可寫權限,4表示可讀權限,然后將其相加。所以數字屬性的格式應為3個從0到7的八進制數,其順序是u、g和o。
案例演示一:
將文件testFile的所有權限設置為僅讀權限,可以使用如下命令:
chmod a=r testFile
[請在右側“命令行”里直接體驗]
案例演示二:
將文件testFile的所有權限設置為可讀可寫,同組用戶權限設置為只讀,可以使用如下命令:
chmod u=rw,g=r testFile
[請在右側“命令行”里直接體驗]
案例演示三:
將文件testFile的權限設置為所有者可讀可寫可執行,同組用戶設置為可讀可執行,其他用戶設置為可讀,可以使用如下命令:
chmod 754 testFile
[請在右側“命令行”里直接體驗]
Linux修改所有者權限
linux使用chmod u+/-/=命令來設置文件所有者的權限。
具體命令如下:
chmod u [+ | - | =] [mode] 文件名
操作符如下:
- +:添加某個權限;
- -:取消某個權限;
- =:賦予給定權限并取消其他所有權限。
mode參數如下:
- r 可讀;
- w 可寫;
- x 可執行。
案例演示一:
將文件testFile的所有者權限設置為僅讀權限,可以使用如下命令:
chmod u=r testFile
[請在右側“命令行”里直接體驗]
案例演示二:
給文件testFile的所有者權限添加可執行權限,可以使用如下命令:
chmod u+x testFile
[請在右側“命令行”里直接體驗]
Linux修改同組用戶權限
Linux修改同組用戶權限的方法與修改所有者的權限大致一樣,唯一不同的點是修改同組用戶權限采用chmod g而不是采用chmod u。
案例演示一:
將文件testFile的同組用戶權限設置為僅讀權限,可以使用如下命令:
chmod g=r testFile
[請在右側“命令行”里直接體驗]
案例演示二:
給文件testFile的同組用戶權限添加可執行權限,可以使用如下命令:
chmod g+x testFile
[請在右側“命令行”里直接體驗]
Linux修改其他用戶權限
Linux修改其他組用戶權限的方法與修改所有者的權限大致一樣,唯一不同的點是修改其他組用戶權限采用chmod o而不是采用chmod u。
案例演示一:
將文件testFile的其他組用戶權限設置為僅讀權限,可以使用如下命令:
chmod o=r testFile
[請在右側“命令行”里直接體驗]
案例演示二:
給文件testFile的其他組用戶權限添加可執行權限,可以使用如下命令:
chmod o+x testFile
[請在右側“命令行”里直接體驗]
編程要求
根據右側窗口命令行內的提示,在Begin - End區域內進行命令行語句補充,具體任務如下:
- 將系統已存在文件oldFile1的所有者權限設置為可執行;
- 為系統已存在文件oldFile2的同組用戶權限刪除可寫權限;
- 為系統已存在文件oldFile3的其他組用戶權限添加可執行權限;
- 將系統已存在文件oldFile4的權限設置所有者權限為可讀,同組用戶權限為可寫,其他用戶權限為可執行;
測試說明
本平臺只需將需要的命令寫入到對應的命令填寫區域(命令間使用換行分隔)即可,平臺會自動讀入和執行用戶寫入的命令,并判斷用戶輸入的命令是否符合要求。
沒有人能一路單純到底,但要記住,別忘了最初的自己。
開始你的任務吧,祝你成功!
如果你覺得這一關的內容對你有幫助,請你在下面點贊。
#!/bin/bash#在以下部分寫出完成任務的命令 #***********begin*************# chmod u=x oldFile1 chmod g-w oldFile2 chmod o+x oldFile3 chmod u=r,g=w,o=x oldFile4 #************end**************#第2關:Linux目錄權限修改
- 任務描述
- 相關知識
- Linux修改目錄權限命令
- Linux修改所有者權限
- Linux修改同組用戶權限
- Linux修改其他用戶權限
- 編程要求
- 測試說明
任務描述
假設系統中存在一個目錄DIR,修改該目錄的權限,根據實際需求添加/刪除該目錄讀、寫、訪問權限,通過本關的學習,我們學會如何讓一個目錄運行哪些用戶訪問或禁止哪些用戶訪問。
本關任務是學會修改目錄的權限。
相關知識
Linux系統中的每個目錄都有訪問許可權限,目錄的權限和文件的權限類似,目錄的訪問權限也分為只讀,只寫和可進入三種。
只讀權限表示允許瀏覽其內容。
只寫權限表示允許在目錄下新創建文件或目錄。
可進入權限表示允許使用cd命令進入到該目錄下。
每一目錄的訪問權限都有三組,每組用三位表示,分別為所有者權限、同組用戶權限和其他用戶權限。
當用ls -l命令顯示目錄的詳細信息時,最左邊的一列為目錄的訪問權限。例如顯示當前目錄下的test目錄詳細信息可以使用如下命令:
ls -l .
[請在右側“命令行”里直接體驗]
Linux修改目錄權限命令
Linux中使用chmod命令來修改目錄權限。
文字設定法具體命令如下:
chmod 參數 [who] [+ | - | =] [mode] 目錄名
常用參數如下:
- -R或——recursive:遞歸處理,將指令目錄下的所有文件及子目錄一并處理。
who參數如下:
- u 表示“用戶(user)”,即文件或目錄的所有者;
- g 表示“同組(group)用戶”,即與文件屬主有相同組ID的所有用戶;
- o 表示“其他(others)用戶”;
- a 表示“所有(all)用戶”,它是系統默認值。
操作符如下:
- +:添加某個權限;
- -:取消某個權限;
- =:賦予給定權限并取消其他所有權限。
mode參數如下:
- r 可讀;
- w 可寫;
- x 可執行。
數字設定法具體命令如下:
chmod [mode] 文件名
mode為具體的數字。
首先了解用數字表示的屬性的含義:0表示沒有權限,1表示可進入權限,2表示可寫權限,4表示可讀權限,然后將其相加。所以數字屬性的格式應為3個從0到7的八進制數,其順序是u、g和o。
案例演示一:
將目錄testDir的所有權限設置為僅讀權限,可以使用如下命令:
chmod a=r testDir
[請在右側“命令行”里直接體驗]
此時testDir目錄只能被用戶所讀,而不能進行其他的任何操作。
[請在右側“命令行”里直接體驗]
案例演示二:
將目錄testDir的所有權限設置為可讀可寫,同組用戶權限設置為只讀,可以使用如下命令:
chmod u=rw,g=r testDir
[請在右側“命令行”里直接體驗]
[請在右側“命令行”里直接體驗]
此時testDir目錄有寫權限,但是還是無法創建新文件,原因是目錄中的寫權限(w)必須與執行權限(x)配合才能創建和刪除目錄下的內容。
案例演示三:
將目錄testDir的權限設置為所有者可讀可寫可執行,同組用戶設置為可讀可執行,其他用戶設置為可讀可執行,可以使用如下命令:
chmod 755 testDir
此時,用戶可以向testDir目錄添加新文件和刪除已有文件。
[請在右側“命令行”里直接體驗]
Linux修改所有者權限
linux使用chmod u+/-/=命令來設置目錄所有者的權限。
具體命令如下:
chmod u [+ | - | =] [mode] 目錄名
操作符如下:
操作符如下:
- +:添加某個權限;
- -:取消某個權限;
- =:賦予給定權限并取消其他所有權限。
mode參數如下:
- r 可讀;
- w 可寫;
- x 可執行。
案例演示一:
將目錄testDir的所有者權限設置為可讀可寫可執行,可以使用如下命令:
chmod u=rwx testDir
[請在右側“命令行”里直接體驗]
案例演示二:
將目錄testDir的所有者權限添加可執行權限,同時遞歸的將該目錄下的所有文件或目錄都添加可執行權限,可以使用如下命令:
chmod -R u+x testDir
[請在右側“命令行”里直接體驗]
Linux修改同組用戶權限
Linux修改同組用戶權限的方法與修改所有者的權限大致一樣,唯一不同的點是修改同組用戶權限采用chmod g而不是采用chmod u。
案例演示一:
將目錄testDir的同組其他用戶權限設置為可讀可寫可執行,可以使用如下命令:
chmod g=rwx testDir
[請在右側“命令行”里直接體驗]
案例演示二:
將目錄testDir的同組其他用戶權限添加可執行權限,同時遞歸的將該目錄下的所有文件或目錄都添加可執行權限,可以使用如下命令:
chmod -R g+x testDir
[請在右側“命令行”里直接體驗]
Linux修改其他用戶權限
Linux修改其他組用戶權限的方法與修改所有者的權限大致一樣,唯一不同的點是修改其他組用戶權限采用chmod o而不是采用chmod u。
案例演示一:
將目錄testDir的其他組用戶權限設置為可讀可寫可執行,可以使用如下命令:
chmod o=rwx testDir
[請在右側“命令行”里直接體驗]
案例演示二:
將目錄testDir的其他組用戶權限添加可執行權限,同時遞歸的將該目錄下的所有文件或目錄都添加可執行權限,可以使用如下命令:
chmod -R o+x testDir
[請在右側“命令行”里直接體驗]
編程要求
根據右側窗口命令行內的提示,在Begin - End區域內進行命令行語句補充,具體任務如下:
- 將系統已存在目錄oldDir1的所有者權限設置為可執行;
- 為系統已存在目錄oldDir2的同組用戶權限刪除可寫權限;
- 為系統已存在目錄oldDir3的其他組用戶權限添加可執行權限;
- 將系統已存在目錄oldDir4的權限設置所有者權限為可讀,同組用戶權限為可寫,其他用戶權限為可執行;
- 將系統已存在目錄oldDir5的權限設置所有者權限為可讀,同組用戶權限為可寫,其他用戶權限為可執行,同時將該目錄下的所有子目錄或文件權限一并處理。
測試說明
本平臺只需將需要的命令寫入到對應的命令填寫區域(命令間使用換行分隔)即可,平臺會自動讀入和執行用戶寫入的命令,并判斷用戶輸入的命令是否符合要求。
沒有什么事情有象熱忱這般具有傳染性,它能感動頑石,它是真誠的精髓。
開始你的任務吧,祝你成功!
如果你覺得這一關的內容對你有幫助,請你在下面點贊。
#!/bin/bash#在以下部分寫出完成任務的命令 #***********begin*************# chmod u=x oldDir1 chmod g-w oldDir2 chmod o+x oldDir3 chmod 421 oldDir4 chmod -R 421 oldDir5 #************end**************#第3關:Linux修改文件/目錄所有者
- 任務描述
- 相關知識
- Linux修改文件所有者命令
- Linux修改目錄所有者命令
- 編程要求
- 測試說明
任務描述
通過本關的學習,我們學會修改一個文件/目錄的所有者信息,假設文件File是由用戶A創建,通過本關學習,我們將學會如何將文件File的所有者從用戶A修改到用戶B。
本關任務:對Linux系統已存在文件和目錄的所有者進行修改。
相關知識
Linux系統中的每個文件/目錄皆有其擁有者(Owner)。我們知道只有用戶登錄到系統后才可以在系統上創建文件或目錄,而文件/目錄的所有者即是創建該文件/目錄的用戶。
當用ls -l或ll命令顯示文件的詳細信息時,第三列數據表示該文件的所有者。例如顯示test文件所有者信息:
[請在右側“命令行”里直接體驗]
可以看到test文件的所有者是fzm,因為test文件是由fzm用戶所創建。
Linux修改文件所有者命令
Linux中使用chown命令來修改文件所有者。
具體命令如下:
chown 用戶名/用戶ID 文件名
執行權限:
chown必須以root權限才能執行,如果是普通用戶想執行chown時,需要在命令前加sudo命令來提升權限為root權限。
案例演示一:
首先創建一個新用戶newUser,然后將系統中已存在的文件testFile的所有者設置為newUser,可以使用如下命令:
sudo useradd newUser sudo chown newUser testFile
[請在右側“命令行”里直接體驗]
案例演示二:
首先查看用戶fzm的ID是多少,然后將系統中已存在的文件testFile的所有者設置為fzm,可以使用如下命令:
id fzm sudo chown 1000 testFile
[請在右側“命令行”里直接體驗]
Linux修改目錄所有者命令
Linux中使用chown命令來修改目錄所有者。
具體命令如下:
chown 參數 用戶名/用戶ID 目錄名
常見命令參數:
- -R或——recursive:遞歸處理,將指定目錄下的所有文件及子目錄一并處理;
- --help:在線幫助;
執行權限
chown必須以root權限才能執行,如果是普通用戶想執行chown時,需要在命令前加sudo命令來提升權限為root權限。
案例演示一:
將系統中已存在的目錄testDir的所有者設置為newUser,可以使用如下命令:
sudo chown newUser testDir
[請在右側“命令行”里直接體驗]
可以使用ls -l或ll命令查看目錄所有者是否修改成功。
[請在右側“命令行”里直接體驗]
案例演示二:
將系統中已存在的目錄Dir以及其所有子目錄和子文件的所有者設置為newUser,可以使用如下命令:
sudo chown -R newUser Dir
[請在右側“命令行”里直接體驗]
可以看到Dir目錄下的所有子目錄和子文件的所有者都已經修改成了newUser。
編程要求
根據右側窗口命令行內的提示,在Begin - End區域內進行命令行語句補充,具體任務如下:
- 將系統已存在文件oldFile的所有者設置為oldUser;
- 將系統已存在目錄oldDir1的所有者設置為oldUser;
- 將系統已存在目錄oldDir2以及其所有子目錄和子文件的所有者設置為oldUser。
測試說明
本平臺只需將需要的命令寫入到對應的命令填寫區域(命令間使用換行分隔)即可,平臺會自動讀入和執行用戶寫入的命令,并判斷用戶輸入的命令是否符合要求。
一時的挫折往往可以通過不屈的搏擊,變成學問及見識。
開始你的任務吧,祝你成功!
如果你覺得這一關的內容對你有幫助,請你在下面點贊。
#!/bin/bash#在以下部分寫出完成任務的命令 #***********begin*************# chown oldUser oldFile chown oldUser oldDir1 chown -R oldUser oldDir2 #************end**************#第4關:Linux文件/目錄所屬組修改
- 任務描述
- 相關知識
- Linux修改文件所屬組命令
- Linux修改目錄所屬組命令
- 編程要求
- 測試說明
任務描述
通過本關的學習,我們學會修改一個文件/目錄的所屬組信息,假設文件File是由組A創建,通過本關學習,我們將學會如何將文件File的所屬組從組A修改到組B。
本關任務:對Linux系統已存在文件和目錄的所屬組進行修改。
相關知識
Linux系統中的每個文件/目錄皆有其所屬組。默認在創建文件和目錄的時候,將其所有者所在的所屬組作為新創建文件或目錄的所屬組。
當用ls -l或ll命令顯示文件的詳細信息時,第四列數據表示該文件的所有者。例如顯示test文件所有者信息:
[請在右側“命令行”里直接體驗]
可以看到test文件的所屬組是fzm,因為test文件是由fzm用戶所創建,而fzm用戶創建test文件的時候其所屬組是fzm。
Linux修改文件所屬組命令
Linux中使用chgrp命令來修改文件所屬組。
具體命令如下:
chgrp 用戶組名/組ID 文件名
執行權限
chgrp必須以root權限才能執行,如果是普通用戶想執行chgrp時,需要在命令前加sudo命令來提升權限為root權限。
案例演示一:
首先創建一個新用戶組newGroup,然后將系統中已存在的文件testFile的所屬組設置為newGroup,可以使用如下命令:
sudo groupadd newGroup sudo chgrp newGroup testFile
[請在右側“命令行”里直接體驗]
案例演示二:
首先通過/etc/group查看用戶組fzm的ID是多少,然后將系統中已存在的文件testFile的所屬組設置為fzm,可以使用如下命令:
cat /etc/group | grep fzm sudo chgrp 1000 testFile
[請在右側“命令行”里直接體驗]
linux中也可以使用chown命令來修改文件的所屬組。
具體命令如下:
chown:用戶組名/組ID 文件名
如果用戶想使用chown命令同時修改所有者和所屬組信息,則可以使用如下:
chown 用戶名/用戶名ID:用戶組名/組ID 文件名
執行權限
chgrp必須以root權限才能執行,如果是普通用戶想執行chgrp時,需要在命令前加sudo命令來提升權限為root權限。
案例演示一:
使用chown命令將系統已存在的文件testFile的所屬組設置newGroup,可以使用如下命令:
sudo chown :newGroup testFile
[請在右側“命令行”里直接體驗]
案例演示二:
使用chown命令將系統已存在的文件testFile的所有者設置為newUser所屬組設置為fzm,可以使用如下命令:
sudo chown newUser:fzm testFile
[請在右側“命令行”里直接體驗]
Linux修改目錄所屬組命令
Linux中使用chgrp命令來修改目錄所屬組。
具體命令如下:
chgrp 參數 用戶組名/組ID 目錄名
常見命令參數:
- -R或——recursive:遞歸處理,將指定目錄下的所有文件及子目錄一并處理;
- --help:在線幫助;
執行權限
執行權限
chgrp必須以root權限才能執行,如果是普通用戶想執行chgrp時,需要在命令前加sudo命令來提升權限為root權限。
案例演示一:
將系統中已存在的目錄testDir的所屬組設置為newGroup,可以使用如下命令:
sudo chgrp newGroup testDir
[請在右側“命令行”里直接體驗]
案例演示二:
將系統中已存在的目錄Dir以及其所有子目錄和子文件的所屬組設置為newGroup,可以使用如下命令:
sudo chgrp -R newGroup Dir
[請在右側“命令行”里直接體驗]
linux中也可以使用chown命令來修改目錄的所屬組,其使用方法與修改文件的使用方法一致。
案例演示一:
使用chown命令將系統已存在的文件Dir以及其所有子目錄和子文件的所有者設置為fzm所屬組設置為fzm,可以使用如下命令:
sudo chown -R fzm:fzm Dir
[請在右側“命令行”里直接體驗]
編程要求
根據右側窗口命令行內的提示,在Begin - End區域內進行命令行語句補充,具體任務如下:
- 將系統已存在文件oldFile的所屬組設置為oldGroup;
- 將系統已存在目錄oldDir1的所屬組設置為oldGroup;
- 將系統已存在目錄oldDir2以及其所有子目錄和子文件的所屬組設置為oldGroup。
測試說明
本平臺只需將需要的命令寫入到對應的命令填寫區域(命令間使用換行分隔)即可,平臺會自動讀入和執行用戶寫入的命令,并判斷用戶輸入的命令是否符合要求。
每個人的一生都有許多夢想,但如果其中一個不斷攪擾著你,剩下的就僅僅是行動了。
開始你的任務吧,祝你成功!
如果你覺得這一關的內容對你有幫助,請你在下面點贊。
#!/bin/bash#在以下部分寫出完成任務的命令 #***********begin*************# chgrp oldGroup oldFile chgrp oldGroup oldDir1 chgrp -R oldGroup oldDir2 #************end**************#總結
以上是生活随笔為你收集整理的EduCoder Linux文件/目录高级管理一的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: EduCoder Linux 文件/目录
- 下一篇: EduCoder Linux文件/目录高