亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

linux的外殼是什么及怎么使用

發布時間:2022-11-11 11:35:16 來源:億速云 閱讀:195 作者:iii 欄目:建站服務器

今天小編給大家分享一下linux的外殼是什么及怎么使用的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

在linux中,外殼是指“shell”,即存在于操作系統之上的“命令行解釋器”,是指一個面向用戶的命令接口,表現形式就是一個可以由用戶錄入的界面,這個界面也可以反饋運行信息。shell的作用:1、將用戶的命令翻譯給核心(kernel)處理;2、將核心(kernel)處理結果翻譯給用戶。

Linux的外殼程序稱作shell(命令行解釋器),是指一個面向用戶的命令接口,表現形式就是一個可以由用戶錄入的界面,這個界面也可以反饋運行信息

shell的作用是:

  • 將命令翻譯給kernal

  • 將kernl處理結果翻譯給用戶

?一般我們使用的shell為bash。

在解釋命令的時候,bash不會直接參與解釋,而是創建新進程進行命令的解釋,bash只用等待結果即可,這樣能保證bash進程的安全。

一、shell

1.出現原因

在使用linux時,我們都說linux相較于windows,linux沒有圖形化界面,是用命令行進行操作。但是命令行的方式也并非是對計算機的直接操作

我們知道計算機的底層其實就是由0和1組成,每個命令的傳達最終都會轉變為0,1信號傳輸給計算機讓計算機運行相應的指令。但如果讓大眾都用這種方式操作計算機,無疑會非常的困難。

2.作用

linux操作系統作為一個核心(kernel),用戶不能直接對其進行操作。而是通過shell來與計算機溝通。“shell”的英文釋義有“外殼”的意思,即存在于操作系統之上的“命令行解釋器”,用于將用戶的命令翻譯給核心(kernel)處理,核心(kernel)再將處理結果翻譯給用戶

shell其實就可以看做是用戶與操作系統之間的一位翻譯員,用戶與操作系統語言不通無法直接進行溝通,而是通過shell進行翻譯后進行對話

3.windows與linux的shell

(1)windows

在使用windows時,用戶無法直接操作windows的內核,而是通過點擊shell形成的圖形化界面進行相關操作

(2)linux

在linux中,shell則是對我們的指令進行解析,將解析指令傳給linux內核,反饋結果再通過內核運行出結果,將結果通過shell解析給用戶

4.存在意義

(1)便于用戶與操作系統之間的溝通

通過shell,用戶可以用更加簡便的方式使用操作系統,學習成本也會大大下降。

(2)保護操作系統

shell的另一個存在意義就是為了保護操作系統。通過對用戶非法或無效指令的攔截避免操作系統進行無用或有害的操作。比如我們在linux下輸入一串亂碼,shell就會將該命令攔截并返回

linux的外殼是什么及怎么使用

5.運行模式

shell在執行命令時,會通過派生子進程的方式執行用戶的指令,而shell本身一般并不會執行對應的指令

可以將shell本身看做一個翻譯派遣公司的總裁,用戶有翻譯需求時就向shell發出請求,而shell作為一個派遣公司總裁,一般不會親自上門服務,而是派遣手下的其他翻譯人員去服務,以應對繁多復雜的需求。這些外派的翻譯人員就是一個個子進程

二、linux權限

1.linux權限的概念

權限就是操作系統中對用戶的約束

(1)用戶分類

在linux下,用戶分為兩種。一種是超級用戶,即root。另一種是普通用戶

1.超級用戶(root)

root用戶有且僅有一個。同時,root用戶擁有對該操作系統的最高權限。

可以認為,root用戶在操作系統就像是古代國家的皇帝,不受任何法律條文的約束。在root用戶下,執行任何命令都不會受到權限的限制。下可訪問其他普通用戶的文件并對其進行修改、刪除。上可執行刪除操作系統的根目錄,數據庫等會對操作系統造成嚴重損害乃至崩潰的操作

因此,root賬戶的密碼一定要設置的復雜并保存好。

root用戶的命令提示符是“#”

2.普通用戶

普通用戶可以存在多個。普通用戶會受到權限的約束。這些權限約束來自于系統和root用戶。

普通用戶的命令提示符是“$”

(2)用戶切換

在linux下,可以使用“su”命令切換用戶

linux的外殼是什么及怎么使用

在這里,你要登錄誰的賬戶就要輸入該賬戶的密碼。因此,每個賬戶的密碼都盡量要設置成不一樣的

要退出該賬戶的話,輸入exit或者使用快捷鍵“ctrl d”即可

linux的外殼是什么及怎么使用

注意:在普通用戶下“su”,需要輸入對應用戶的密碼。但是,在root用戶下“su”,無需輸入對應用戶密碼

linux的外殼是什么及怎么使用

(3)不切換用戶執行對應指令

如果我們是普通用戶,但此時我們需要執行的一條指令需要root權限,而我們又不想切換用戶去執行,此時就可以使用“sudo”命令。該命令可以短暫的提升普通用戶的權限

注意:在輸入密碼時,是輸入本用戶的密碼,而不是root用戶的密碼

但此時我們會出現以下報錯:

linux的外殼是什么及怎么使用

這就是因為該普通用戶并不是root的信任用戶,在root的對應文件中并不存在該普通用戶,導致無法進行“sudo”命令

2.linux權限管理

在linux中,權限由“人”“事物屬性”組成。指的是進行操作的用戶事物屬性則是指文件的屬性

(1)文件訪問者的分類(人)

在linux中,文件的訪問者分為三類:擁有者(onwer)所屬組(group)其他人(other)。與root用戶和普通用戶是一個具體的人不同,文件訪問者中的三類是一個比較抽象的概念,可以看做是一種角色。即其他用戶在該文件下的身份。例如,一個普通用戶在自己的目錄的文件看來可能是所有者和所屬組,但在其他用戶的文件看來就可能是其他人

1.所屬組存在原因

有人可能會疑惑,文件的擁有者和其他人都好理解,擁有者就是文件的創建者other就是除了創建者之外的用戶,那文件的所屬組有什么意義呢?

假如現在我們有團隊A團隊B在同一臺linux機器上開發產品,此時,團隊A的成員實現了一個模塊,團隊領導想查看該模塊內容。如果linux中存在owner和other,因為owner是我們自己,那么領導要查看代碼時,我們就需要將other的權限放開。但另一個團隊也被該文件視為other,放開other就意味著不僅領導能看,另一個團隊也能看你的代碼,就容易造成代碼泄漏。為了避免這種情況,就需要所屬組。我們只需要將領導添加為該文件的所屬組并放開所屬組的權限即可,這樣就可以在無需開放other權限的情況下向領導開放代碼

(2)事物屬性

linux的外殼是什么及怎么使用

現在我們有以上一個test.c文件,可以看到,在這個文件文件名前存在一大串的屬性。在之前,我們最多知道“Oct 25 16:43”上次修改時間100該文件按字節計算的該文件磁盤占用。但是前面的屬性我們就不認識了。

1.文件訪問者

linux的外殼是什么及怎么使用

上文中我們也提到了文件訪問者的分類,其實在上圖中的第一個root就代表所有者第二個root則是指所屬組。而other則并沒有顯示,因為除了這兩個用戶以外的用戶就屬于other,不必顯示

2.文件類型

linux的外殼是什么及怎么使用

我們都知道,在linux中,文件的后綴是無意義的。因為linux不會通過文件后綴區分文件類型。但這不意味著linux中沒有文件類型。linux的文件類型通過“ll”顯示的屬性列中第一列中的第一個字符來區分。而在上圖中可以看到,在test和test.c的第一個字符分別是“d”“-”的字符。而這兩個字符其實就是文件的類型。

1)linux中的常見文件類型

-: 普通文件

主要包括源代碼、庫文件、可執行程序、文檔壓縮包等

d:目錄文件

c:字符設備文件

主要為硬件,例如鍵盤、顯示器等

b:塊設備文件

例如磁盤

l:鏈接文件

以windows為例,桌面上的快捷方式其實就是一種鏈接文件。快捷方式鏈接著對應軟件的啟動程序。在linux下,我們執行“ln -s a.out test”命令:

linux的外殼是什么及怎么使用

此時就為a.out文件創建了一個鏈接文件test,而該文件的開頭其實就是“l”,代表著鏈接文件

如果我們要執行a.out文件,就可以使用test:

linux的外殼是什么及怎么使用

p:管道文件

管道文件涉及到進程間通信,這里就不詳講,現在只需要知道有這種文件存在即可

3.文件權限

linux的外殼是什么及怎么使用

可以看到,在這里除了第一個字符是文件類型外,還剩下了9個字符。同時我們知道文件訪問者分為三類,而這9個字符中每三個字符就代表著一種訪問者的訪問權限

(1)文件權限分類

文件權限分為三類即“r”、“w”、“x”

“r”代表著,即閱讀該文件“w”代表著,即修改該文件內容'“x”代表著執行,即執行對應文件

每個文件的訪問者權限都由這三個權限組成。“rwx”的方式排序。如果對應的權限上為“-”,即未擁有該權限

linux的外殼是什么及怎么使用

如上圖中的權限“rwx -xr r-x”,就表示所有者有讀寫執行權限所屬組有讀寫權限,沒有執行權限訪問者有讀和執行權限,沒有寫權限。這里加空格只是為了方便區分,實際顯示不會有空格

(2)權限修改

1.逐個修改

linux中的權限也是支持修改的,修改時要使用“chomd”命令。例如,我們要將下圖中的執行者權限修改為“-wx”,就可以執行“chomd u-r test”:

linux的外殼是什么及怎么使用

這種形式下,“u”代表擁有者“-”代表去掉對應權限。而“g”代表所屬組“o”代表其他人。如果想修改其他訪問者權限,對應的修改“u”即可。如果想加上某種權限,則可以將“-”變更為“+”

當然,增刪權限時也可以用多訪問者多權限的形式,如“chmod u-rwx,g-rwx test”:

linux的外殼是什么及怎么使用

如果想修改所有訪問者的權限,也可以將“u、g、o”修改為“a”帶上對應權限,這里就不演示了。

2.修改文件所有者及所屬組

修改文件所有者,需要有對應的權限,否則則需要使用“sudo”提權。修改文件所有者的命令為“chown 對應用戶 文件名”:

linux的外殼是什么及怎么使用

如果要修改所屬組,就使用“chgrp”命令,使用方法和“chown”相同,這里就不演示了

如果要同時修改擁有者和所屬組,就使用“chown 用戶名:用戶名 文件名”命令,使用方法也是一樣的:

linux的外殼是什么及怎么使用

此處使用的是root用戶,使用無需sudo,普通用戶則需要sudo。

對于other,無需修改,因為除了擁有者和所屬組以外的用戶就是other

3.權限同時修改

我們說過,在計算機中,所以的命令都是0,1信號的方式傳遞的。

權限存在有和無兩種狀態,也是由0,1組成的。“rwx”就可以看做是“111”“---”則可以看做是“000”。而這些二進制如果轉換為八進制,則是“7”和“0”。由此,權限的八進制范圍可以看為是“[0, 7]”。在八進制中,“r”表示4“w”表示2“x”表示1

由此,在修改權限時,我們除了用“u-”這類形式去修改外,還可以以八進制的形式修改。即“chmod 三個訪問者的八進制數字組合 文件名”。如“chmod 777 test”

linux的外殼是什么及怎么使用

這種修改方式,在需要修改多個訪問者權限時,就比第一種逐個修改要便捷

注意:這種方式如果不寫全,如寫“7”“35”這種形式,系統是從后往前,即從other->group->owner的方向修改,因為此時其他權限默認為0不顯示。如下圖:

linux的外殼是什么及怎么使用

3.權限掩碼

其實新建目錄起始權限777,新建文件夾起始權限666。但是我們實際看到的卻不是這樣的。原因就在于創建文件或目錄時會受到umask(權限掩碼)的影響。

(1)權限掩碼的作用

umask值,即權限掩碼中存在的權限,系統會自動配置好。在生成文件或目錄時,都要去掉權限掩碼中的權限

(2)查看umask

要查看umask值,直接輸入“umask”命令即可:

linux的外殼是什么及怎么使用

這里的第一個0我們不用管,在第一個0后面的就是每個訪問者要去掉的權限。即在系統的默認中,每個新建的文件或目錄的所有者無需去掉權限所屬組需要去掉2,即寫權限其他人需要去掉2,即寫權限

linux的外殼是什么及怎么使用

在文件的起始權限666中去掉022,目錄的起始權限777中去掉022就是上圖中的權限。

要注意,普通用戶和root用戶的umask值是不同的。普通用戶的umask值為002root用戶則是022

(3)修改umask值

umask值雖然可以由系統默認生成,但是也可以手動進行修改。

修改方式是“umask 0對應權限”。如“umask 0444”

linux的外殼是什么及怎么使用

可以看到,修改umask值后,新建的文件的默認權限中的對應權限就被去掉了

注意:umask值不是用初始權限去減權限值,而是去掉對應的權限。例如文件的初始權限時666,此時我們將umask值修改為0111。如果用減法就會變成555,即“r-xr-xr-x”。但實際上應該是去掉1對應的“x”權限,即依然是“666”權限,即“rw-rw-rw-”

linux的外殼是什么及怎么使用

有人可能會疑惑,為什么目錄的起始權限時777,而文件的起始權限時666。原因就在于要進入一個目錄,需要的是執行權限,即“x”權限:

linux的外殼是什么及怎么使用

如果是在root用戶下執行上述操作,則可以進入無“x”權限的目錄,因為root用戶不受權限約束

以上就是“linux的外殼是什么及怎么使用”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

彩票| 武隆县| 桓仁| 江北区| 句容市| 通道| 海安县| 平原县| 宣化县| 苏尼特左旗| 高平市| 光山县| 界首市| 京山县| 神农架林区| 富蕴县| 望江县| 嘉祥县| 奈曼旗| 龙里县| 焦作市| 海晏县| 北宁市| 纳雍县| 成都市| 登封市| 山阳县| 印江| 谷城县| 丹寨县| 土默特左旗| 株洲市| 广水市| 临邑县| 丽水市| 龙南县| 涟水县| 宁德市| 兰西县| 大兴区| 中宁县|