1. 程式人生 > >Ubuntu作業系統學習筆記1(基本概念、常用指令)

Ubuntu作業系統學習筆記1(基本概念、常用指令)

一、Ubuntu

1、什麼是Ubuntu

Ubuntu是一個以桌面應用為主的Linux作業系統。

2、Ubuntu特點

(1)操作簡單,方便使用,安裝人性化。

(2)系統安全方面:Ubuntu預設以普通使用者許可權登入,執行所有與系統相關的任務均需要sudo指令

(3)軟體更新週期短。

二、Linux系統介面管理

作業系統是計算機底層硬體和使用者之間的介面。只有通過作業系統提供的接口才能完成使用者或應用系統對系統硬體的訪問。

1、作業系統介面

作業系統的介面分為使用者介面和程式介面兩大類。使用者介面中又包括命令列使用者介面和圖形使用者介面。

使用者介面屬於高層介面,是使用者和作業系統的介面;程式介面是低階介面,是任何核心外程式與作業系統之間的介面。

2、Linux系統介面

Linux系統提供了命令列和圖形兩種使用者介面以及應用程式。

Linux系統的命令列介面是由命令解釋程式shell提供的文字方式的使用者介面。

Linux系統的圖形介面是基於X Window系統構建的視窗化圖形介面。

3、shell命令介面

     shell是Linux作業系統的最外層,是命令語言,為使用者提供使用作業系統的命令介面,互動式解釋和執行使用者輸入的命令,或者自動的解釋和執行預先設定好的一連串指令。

    同時,還可以作為程式設計語言,他提供了一些專用的命令和語法,並定義了各種變數和引數,提供了許多在高階語言中才具有的控制語句。

(1)命令

完成使用者需要的各種操作。如檔案操作、資料傳輸、程序控制、系統監控。

(2)命令解釋程式shell

命令解釋程式負責接收使用者輸入命令並解釋,然後呼叫相應的命令處理程式去執行。

3、系統呼叫

Linux系統與Windows、UNIX系統一樣都是利用系統呼叫進行核心與使用者空間通訊的。

系統呼叫在系統中的主要用途:

(1)控制硬體。

(2)設定系統狀態或讀取核心資料

(3)程序管理

4、API與系統呼叫的關係

API為應用程式設計介面,通過該介面,程式設計師可以間接的訪問到系統硬體和作業系統資源。在實際應用中,程式設計師大多數呼叫的應用程式設計介面API,而系統管理員使用的多是系統命令。API並不需要與系統呼叫一一對應,可以一對一,一對多,多對多。

三、系統登入、登出和關機

1、Linux是一個多使用者多工的作業系統。每個Linux系統都有一個特殊許可權的使用者,使用者名稱為root(根使用者),對系統具有完全的控制權。其他的普通使用者只有部分控制權。

2、Linux登入方式分為控制檯登入和遠端登入兩種。

3、關機命令:shutdown  重啟命令:reboot

四、Linux檔案系統

參考:https://blog.csdn.net/kyang_823/article/details/73302248

檔案系統是作業系統用於明確磁碟和分割槽上的檔案的方法和資料結構,即檔案在磁碟上的組織方法。

檔案系統由3個部分組成:與檔案管理有關的軟體、被管理的檔案、以及實施檔案管理所需要的結構。

檔案系統是對檔案儲存器空間進行組織和分配、負責檔案儲存並對讀存入的檔案進行保護和檢索的系統。

1、檔案系統的型別:

(1)FAT16:最大優點可以允許多種作業系統訪問。最大隻能支援2GB.

(2)FAT32:可以節省磁碟空間,最大支援2TB

(3)NTFS:跟有效的利用了磁碟空間。

2、Linux檔案系統的架構

Linux作業系統的核心是核心,而檔案系統則是作業系統與使用者進行互動的主要工具。

檔案系統位於磁碟分割槽中;一個硬碟可以有多個分割槽,也可以只有一個分割槽;一個分割槽只能包含一個檔案系統。

Linux檔案系統與Windows有較大的差別。Windows的檔案結構是多個並列的樹狀結構,最頂部的是不同的磁碟(分割槽),如 C、D、E、F等。Linux的檔案結構是單個的樹狀結構,根目錄是“/”,其他目錄都要位於根目錄下。
Linux下磁碟分割槽和目錄的關係如下:
任何一個分割槽都必須對應到某個目錄上,才能進行讀寫操作,稱為“掛載”。
被掛載的目錄可以是根目錄,也可以是其他二級、三級目錄,任何目錄都可以是掛載點。
目錄是邏輯上的區分。分割槽是物理上的區分。
根目錄是所有Linux的檔案和目錄所在的地方,需要掛載上一個磁碟分割槽。

Linux中的每個目錄一般都存放特定型別的檔案,下表列出了各種Linux發行版本的常見目錄:

四、Linux常用命令

1、ls  檢視某個目錄下的所有內容

格式:  ls 【選項】 【目錄名/檔名】

選項:

 -a 列出目錄下的所有檔案,包含以.開頭的隱藏檔案。

 -l 列出目錄或者檔案的詳細資訊

 -t 按修改時間排序顯示檔案或者目錄

 -s 顯示每個檔案的大小

-S 按檔案大小排序

2、cd  用於目錄間的相互切換

格式: cd  【目錄名】

每個檔案都存在一條從根目錄(/)開始的路徑。絕對路徑就是從根目錄(/)開始,迴圈到檔案所在的目錄。相對路徑從當前路徑開始迴圈到它的子目錄。

cd  /    回到根目錄

cd  ..  回到前一目錄

cd ~ 回到宿主目錄

cd - 回到前一目錄

3、pwd  顯示當前工作目錄下的絕對路徑

格式:pwd

4、mkdir 用於建立單個目錄或者多級目錄,但前提在於使用者對於當前目錄有寫許可權

格式: mkdir  【選項】  【目錄名】

選項:-m   在建立目錄的同時設定目錄許可權  如777、744、755

-p 遞迴建立目錄

5、rmdir 刪除目錄

只能用來刪除一個空目錄。即目錄中沒有任何檔案和子目錄

格式:rmdir [-p] 目錄名

-p 遞迴刪除各級空目錄

6、touch 建立檔案

格式: touch 檔名

7、cat 主要用來檢視檔案內容,建立檔案,檔案合併,追加檔案內容等功能

格式:cat 【選項】 【檔名】 ...

選項:

-a  顯示所有字元

-n 對檔案所有行進行編號並顯示行號

8、cp   用來將一個或多個原始檔或者源目錄複製到指定的檔案或目錄中

格式:cp 【選項】<原始檔> 目標

選項:-i   表示以安全詢問的方式進行原始檔的複製。

目標可以是目標路徑,也可以是目標路徑下的檔名,若為目標路徑,即把原始檔複製到目標路徑中,檔名不變。若為目標下的檔名,即以檔案的重新命名方式實現檔案的複製。

9、rm命令   刪除一個目錄中的一個或多個檔案或目錄

格式:rm [選項]  【檔名或目錄】

選項:如果沒有使用- r選項,則rm不會刪除目錄

舉例:

rm 檔名1 檔名2  檔名3

rm  -r  目錄1 目錄2  目錄3

10、mv命令   檔案移動

格式: mv 檔名 路徑名

11、chmod 修改檔案的許可權和檔案的屬性

格式:

chmod [<檔案使用者>+/-/=<許可權型別>] 檔名1 檔名2
(1)檔案使用者:
u:檔案主,檔案或目錄的所有者
g:檔案主所在組群的使用者
o:其他使用者
a:所有使用者
(2)操作符
+:增加許可權
-:刪除、取消許可權
=:賦予給定的許可權,並取消其他許可權
(3)許可權型別:
r:只讀許可權   4
w:寫許可權    2
x:可執行許可權  1
0表示沒有許可權
如:rwx許可權=4+2+1=7
例項:
a+rw  為所有使用者增加讀寫許可權
g+w  為組群使用者增加寫許可權
chmod a=rwx file和chmod 777 file效果相同
chmod ug=rwx,o=x file和chmod 771 file效果相同

12、檔案處理命令

(1)grep 實現在指定的檔案中查詢某個特定的字串

格式:grep  [選項] 關鍵字 檔名

選項:-i  查詢不區分大小寫

(2)head  檢視檔案開頭部分的內容

格式:head [數字選擇] 檔名

數字選項指定要顯示的行數

-5 指定顯示5行

不加數字預設顯示前10行

(3)tail命令  檢視檔案結尾部分

格式:tail  [選項] 檔名

數字選項指定要顯示的行數

(4)wc 對檔案的行數、單詞數、字元數進行統計。

格式:wc [選項] 檔名

選項:

-l 顯示行數

-w 顯示單詞數

-m 顯示字元數

(5)sort 對檔案內容或查詢結果進行排序

格式:sort [選項]  檔名

(6)find 查詢檔案或目錄

格式:find 檔名(或目錄名)

13、壓縮備份命令

(1)bzip2 壓縮命令

格式: bzip2 檔名1 [檔名 2]

壓縮之後原始檔案消失

(2)bunzip2 解壓命令

格式:bunzip2 檔名1 [檔名 2]

舉例:

bzip2 hello.txt

bunzip2 hello.txt.bz2

(3)gzip 壓縮命令 

格式:gzip [-選項] 檔名

-d  解壓

-n 指定壓縮級別  1—9

(4)unzip   解壓.zip檔案

格式:unzip [選項] 檔名.zip

(5)tar命令  對於檔案或者目錄進行打包備份或者解包操作

14、磁碟操作命令

(1)mount命令

格式:mount [-t vfstype] [-o options] device dir

[-t vfstype] : 指定檔案系統的型別,通常不必指定。mount 會自動選擇正確的型別。

[-o options]:主要用來描述裝置或檔案的掛接方式

  loop:用來把一個檔案當成硬碟分割槽掛接上系統

  ro:採用只讀方式掛接裝置

  rw:採用讀寫方式掛接裝置

  iocharset:指定訪問檔案系統所用字符集

device:要掛接(mount)的裝置

dir:裝置在系統上的掛接點(mount point)

舉例:掛載U盤

Linux系統U盤被當做SCSI裝置

第一步:插入U盤之前,檢視硬碟的分割槽情況

fdisk -l

第二步:掛入U盤之後,檢視硬碟分割槽情況。會看到系統多個一個SCSI硬碟 /dev/sdd 和一個磁碟分割槽/dev/ssd1,/dev/ssd1就是要掛在的U盤

第三步:建立一個目錄用來做掛接點

mkdir -p /mnt/usb

第四步:使用掛在命令

mount -t vfat /dev/ssd1 /mnt/usb

通過以上4步可以通過/mnt/usb來訪問U盤了。

(2)umount命令    解除安裝一個檔案系統,它的使用許可權是超級使用者或etc/fstab 中允許使用者,

格式:umount <掛在點/裝置>

(3)df  檢視當前硬碟的分割槽情況

格式:df [選項] [檔案]

選項:

-a:把全部的檔案系統和各分割槽的磁碟使用情況列出來

-i:列出i結點的使用量。

-k:把分割槽的大小和掛上來的檔案分割槽的大小以KB為單位顯示。

-h:把分割槽的大小和掛上來的檔案分割槽的大小以MB為單位顯示。

-t:列出某個檔案系統所有分割槽磁碟空間使用量。

(4)du   檢視當前目錄下所有檔案及目錄的資訊

格式:du [選項]

-a:列出所有檔案及目錄的大小。

-h:以MB或GB顯示檔案或目錄的大小。

-b:以B顯示目錄和檔案大小。

(5)fsck  硬碟檢測,只有root使用者來執行,檢測硬碟是否有問題。

格式:fsck 分割槽名

15、關機重啟命令

(1)shutdown  安全關機

格式:shutdown  [選項] [時間] 【警告資訊】

選項:-h 將系統服務停掉後安全關機

-r:  將系統服務停調後安全重啟。

(2)halt  關機

等於  shutdown -h

(3)reboot  重啟系統