Linux基礎入門(20135207 王國伊)

實驗一  Linux系統簡介node

1、實驗心得linux

    首個實驗是簡單介紹了Linux系統的簡介,瞭解Linux系統的歷史和發展。使我受益不淺web

 

 

實驗二  基本概念及操做shell

1、學習目標vim

一、實驗樓環境介紹bash

二、經常使用 Shell 命令及快捷鍵服務器

三、Linux 使用小技巧網絡

四、Linux 桌面環境介紹相對於如今的 Windows 系統,UNIX/Linux 自己是沒有圖形界面的,咱們一般在 Unix/Linux 發行版上看到的圖形界面實際都只是運行在 Linux 系統之上的一套軟件,相似 Windows95 以前的Windows 的圖形界面實則也只是運行在 DOS 環境的一套軟件。而 Linux 上的這套軟件之前是XFree86,如今則是 xorg(X.Org),而這套軟件又是經過 X 窗口系統(X Window System,也常被稱爲X11或X)實現的,X 自己只是工具包及架構協議,而 xorg 即是 X 架構規範的一個實現體,也就是說它是實現了 X 協議規範的一個提供圖形用戶界面服務的服務器,就像實現了 http 協議提供 web 服務的 Apache。若是隻有服務器也是不能實現一個完整的桌面環境的,固然還須要一個客戶端,咱們稱爲 X Client,像以下幾個你們熟知也最流行的實現了客戶端功能的桌面環境KDE,GNOME,XFCE,LXDE,其中就有你看到的,實驗樓目前使用的 XFCE 桌面環境,部分老用戶可能能夠回想起,實驗樓以前使用的環境是 LXDE。這也意味着在 Linux 上你能夠本身選擇安裝不一樣的桌面環境,甚至能夠定製本身的專屬桌面。架構

五、實驗樓環境中全部的默認系統用戶名均爲 shiyanlou,密碼爲 shiyanlouless

2、學習任務

1.Terminal(終端)

一般在咱們使用 Linux 時,咱們並非直接與系統打交道,而是經過一個叫作 Shell 的中間程序來完成的,在圖形界面下爲了實現讓咱們在一個窗口中完成接受用戶輸入和顯示輸出,Linux 系統還提供了一個叫作終端模擬器的程序(Terminal),下面幾個比較常見的終端模擬器,例如 gnome-terminal,kconsole,xterm,rxvt,kvt,nxterm 和 eterm,目前咱們的實驗中的終端程序是 xfce 桌面環境自帶的 xfce-terminal。不過要注意的是這裏所說的終端(Terminal)和控制檯(Console)是有區別的。

2.Shell

一般在圖形界面中對實際體驗帶來差別的不是上述的不一樣發行版的各類終端模擬器,而大都是這個 Shell(殼),有殼就有核,這裏的核就是指的 UNIX/Linux 內核,Shell 是指「提供給使用者使用界面」的軟件(命令解析器),相似於 DOS 下的 command(命令行)和後來的 cmd.exe。普通意義上的 Shell 就是能夠接受用戶輸入命令的程序。它之因此被稱做 Shell 是由於它隱藏了操做系統底層的細節。一樣的 Unix/Linux 下的圖形用戶界面 GNOME 和 KDE,有時也被叫作「虛擬 shell」或「圖形 shell」。

Unix/Linux 操做系統下的 Shell 既是用戶交互的界面,也是控制系統的腳本語言。固然在這點也有別於 Windows 下的命令行,雖然也提供了很簡單的控制語句。在Windows 操做系統下,可能有些用戶歷來都不會直接的使用 Shell,然而在 UNIX 系列操做系統下,Shell 仍然是控制系統啓動、X11 啓動和不少其餘實用工具的腳本解釋程序。

在 UNIX/Linux 中比較流行的常見的 Shell 有 bash,zsh,ksh,csh 等等,Ubuntu 終端默認使用的是 bash,默認的桌面環境是 GNOME 或者 Unity(基於 GNOME),但咱們的環境中使用的分別是zsh 和 xfce。

3.命令行操做體驗

如圖,雙擊桌面上的Xface終端圖標,打開終端,打開終端後會自動運行 Shell 程序,而後咱們就能夠輸入命令讓系統來執行了:

1).重要快捷鍵:

真正學習命令行以前,你先要掌握幾個十分有用,必需掌握的小技巧:[Tab]

使用Tab鍵來進行命令補全,Tab鍵通常鍵盤是在字母Q旁邊,這個技巧給你帶來的最大的好處就是當你忘記某個命令的全稱時你能夠只輸入它的開頭的一部分而後按下Tab鍵就能夠獲得提示或者幫助完成:

 

 

固然不止補全命令,補全目錄,補全命令參數都是沒問題的:

[Ctrl+c]

想一想你有沒有遇到這種狀況,當你在 Linux 命令行中無心輸入了一個不知道的命令,或者錯誤的使用了一個命令,致使在終端裏出現了你沒法預料的狀況,好比,只有光標在閃爍沒法繼續輸入命令,或者不停地在輸出一大堆你不想要的結果。你想要當即中止並恢復到你可控的狀態,那該怎麼辦呢。這時候你就可使用Ctrl+c鍵來強行終止當前程序(你能夠放心它並不會使終端退出)。

嘗試輸入如下命令:

 

 

其餘一些經常使用快捷鍵

按鍵

做用

Ctrl+d

鍵盤輸入結束或退出終端

Ctrl+s

暫定當前程序,暫停後按下任意鍵恢復運行

Ctrl+z

將當前程序放到後臺運行,恢復到前臺爲命令fg

Ctrl+a

將光標移至輸入行頭,至關於Home鍵

Ctrl+e

將光標移至輸入行末,至關於End鍵

Ctrl+k

刪除從光標所在位置到行末

Alt+Backspace

向前刪除一個單詞

Shift+PgUp

將終端顯示向上滾動

Shift+PgDn

將終端顯示向下滾動

2).學會利用歷史輸入命令

使用鍵盤上的方向上鍵,恢復你以前輸入過的命令

3).學會使用通配符

通配符是一種特殊語句,主要有星號(*)和問號(?),用來對對字符串進行模糊匹配(好比文件名,參數名)。當查找文件夾時,可使用它來代替一個或多個真正字符;當不知道真正字符或者懶得輸入完整名字時,經常使用通配符代替一個或多個真正的字符。

終端裏面輸入的通配符是由 Shell 處理的,不是由所涉及到命令語句處理的,它只會出如今命令的「參數值」裏(它不用在 命令名稱裏, 命令不記得,那就用Tab補全)。當 Shell 在「參數值」中遇到了通配符時,Shell 會將其看成路徑或文件名去在磁盤上搜尋可能的匹配:若符合要求的匹配存在,則進行代換(路徑擴展);不然就將該通配符做爲一個普通字符傳遞給「命令」,而後再由命令進行處理。總之,通配符 實際上就是一種 Shell 實現的路徑擴展功能。在 通配符被處理後, Shell 會先完成該命令的重組,而後再繼續處理重組後的命令,直至執行該命令。

先使用 touch 命令建立 2 個文件,後綴都爲 txt:

能夠給文件隨意命名,假如過了很長時間,你已經忘了這兩個文件的文件名,如今你想在你大堆其餘文件中找到這兩個文本文件,就可使用通配符:

在建立文件的時候,若是須要一次性建立多個文件,好比:「love_1_linux.txtlove_2_linux.txt... love_10_linux.txt」。在 Linux 中十分方便:

 

Shell 經常使用通配符:

字符

含義

*

匹配 0 或多個字符

?

匹配任意一個字符

[list]

匹配 list 中的任意單一字符

[!list]

匹配 除list 中的任意單一字符之外的字符

[c1-c2]

匹配 c1-c2 中的任意單一字符 如:[0-9] [a-z]

{string1,string2,...}

匹配 sring1 或 string2 (或更多)其一字符串

{c2..c2}

匹配 c1-c2 中所有字符 如{1..10}

4).學會在命令行中獲取幫助

在 Linux 環境中,若是你遇到困難,可使用man 命令,它是Manual page的縮寫。

Manual pages 是在 UNIX 或類 UNIX 操做系統在線軟件文檔的一種廣泛的形式。 內容包括計算機程序(包括庫和系統調用),正式的標準和慣例,甚至是抽象的概念。用戶能夠經過執行 man 命令調用手冊頁。

你可使用以下方式來得到某個命令的說明和使用方式的詳細介紹:

 

一般狀況下,man 手冊裏面的內容都是英文的,這就要求你有必定的英文基礎。man 手冊的內容不少,涉及了 Linux 使用過程當中的方方面面,爲了便於查找,是作了分冊(分區段)處理的,在Research UNIX、BSD、OS X 和 Linux 中,手冊一般被分爲8個區段,安排以下:

區段

說明

1

通常命令

2

系統調用

3

庫函數,涵蓋了C標準函數庫

4

特殊文件(一般是/dev中的設備)和驅動程序

5

文件格式和約定

6

遊戲和屏保

7

雜項

8

系統管理命令和守護進程

要查看相應區段的內容,就在 man 後面加上相應區段的數字便可,如:

 

全部的手冊頁遵循一個常見的佈局,其爲經過簡單的 ASCII 文本展現而優化,而這種狀況下可能沒有任何形式的高亮或字體控制。通常包括如下部份內容:

NAME(名稱)

該命令或函數的名稱,接着是一行簡介。

SYNOPSIS(概要)

對於命令,正式的描述它如何運行,以及須要什麼樣的命令行參數。對於函數,介紹函數所需的參數,以及哪一個頭文件包含該函數的定義。

DESCRIPTION(說明)

命令或函數功能的文本描述。

EXAMPLES(示例)

經常使用的一些示例。

SEE ALSO(參見)

相關命令或函數的列表。

也可能存在其餘部份內容,但這些部分沒有獲得跨手冊頁的標準化。常見的例子包括:OPTIONS(選項),EXIT STATUS(退出狀態),ENVIRONMENT(環境),BUGS(程序漏洞),FILES(文件),AUTHOR(做者),REPORTING BUGS(已知漏洞),HISTORY(歷史)和COPYRIGHT(版權)。

一般 man 手冊中的內容不少,你可能不太容易找到你想要的結果,不過幸運的是你能夠在 man 中使用搜索,/<你要搜索的關鍵字>,查找到後你可使用n鍵切換到下一個關鍵字所在處,shift+n爲上一個關鍵字所在處。使用Space(空格鍵)翻頁,Enter(回車鍵)向下滾動一行,或者使用j,k(vim編輯器的移動鍵)進行向前向後滾動一行。按下h鍵爲顯示使用幫助(由於man使用less做爲閱讀器,實爲less工具的幫助),按下q退出。

想要得到更詳細的幫助,你還可使用info命令,不過一般使用man就足夠了。若是你知道某個命令的做用,只是想快速查看一些它的某個具體參數的做用,那麼你可使用--help參數,大部分命令都會帶有這個參數,如:

 

3、做業

本課程會在每一節實驗結束部分介紹一個有趣的 Linux 命令,這一節介紹一個能夠輸出圖形字符的命令banner

你能夠先使用以下命令安裝:

 

而後:

 

或者直接使用已安裝命令:

 

還有兩個相似的命令toilet,figlet,做爲做業安裝試用。

 

 

 

 

實驗三  用戶及文件權限管理

1、學習目標

   一、Linux 中建立、刪除用戶,及用戶組等操做。

二、Linux 中的文件權限設置。

2、學習任務

1、Linux 用戶管理

經過第一節課程的學習,你應該已經知道,Linux 是一個能夠實現多用戶登錄的操做系統,好比「李雷」和「韓梅梅」均可以同時登錄同一臺主機,他們共享一些主機的資源,但他們也分別有本身的用戶空間,用於存放各自的文件。但實際上他們的文件都是放在同一個物理磁盤上的甚至同一個邏輯分區或者目錄裏,可是因爲 Linux 的 用戶管理 和 權限機制 ,不一樣用戶不能夠輕易地查看、修改彼此的文件。

下面咱們就來學習一下 Linux 下的帳戶管理的基礎知識。

1.查看用戶

請打開終端,輸入命令:

 

輸入的第一列表示打開當前僞終端的用戶的用戶名(要查看當前登陸用戶的用戶名,去掉空格直接使用 whoami 便可),第二列的 pts/0 中 pts 表示僞終端,所謂僞是相對於 /dev/tty 設備而言的,還記得上一節講終端時的那七個使用 [Ctrl]+[Alt]+[F1][F7] 進行切換的 /dev/tty 設備麼,這是「真終端」,僞終端就是當你在圖形用戶界面使用 /dev/tty7 時每打開一個終端就會產生一個僞終端, pts/0 後面那個數字就表示打開的僞終端序號,你能夠嘗試再打開一個終端,而後在裏面輸入 who am i ,看第二列是否是就變成 pts/1 了,第三列則表示當前僞終端的啓動時間。

who 命令其它經常使用參數

參數

說明

-a

打印能打印的所有

-d

打印死掉的進程

-m

am i,mom likes

-q

打印當前登陸用戶數及用戶名

-u

打印當前登陸用戶登陸信息

-r

打印運行等級

2.建立用戶

在 Linux 系統裏, root 帳戶擁有整個系統至高無上的權利,好比 新建/添加 用戶。

root 權限,系統權限的一種,與 SYSTEM 權限能夠理解成一個概念,但高於 Administrator 權限,root 是 Linux 和 UNIX 系統中的超級管理員用戶賬戶,該賬戶擁有整個系統至高無上的權力,全部對象他均可以操做,因此不少黑客在入侵系統的時候,都要把權限提高到 root 權限,用 Windows 的方法理解也就是將本身的非法賬戶添加到 Administrators 用戶組。更好比安卓操做系統中(基於 Linux 內核)得到 root 權限以後就意味着已經得到了手機的最高權限,這時候你能夠對手機中的任何文件(包括系統文件)執行全部增、刪、改、查的操做。

咱們通常登陸系統時都是以普通帳戶的身份登陸的,要建立用戶須要 root 權限,這裏就要用到 sudo 這個命令了。不過使用這個命令有兩個大前提,一是你要知道當前登陸用戶的密碼,二是當前用戶必須在 sudo 用戶組。shiyanlou 用戶的密碼就是 「shiyanlou」 ,它同時也屬於 sudo 用戶組(稍後會介紹如何查看和添加用戶組)。如今咱們新建一個叫 lilei 的用戶:

 

這個命令不但能夠添加用戶到系統,同時也會默認爲新用戶建立 home 目錄:

 

如今你已經建立好一個用戶,而且你可使用你建立的用戶登陸了,使用以下命令切換登陸用戶:

 

退出當前用戶跟退出終端同樣可使用 exit 命令或者使用快捷鍵Ctrl+d

 

3.用戶組

在 Linux 裏面每一個用戶都有一個歸屬(用戶組),用戶組簡單地理解就是一組用戶的集合,它們共享一些資源和權限,同時擁有私有資源,就跟家的形式差很少,你的兄弟姐妹(不一樣的用戶)屬於同一個家(用戶組),大家能夠共同擁有這個家(共享資源),爸媽對待大家都同樣(共享權限),你偶爾寫寫日記,其餘人未經容許不能查看(私有資源和權限)。固然一個用戶是能夠屬於多個用戶組的,正如你既屬於家庭,又屬於學校或公司。

在 Linux 裏面如何知道本身屬於哪些用戶組呢?

方法一:使用groups命令

 

其中冒號以前表示用戶,後面表示該用戶所屬的用戶組。這裏能夠看到 shiyanlou 用戶同時屬於 shiyanlou 和 sudo 用戶組,每次新建用戶若是不指定用戶組的話,默認會自動建立一個與用戶名相同的用戶組(差很少就至關於家長的意思,或者說是老總)。默認狀況下在sudo用戶組裏的可使用sudo命令得到root權限。

方法二:查看/etc/group文件

 

這裏 cat 命令用於讀取指定文件的內容並打印到終端輸出,後面會詳細講它的使用。 | sort 表示將讀取的文本進行一個字典排序再輸出,而後你將看到以下一堆輸出,你能夠在最下面看到 shiyanlou 的用戶組信息:

 

etc/group 文件格式說明

/etc/group 的內容包括用戶組(Group)、用戶組口令、GID 及該用戶組所包含的用戶(User),每一個用戶組一條記錄。格式以下:

group_name:password:GID:user_list

你看到上面的 password 字段爲一個 'x' 並非說密碼就是它,只是表示密碼不可見而已。

將其它用戶加入 sudo 用戶組

默認狀況下新建立的用戶是不具備 root 權限的,也不在 sudo 用戶組,可讓其加入sudo用戶組從而獲取 root 權限

 

而後你再切換會 lilei 用戶,如今就可使用 sudo 獲取 root 權限了。

4.刪除用戶

刪除用戶是很簡單的事:

 

2、Linux 文件權限

1.查看文件權限

咱們以前已經不少次用到 ls 命令了,如你所見,咱們用它來列出並顯示當前目錄下的文件,固然這是在不帶任何參數的狀況下,它能作的固然不止這麼多,如今咱們就要用它來查看文件權限。

使用較長格式列出文件:

 

文件類型

關於文件類型,這裏有一點你必需時刻牢記Linux 裏面一切皆文件,正由於這一點纔有了設備文件( /dev 目錄下有各類設備文件,大都跟具體的硬件設備相關)這一說,還有 socket(網絡套接字,具體是什麼,感興趣的用戶能夠本身去了解或期待實驗樓的後續相關課程),和 pipe (管道,這個東西很重要,咱們之後將會討論到,這裏你先知道有它的存在便可)。軟連接文件,連接文件是分爲兩種的,另外一種固然是「硬連接」(硬連接不經常使用,具體內容不做爲本課程討論重點,而軟連接等同於 Windows 上的快捷方式,你記住這一點就夠了)

文件權限

讀權限,表示你可使用 cat <file name> 之類的命令來讀取某個文件的內容;寫權限,表示你能夠編輯和修改某個文件; 執行權限,一般指能夠運行的二進制程序文件或者腳本文件,如同 Windows 上的 'exe' 後綴的文件,不過 Linux 上不是經過文件後綴名來區分文件的類型。你須要注意的一點是,一個目錄要同時具備讀權限和執行權限才能夠打開,而一個目錄要有寫權限才容許在其中建立其它文件,這是由於目錄文件實際保存着該目錄裏面的文件的列表等信息

全部者權限,這一點相信你應該明白了,至於所屬用戶組權限,是指你所在的用戶組中的全部其它用戶對於該文件的權限,好比,你有一個艾派德,那麼這個用戶組權限就決定了你的兄弟姐妹有沒有權限使用它破壞它和佔有它。

連接數

連接到該文件所在的 inode 結點的文件名數目(關於這個概念涉及到 Linux 文件系統的相關概念知識,不在本課程的討論範圍,感興趣的用戶能夠本身去了解)。

文件大小

以 inode 結點大小爲單位來表示的文件大小,你能夠給 ls 加上-lh 參數來更直觀的查看文件的大小。

明白了文件權限的一些概念,咱們順帶補充一下關於 ls 命令的一些其它經常使用的用法:

 

其中小 s 爲顯示文件大小,大 S 爲按文件大小排序,若須要知道如何按其它方式排序,請使用「man」命令查詢。

 

2.變動文件全部者

假設目前是 lilei 用戶登陸,新建一個文件,命名爲 「iphone6」

如今,使用如下命令變動文件全部者爲 shiyanlou

如今查看,發現 文件全部者成功修改成 shiyanlou

 

若是你有一個本身的文件不想被其餘用戶讀、寫、執行,那麼就須要對文件的權限作修改,這裏有兩種方式:

一、            二進制數字表示

每一個文件的三組權限(擁有者,所屬用戶組,其餘用戶,記住這個順序是必定的)就對應這一個 "rwx",也就是一個 '7' ,因此若是我要將文件「iphone6」的權限改成只有我本身能夠用那麼就這樣:

二、            加減賦值操做

 

3、做業

相關文章
相關標籤/搜索