linux系統學習:基礎篇(系統介紹以及命令行的使用)快速入門linux系統

Linux 學習筆記(新手入門)

2014年11月29日 星期六 20時44分     

本科實習了十天的linux基礎知識,現在只剩些許的記憶了。短暫的學習時間,只學到了linux的一些最基本的命令。現在抱着一本《linux命令行和shell腳本編程》重新開始linux的學習咯。此文記錄一下自己的學習筆記,讓新手可以快速入門linux系統。

1. Linux基礎知識:

Linux是由四部分組成,缺一不可:

一、Linux內核;

二、GNU工具組件

三、圖形化桌面環境(類似於windows桌面)

四、應用軟件

  將linux內核和GNU工具組件整合起來,就可以創造一個完整的操作系統。不同的linux發行版通常可以歸爲三種:

1. 完整的核心Linux發行版;

2. 專業發行版

3. LiveCD測試發行版

Shell(文本命令行界面CLI(終端控制檯)):

在圖形界面出現之前,和unix系統交互的唯一方式是通過shell提供的文本命令行界面command line interface。 有了圖形界面後,可以通過終端進入shell CLI

虛擬控制檯和圖形界面的切換

虛擬控制檯(文本模式)和圖形模式,文本到圖形 Ctrl-Alt-F7

圖形界面到文本命令 Ctrl-Alt-F[1-6]

Shell提示符

默認的bash shell提示符是美元符號,所有提示符特殊字符都從反斜線(\)開始。可以通過輸入PS1=[提示符字符][提示符字符]\$”進行設置,

Bash 手冊(命令幫助命令)

大多數linux發行版有用以查找shell命令以及其他GNU工具信息的在線手冊,可以通過man命令訪問,只需要在你想要查找的工具的名稱前面輸入man命令,如man passwd.裏面會有關於passwd命令的詳細介紹。看完手冊頁面,按q鍵退出返回。

正斜線(/)反(\linux文件系統

反斜線是用來標識轉移字符,如\n,正斜線是用來劃分目錄路徑。

Linux虛擬目錄結構之有一個稱爲根(root)目錄的基礎目錄,其他文件目錄都是在此目錄下。在根目錄下有一些特別的目錄,稱爲掛載點(mount point)。掛載點是虛擬目錄中用於分配額外存儲設備的目錄。

 

用戶文件是存儲在硬盤中的,掛載在虛擬目錄上,根目錄和掛載點是在虛擬目錄中。

切換目錄命令cd destination

切換目錄命令cd可以將shell會話切換到另一個目錄。

絕對文件路徑:是把完整的路徑寫出來,以代表根目錄的正斜線 / 開頭。

相對文件路徑:允許用戶指定一個基於當前位置的目標文件路徑,而無需從根目錄開始。有兩個特殊字符:

1. 單點符(.,表示當前目錄;

2. 雙點符(..,表示當前目錄的父目錄。

如,a/b/c$ cd ..  返回到b目錄, cd ../..  返回到a目錄,cd ../../e 返回到a目錄下的e目錄。

文件和目錄列表

ls命令顯示當前目錄下的文件和目錄,更多帶參數的用法可以用man ls進行了解。

dir也可以顯示當前目錄下的文件和目錄,跟ls有着相同的用法。

區別:一個是linux一個是windowlinux可以重命名指令,要是可以用dir肯定是命令轉義的指令

參數用法說明

單字母參數通常由英文破折號(-)開始,如 -a.

全字參數以雙英文破折號開始(--)。如--help, --all等。

兩種版本表示的含義一樣。

使用多個參數時,多個雙破折線參數必須分開輸入,而多個單破折線可以組合成一個字符串跟在一個單破折線後面。

問號代表一個字符,星號*通配符代表零個或多個字符。

文件處理命令

創建文件命令: touchtouch命令可以創建任意類型的空文件,但是不能創建文件夾。

vim test.txt 創建一個test文本文件並對其進行編輯。

Vim編輯器編輯文件退出時,按ESC,然後按 :wq進行文件保存並退出,:q表示不保存文件直接退出編輯。:q!表示強制退出編輯。編輯文件時 按i開始插入,編輯文件。

創建文件夾用mkdir命令。

複製文件命令:cp命令,cp source destination

使用通配符*可以將符號該條件的文件都複製到目標目錄中,

重命名文件稱爲移動(mv命令)。

刪除文件叫做移除(removing),rm命令刪除文件。

rmdir命令只能刪除空目錄,

stat命令查看文件狀態信息,file 命令查看文件類型。

查看文件內容的命令:

cat命令可以查看文件的內容。所有內容一次性完整的顯示在屏幕上。無法按照自己想查看的順序查看內容。

more 命令可以查看文件的內容,在顯示每頁數據之後會停下來,可以看到屏幕中顯示此時在文件中的位置。

less 命令和more命令功能差不多,每次顯示一屏文件內容,它不用讀取整個文件,可以上下翻滾查看內容。

tail 命令會顯示文件末尾部分的內容, 可以指定末尾的行數。

head 命令查看頭部。

快捷鍵

Ctrl +L(l) : 大小寫都可以,清除屏幕或輸入(clear)。

exit: 退出當前終端。

who am i :  查看當前賬戶;

 當輸入命令的時候,可以輸入首字母按tab鍵補全單詞(或名字)。

帳戶之間的切換su -student;切換到學生身份,su -root;切換到root用戶

passwd 命令改變linux用戶登錄密碼。

" Ctrl+A"跳到行首。" Ctrl+E"跳到行尾。" Ctrl+SHIFT++"放大屏幕。" Ctrl+"縮小屏幕。

Ctrl+C退出後臺,Ctrl+Z退出前臺。(對不同的系統不一定有用)

網絡配置

使用ifconfig命令查看網絡接口配置。

2. Linux命令中級篇

破解linux登錄密碼

1是單用戶模式、破解密碼。reboot重啓,怎麼破解密碼:將電腦重啓,然後一直按上下鍵,選擇kernel..選項按“e”進入編輯,加一個“1"在後,選擇“b”輸入自己新的密碼,然後“reboot或init 6”重啓,完成。

進程管理

當程序運行在系統上時,我們稱之爲進程(process)。

ps 命令查看當前用戶運行在系統上的進程,只能查看某個特定時間點的信息不能實時更新。

top 命令和ps 命令很像,top命令可以實時的顯示進程信息。

kill 命令可以通過進程號(PID)給進程發送信號,終止該進程。

killall 命令支持通過進程名結束進程,並可以使用通配符。

掛載存儲媒體:linux系統將所有的磁盤都掛載到一個虛擬目錄下,在使用新的存儲媒體之前,你需要把它放到虛擬目錄下,這項工作稱爲掛載(mounting)。

Linux上用來掛載媒體的命令叫做mount。它會輸出當前系統上掛載的設備列表。

從linux系統上移除一個可移動設備時,不能直接移除,應該先卸載它。

卸載設備的命令叫umount。

df 命令用來查看所有已掛載磁盤的使用情況,剩餘多少磁盤空間。常用格式 df -h,把輸出中的磁盤空間按人類可讀的形式顯示。

du 命令可以顯示某個特定目錄的磁盤使用情況,可以用來判斷你係統上某個目錄下是不是有超大文件的快速方法。

排序數據

sort 命令用來對數據進行排序。sort -M 可以將數據按月份排序。sort -n 將數據按數值排序。

sort -r 將數據按降序排序。

搜索數據

grep命令查找或過濾與指定內容相關的數據。

如grep "root" ifconfig eth0  或ifconfig eth0 |grep"root"對ifconfig,etho這兩個文件進行查找與root有關的內容。 

過濾內容:使用參數-v. 

解壓/壓縮數據

壓縮文件格式主要有三種:.bz2 ----bzip2工具,  .gz -----gzip工具, .zip ----工具zip

Bzip2軟件包有以下幾個工具:

bzip2: 用來壓縮文件。bzcat 用來顯示壓縮的文本文件的內容。

bunzip2: 用來解壓壓縮後的.bz2文件。

bzip2recover: 用來嘗試恢復損毀的壓縮文件。

gzipzip工具都與bzip2類似,可以man 查看詳細介紹。

三者的區別:bzip2gzip只能對單個文件a進行解壓和壓縮處理,解壓或壓縮後的文件會自動命名爲a.bz2a.gz。如bzip2 a, 壓縮後的文件爲a.bz2bzip a.txt :壓縮後的文件爲a.txt.bz2。  注意區分壓縮時的文件,一定要注意需要壓縮的文件的類型。

zip可以對整個目錄進行解壓和壓縮處理。如 zip testzip test:對test目錄下的文件進行壓縮並命名爲testzip

歸檔數據

tar命令是unixlinux上最廣泛使用的歸檔工具。

創建一個歸檔文件:tar -cvf test.tar test/ test1/ testtest1目錄下的文件歸檔到test.tar下。

列出tar文件test.tar的內容,但是不解壓文件,tar -tf test.tar

tar -xvf test.tar tar文件test.tar中提取內容。

3. Linux環境變量

bash shell 用環境變量(environment variables)的特性存儲有關shell會話和工作環境的信息。有全局變量和局部變量。全局環境變量不僅對shell會話可見,對所有shell創建的子進程也可見。局部變量只對創建它們的shell可見。 系統環境變量一律使用全大寫字母以區別於普通用戶的環境變量。

全局/局部環境變量

查看全局變量,可用printenv命令。

要顯示單個全局環境變量的值,可用echo命令。當引用環境變量時,必須在環境變量名稱前加一個dollar符號$

set 命令會顯示爲某個特定進程設置的所有環境變量。它也包括全局變量。

系統軟件更新

系統軟件更新:sudo apt-get update 獲得最近的軟件包的列表

sudo apt-get install 安裝包a:安裝需要安裝的安裝包a

設置環境變量

設置局部環境變量:直接輸入變量名a=變量值b。引用變量a的值時,只要用$a輸出的是b。用戶環境變量只能在當前shell會話中使用。

設置全局環境變量:先創建一個局部環境變量,然後再使用export a命令把它導入到全局環境變量中。

刪除環境變量

unset 命令來刪除局部環境變量。如局部環境變量a, 刪除 unset a

pwd 命令是顯示當前工作目錄的路徑。

echo $PATH:查看當前PATH變量的值。PATH中的目錄之間是用冒號分隔的。添加新的搜索目錄到現有的PATH環境變量,不需要重新定義。只需要引用原來的PATH值然後再加上冒號,加上新目錄即可。如PATH=$PATH:/home/test

獲得root權限

如果su - root 輸入密碼登錄成功,就可以直接切換到root

如果不成功,輸入sudo -i ,設置root登錄密碼,此時你會發現你已經是root了。

sudo passwd 用戶名a。設置用戶a的登錄密碼。 

設置別名

alias命令查看已有的別名命令列表,也可以用來創建自己的命令別名,如alias li=’ls -il’。

要永久使用這個別名,需要將其寫入(交互式shell啓動文件)$HOME/.bashrc中。

4. Linux文件權限及文件管理

Linux系統使用/etc/passwd文件來將用戶的登錄名匹配到對應的UID值。Root 用戶賬戶是linux系統的管理員,通常分配給它的UID0.passwd文件是標準的文本文件,任何進入的用戶可以對其進行編輯修改,存在安全隱患。現在,linux系統將用戶密碼保存在一個單獨的文件中/etc/shadow。只有特定的程序才能訪問這個文件。

以下命令只能在root賬戶下使用纔有效。

1. 添加新用戶到linux系統:useradd命令。useradd -m 用戶名test,創建test用戶並建立一個主目錄/home/test

2. 刪除用戶:userdel -r 用戶名:刪除用戶的home目錄以及其他文件。

3. 修改用戶:usermod命令

備註:用戶賬號剛創建時沒有口令,但是被系統鎖定,無法使用,必須爲其指定口令後纔可以使用,即使是指定空口令。指定和修改用戶口令的Shell命令是passwd。

Root權限(修改密碼)

超級用戶root可以爲自己和其他用戶指定口令,普通用戶只能用它修改自己的口令。普通用戶修改自己的口令時,passwd命令會先詢問原口令,驗證後再要求用戶輸入兩遍新口令,如果兩次輸入的口令一致,則將這個口令指定給用戶;而超級用戶root爲用戶指定口令時,就不需要知道原口令。Root使用passwd -d 用戶名test,刪除test用戶的登錄密碼,下次登錄test用戶就不需要密碼了。

 

chpasswd命令爲系統中的大量用戶修改密碼。它能從標準輸入自動讀取登錄名和密碼對(由冒號分隔)列表,給密碼加密,然後爲用戶賬戶設置。

組管理

/etc/group包含組信息。

創建新組:groupadd,在系統上創建新組。它沒有提供將用戶添加到組的選項,可以用usermod命令來添加用戶到該組。用法 Usermod -G 組名 用戶名。Usermod 的兩個參數G/g注意,-G參數將該組添加到用戶的屬組的列表裏,而不會影響默認組。-g參數,指定的組名會替換掉該賬戶的默認組。

修改組:groupmod -n 新組名 原組名。

文件權限

Rwx:可讀可寫可執行。

改變文件的權限:chmod命令,用法:chmod +權限文件名a:給文件a添加b權限。

chmod -權限文件名a:給文件刪除b權限。

chown命令改變文件的屬主,chgrp命令改變文件的屬組。

用法:chown 新的屬主(用戶文件名。chgrp 新的屬組(組名文件名。

chown命令也支持同時改變文件的屬主和屬組,chown 屬主.屬組 文件名。

文件系統介紹

Linux系統支持多種類型的文件系統來管理文件和目錄,每種文件系統都在存儲設備上實現了虛擬目錄結構,只是特性不同。

1. ext文件系統

最早的文件系統是一個類Unix文件系統叫做擴展文件系統(extended filesystem,簡記爲ext),使用虛擬目錄來操作硬件設備,在物理設備上按定長的塊來存儲數據。它採用稱作索引節點的系統來存放虛擬目錄中所存儲文件的信息。Linux通過唯一的數值(索引節點號)來引用索引節點表中的每個索引節點。

2. ext2文件系統

ext文件系統限制多,如文件大小不得超過2GBext2ext的一個擴展。

3. 日誌文件系統:日誌文件系統會先將文件的更改寫入到臨時文件中,數據成功寫入到存儲設備和索引節點表後,才刪除該臨時文件。

操作文件系統

可以在命令行下創建新的文件系統或者修改已有的文件系統。

1. 創建分區

首先,必須在存儲設備上創建分區來容納文件系統,分區可以是整個硬盤或一部分,來容納虛擬目錄的一部分。

fdisk工具幫助管理安裝在系統上的任何存儲設備上的分區。fdisk命令是個交互式程序,允許輸入命令來逐步完成硬盤分區的步驟。

要啓動fdisk命令,必須指定要分區的存儲設備的設備名。用法fdisk 設備;可以通過fdisk -l查看設備。

2. 創建文件系統

分區後創建文件系統格式化該分區,這樣該分區才能開始使用。

創建文件系統的命令有:mkefs, mke2fs, mkfs.ext3, mkfs.ext4, mkreiserfs, mkfs.xfs等。

3. 創建掛載目錄,掛載文件系統

mkdir /mnt/test;

mount /dev/sda6 /mnt/test ; //sda6是新創建的分區(臨時掛載該文件系統)

要永久掛載該文件系統,需要將文件系統添加到/etc/fstab文件中。在文件中加入:

/dev/sda6(新建的分區) /mnt/test(掛載目錄) ext3(文件系統格式) defaults 1 2

 

文件系統出錯處理/恢復

fsck命令用來檢查和修復任意類型的linux文件系統,用法:fsck options filesystem;

邏輯卷管理佈局

邏輯卷管理的核心是他如何處理安裝在系統上的硬盤分區。邏輯卷管理器(logical volume manager, LVM)軟件就是用來做這個的。

 

基礎篇已介紹完畢,linux編程開發等高級篇後續。謝謝!

發佈了22 篇原創文章 · 獲贊 5 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章