2021-2022-1 20212810《Linux内核原理与分析》第一周作业
實驗中出現(xiàn)的問題:
問題一:
加用戶組的時候,直接復制了,課程中的代碼 ,但是創(chuàng)建失敗了。調查后發(fā)現(xiàn)原因是因為本地的系統(tǒng)中沒有shiyanlou 這個用戶,所以創(chuàng)建用戶分組失敗了。?
實驗一Linux 系統(tǒng)簡介
Linux 就是一個操作系統(tǒng),就像已經(jīng)了解的 Windows(xp,7,8)和 Mac OS 。
如圖,這是操作系統(tǒng)在整個計算機系統(tǒng)中的角色。
我們的 Linux 主要是系統(tǒng)調用和內核那兩層。當然直觀地看,我們使用的操作系統(tǒng)還包含一些在其上運行的應用程序,比如文本編輯器、瀏覽器、電子郵件等。
操作系統(tǒng)始于二十世紀五十年代,當時的操作系統(tǒng)能運行批處理程序。批處理程序不需要用戶的交互,它從文件或者穿孔卡片讀取數(shù)據(jù),然后輸出到另外一個文件或者打印機。
二十世紀六十年代初,交互式操作系統(tǒng)開始流行。它不僅僅可以交互,還能使多個用戶從不同的終端同時操作主機。這樣的操作系統(tǒng)被稱作分時操作系統(tǒng),它的出現(xiàn)對批處理操作系統(tǒng)是個極大的挑戰(zhàn)。許多人嘗試開發(fā)分時操作系統(tǒng), 其中包括一些大學的研究項目和商業(yè)項目。當時有個項目叫做 Multics ,它的技術在當時很具有創(chuàng)新性。 Multics 項目的開發(fā)并不順利,它花費了遠超過預計的資金,卻沒有在操作系統(tǒng)市場上占到多少份額。而參加該項目的一個開發(fā)團體——貝爾實驗室退出了這個項目。他們在退出后開發(fā)了他們自己的一個操作系統(tǒng)—— UNIX 。
UNIX 最初免費發(fā)布并因此在大學里受到歡迎。后來,UNIX 實現(xiàn)了 TCP/IP 協(xié)議棧,成為了早期工作站的操作系統(tǒng)的一個流行選擇。
1990 年,UNIX 在服務器市場上尤其是大學校園中成為主流操作系統(tǒng),許多校園都有 UNIX 主機,當然還包括一些研究它的計算機系的學生。這些學生都渴望能在自己的電腦上運行 UNIX 。
Linux 本身只是操作系統(tǒng)的內核。內核是使其它程序能夠運行的基礎。它實現(xiàn)了多任務和硬件管理,用戶或者系統(tǒng)管理員交互運行的所有程序實際上都運行在內核之上。其中有些程序是必需的,比如說,命令行解釋器(shell),它用于用戶交互和編寫 shell 腳本。
1992-1993 年,Linux 內核具備了挑戰(zhàn) UNIX 的所有本質特性,包括 TCP/IP 網(wǎng)絡,圖形界面系統(tǒng)(X window )。
實驗二 基本概念和操作
相對于現(xiàn)在的 Windows 系統(tǒng),UNIX/Linux 本身是沒有圖形界面的,我們通常在 UNIX/Linux 發(fā)行版上看到的圖形界面實際都只是運行在 Linux 系統(tǒng)之上的一套軟件,類似 Windows95 之前的 Windows 的圖形界面實則也只是運行在 DOS 環(huán)境的一套軟件。
Shell 是指“提供給使用者使用界面”的軟件(命令解析器)。Shell 是可以接受用戶輸入命令的程序。
終端的概念:
通常我們在使用 Linux 時,并不是直接與系統(tǒng)打交道,而是通過一個叫做 Shell 的中間程序來完成的,在圖形界面下為了實現(xiàn)讓我們在一個窗口中完成用戶輸入和顯示輸出,Linux 系統(tǒng)還提供了一個叫做終端模擬器的程序(Terminal)。?
Ubuntu 終端默認使用的是 bash???????。???????
快捷鍵
(1) tab 補全命令,補全目錄、補全命令參數(shù)
(2)Ctrl+c 強行終止當前程序
(3)Ctrl+d 鍵盤輸入結束或退出終端
(4)Ctrl+s 暫停當前程序,暫停后按下任意鍵恢復運行
(5)Ctrl+z 將當前程序放到后臺運行,恢復到前臺為命令fg
(6)Ctrl+a 將光標移至輸入行頭,相當于Home鍵
(7)Ctrl+e 將光標移至輸入行末,相當于End鍵
(8)Ctrl+k 刪除從光標所在位置到行末
(9)Alt+Backspace 向前刪除一個單詞
(10)Shift+PgUp 將終端顯示向上滾動
(11)Shift+PgDn 將終端顯示向下滾動
?
實驗二作業(yè):先使用如下命令安裝:
覺得這字體不好看,那么你還可以使用默認已經(jīng)安裝的一個命令printerbanner:
?????????
實驗三 用戶和權限管理
?1 .查看用戶
打開終端,輸入命令:
在 Linux 系統(tǒng)里,?root?賬戶擁有整個系統(tǒng)至高無上的權限,比如新建和添加用戶?。
一般我們登錄系統(tǒng)時都是以普通賬戶的身份登錄的,要創(chuàng)建用戶需要 root 權限,這里就要用到?sudo?這個命令了。不過使用這個命令有兩個大前提,一是你要知道當前登錄用戶的密碼,二是當前用戶必須在?sudo?用戶組。shiyanlou 用戶也屬于 sudo 用戶組(稍后會介紹如何查看和添加用戶組)。
現(xiàn)在我們新建一個叫?lilei?的用戶:
2.用戶組
在 Linux 里面每個用戶都有一個歸屬(用戶組),用戶組簡單地理解就是一組用戶的集合,它們共享一些資源和權限,同時擁有私有資源。
在 Linux 里面如何知道自己屬于哪些用戶組呢?
查看?/etc/group?文件
?這里?cat?命令用于讀取指定文件的內容并打印到終端輸出,后面會詳細講它的使用。?| sort?表示將讀取的文本進行一個字典排序再輸出,然后你將看到如下一堆輸出,你可以在最下面看到 shiyanlou 的用戶組信息。
你可以使用?grep?命令過濾掉一些你不想看到的結果:
將其它用戶加入 sudo 用戶組
默認情況下新創(chuàng)建的用戶是不具有 root 權限的,也不在 sudo 用戶組,可以讓其加入 sudo 用戶組從而獲取 root 權限:
當然也可以通過?sudo passwd shiyanlou?進行設置,或者你直接關閉當前終端打開一個新的終端。
?
然后你再切換回 lilei 用戶,現(xiàn)在就可以使用 sudo 獲取 root 權限了。?
3.刪除用戶和用戶組
使用?--remove-home?參數(shù)在刪除用戶時候會一并將該用戶的工作目錄一并刪除。如果不使用那么系統(tǒng)會自動在 /home 目錄為該用戶保留工作目錄。
4.Linux 文件權限
文件權限就是文件的訪問控制權限,即哪些用戶和組群可以訪問文件以及可以執(zhí)行什么樣的操作。
Unix/Linux 系統(tǒng)是一個典型的多用戶系統(tǒng),不同的用戶處于不同的地位,對文件和目錄有不同的訪問權限。為了保護系統(tǒng)的安全性,Unix/Linux 系統(tǒng)除了對用戶權限作了嚴格的界定外,還在用戶身份認證、訪問控制、傳輸安全、文件讀寫權限等方面作了周密的控制。
在 Unix/Linux 中的每一個文件或目錄都包含有訪問權限,這些訪問權限決定了誰能訪問和如何訪問這些文件和目錄。
使用較長格式列出文件
補充一下關于?ls?命令的一些其它常用的用法:
- 顯示除了?.(當前目錄)和?..(上一級目錄)之外的所有文件,包括隱藏文件(Linux 下以?.?開頭的文件為隱藏文件)。
- 顯示所有文件大小,并以普通人類能看懂的方式呈現(xiàn):
-
變更文件所有者
切換到 lilei 用戶,然后在 /home/lilei 目錄新建一個文件,命名為?iphone13
?
修改文件權限
切換到 lilei 用戶,嘗試寫入和讀取操作,可以看到 lilei 用戶已經(jīng)不能讀寫這個 iphone11 文件了:
此時出現(xiàn)問題:
經(jīng)常使用沒有權限的用戶操作就會導致出錯。
解決方案:
賦權限
實驗三課后作業(yè):
總結
以上是生活随笔為你收集整理的2021-2022-1 20212810《Linux内核原理与分析》第一周作业的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 金融知识: 北上资金以及南下资金
- 下一篇: Linux学习日记之初始用户管理