環境: CentOS 6.5
Linux系統目錄結構——樹狀結構
樹狀結構
以下是對目錄的解釋
/ | 根目錄 |
/root | 該目錄爲系統管理員,也稱作超級權限者的用戶主目錄。 |
/usr | 這是一個非常重要的目錄,用戶的很多應用程序和文件都放在這個目錄下 |
/bin | bin是Binary的縮寫, 這個目錄存放着最經常使用的命令 |
/dev | dev是Device(設備)的縮寫, 該目錄下存放的是Linux的外部設備 |
/home | 用戶的主目錄,在Linux中,每個用戶都有一個自己的目錄,一般該目錄名是以用戶的賬號命名的 |
/etc | 存放所有的系統管理所需要的配置文件和子目錄 |
/lib | 存放着系統最基本的動態連接共享庫 |
/media | linux系統會自動識別一些設備,例如U盤、光驅等等,當識別後,Linux會把識別的設備掛載到這個目錄下 |
/mnt | 系統提供該目錄是爲了讓用戶臨時掛載別的文件系統的,我們可以將光驅掛載在/mnt/上,然後進入該目錄就可以查看光驅裏的內容了 |
/ boot | 存放的是啓動Linux時使用的一些核心文件,包括一些連接文件以及鏡像文件 |
/lost+found | 一般情況下是空的,當系統非法關機後,這裏就存放了一些文件 |
/opt | 主機額外安裝軟件所擺放的目錄默認是空的 |
/proc | 一個虛擬的目錄,它是系統內存的映射,我們可以通過直接訪問這個目錄來獲取系統信息。這個目錄的內容不在硬盤上而是在內存裏,我們也可以直接修改裏面的某些文件, |
/sbin | s就是Super User的意思,這裏存放的是系統管理員使用的系統管理程序。 |
/selinux | Redhat/CentOS所特有的目錄,Selinux是一個安全機制,類似於windows的防火牆 |
/srv | 存放一些服務啓動之後需要提取的數據 |
/sys | 這是linux2.6內核的一個很大的變化。該目錄下安裝了2.6內核中新出現的一個文件系統 sysfs |
/tmp | 存放一些臨時文件 |
/usr/bin | 系統用戶使用的應用程序 |
/usr/sbin | 超級用戶使用的比較高級的管理程序和系統守護程序 |
/usr/src | 內核源代碼默認的放置目錄 |
/var | 存放着在不斷擴充着的東西,我們習慣將那些經常被修改的目錄放在這個目錄下。包括各種日誌文件 |
注: 根目錄下的所有目錄都有特定的含義,都存儲着不同功能的文件,可以使用 ls / 命令查看。有幾個目錄是比較重要的,平時需要注意不要誤刪除或者隨意更改內部文件。如 /etc、/bin、 /sbin、/usr/bin、/usr/sbin、/var
Linux基本操作命令
01、ls 指令
語法: ls [選項] [目錄或文件]
功能: 對於目錄,列出該目錄下的所有子目錄與文件。對於文件,將列出文件名以及其他信息
常用選項:
- -a: 列出目錄下的所有文件,包括以 . 開頭的隱含文件
- -d: 將目錄像文件一樣顯示,而不是顯示其下的文件
- -i: 輸出文件的 i 節點的索引信息
- -k: 以 k 字節的形式表示文件的大小
- -l: 列出文件的詳細信息。
- -n: 用數字的 UID,GID 代替名稱
- -F: 在每個文件名後附上一個字符以說明該文件的類型
- -r: 對目錄反向排序
- -t: 以時間排序
- -s: 在l文件名後輸出該文件的大小
- -R: 列出所有子目錄下的文件(遞歸)
- -1: 一行只輸出一個文件
02、pwd 命令
語法: pwd
功能: 顯示用戶當前所在的目錄
03、cd 指令
語法: cd 目錄名
功能: 改變工作目錄。將當前工作目錄改變到指定的目錄下
04、touch指令
語法: touch [選項] 文件…
功能: 創建一個不存在的文件/刷新文件的時間屬性
常用選項:
- -a: 只更改存取時間
- -c: 不建立任何文檔
- -m: 只更改變動時間
- -r: 把指定文檔或目錄的日期時間,統統設成和參考文檔或目錄的日期時間相同
- -t: 使用指定的日期時間,而非現在的時間
05、mkdir指令
語法: mkdir [選項] dirname…
功能: 在當前目錄下創建一個名爲 “dirname”的目錄
常用選項:
- -p: 遞歸創建多個目錄
06、 rmdir指令 / rm 指令
語法: rmdir [-p][dirName] / rm [-f-i-r-v][dirName/dir]
功能: 刪除空目錄 / 刪除文件或目錄
常用選項:
- -f: 即使文件屬性爲只讀(即寫保護),亦直接刪除
- -i: 刪除前逐一詢問確認
- -r: 刪除目錄及其下所有文件
07、man指令
Linux的命令有很多參數,我們不可能全記住,我們可以通過查看聯機手冊獲取幫助
語法: man [選項] 命令
08、cp指令
語法: cp [選項] 源文件或目錄 目標文件或目錄
功能: 複製文件或目錄
常用選項:
- -f 或 --force: 強行復制文件或目錄, 不論目的文件或目錄是否已經存在
- -i 或 --interactive: 覆蓋文件之前先詢問用戶
- -r: 遞歸處理,將指定目錄下的文件與子目錄一併處理。若源文件或目錄的形態,不屬於目錄或符號鏈接,則一律視爲普通文件處理
-R 或 --recursive遞歸處理,將指定目錄下的文件及子目錄一併處理
09、mv指令
語法: mv [選項] 源文件或目錄 目標文件或目錄
功能:
- 視mv命令中第二個參數類型的不同(是目標文件還是目標目錄),mv命令將文件重命名或將其移至一個新的目錄中
- 當第二個參數類型是文件時,mv命令完成文件重命名,此時,源文件只能有一個(也可以是源目錄名),它將所給的源文件或目錄重命名爲給定的目標文件名
- 當第二個參數是已存在的目錄名稱時,源文件或目錄參數可以有多個,mv命令將各參數指定的源文件均移至目標目錄中
常用選項:
- -f :如果目標文件已經存在,不會詢問而直接覆蓋
- -i :若目標文件 已經存在時,就會詢問是否覆蓋
10、cat指令
語法: cat [選項][文件]
功能: 查看目標文件的內容
常用選項:
- -b: 對非空輸出行編號
- -n: 對輸出的所有行編號
- -s: 不輸出多行空行
11、more指令
語法: more [選項][文件]
功能: more命令,功能類似 cat
常用選項:
- -n: 對輸出的所有行編號
- q: 退出more
12、less指令
語法: less [參數] 文件
功能: less與more類似,但使用less可以隨意瀏覽文件,而more僅能向前移動,卻不能向後移動,而且less在查看之前不會加載整個文件。
常用選項:
- -i : 忽略搜索時的大小寫
- -N: 顯示每行的行號
- /字符串:向下搜索“字符串”的功能
- ?字符串:向上搜索“字符串”的功能
- n:重複前一個搜索(與 / 或 ? 有關)
- N:反向重複前一個搜索(與 / 或 ? 有關)
- q:quit
13、head指令
語法: head [參數]… [文件]…
功能: head 用來顯示檔案的開頭至標準輸出中,默認head命令打印其相應文件的開頭10行。
常用選項:
- -n<行數>: 顯示的行數
14、tail指令
語法: tail[必要參數][選擇參數][文件]
功能: 用於顯示指定文件末尾內容,不指定文件時,作爲輸入信息進行處理。常用查看日誌文件。
常用選項:
- -f :循環讀取
- -n<行數> :顯示行數
15、cal指令
語法: cal [參數][月份][年份]
功能: 用於查看日曆等時間信息,如只有一個參數,則表示年份(1-9999),如有兩個參數,則表示月份和年份
常用選項:
- -3: 顯示系統前一個月,當前月,下一個月的月曆
- -j :顯示在當年中的第幾天(一年日期按天算,從1月1號算起,默認顯示當前月在一年中的天數)
- -y: 顯示當前年份的日曆
16、find指令
語法: find pathname -options
功能: 用於在文件樹種查找文件,並作出相應的處理(可能訪問磁盤)
常用選項:
- -name: 按照文件名查找文件。
17、grep指令
語法: grep [選項] 搜尋字符串 文件
功能: 在文件中搜索字符串,將找到的行打印出來
常用選項:
-i : 忽略大小寫的不同,所以大小寫視爲相同
-n : 順便輸出行號
-v: 反向選擇,亦即顯示出沒有 ‘搜尋字符串’ 內容的那一行
18、zip/unzip指令
語法: zip 壓縮文件.zip 目錄或文件
功能: 將目錄或文件壓縮成zip格式
常用選項:
- -r 遞歸處理,將指定目錄下的所有文件和子目錄一併處理
19、 tar指令(重要)
語法: tar [選項] 文件與目錄
功能: 打包/解包,不打開它,直接看內容
常用參數:
- -c :建立一個壓縮文件的參數指令(create 的意思);
- -x :解開一個壓縮文件的參數指令!
- -t :查看 tarfile 裏面的文件!
- -z :是否同時具有 gzip 的屬性?亦即是否需要用 gzip 壓縮?
- -j :是否同時具有 bzip2 的屬性?亦即是否需要用 bzip2 壓縮?
- -v :壓縮的過程中顯示文件!這個常用,但不建議用在背景執行過程!
- -f :使用檔名,請留意,在 f 之後要立即接檔名喔!不要再加參數!
- -C : 解壓到指定目錄
20、 bc指令
bc命令可以很方便的進行浮點運算
21、 uname –r指令
語法: uname [選項]
功能: uname用來獲取電腦和操作系統的相關信息。
常用選項:
- -a或–all 詳細輸出所有信息
22、 重要的幾個熱鍵
- [Tab]: 具有『命令補全』和『檔案補齊』的功能
- [Ctrl]-c : 讓當前的程序『停掉』
- [Ctrl]-d: 鍵盤輸入結束,可以用來取代exit
23、其他命令
- halt :關機
- reboot : 重啓
- ifconfig: 查看IP地址
- history : 查看歷史輸入命令
shell——命令行解釋器
Linux嚴格意義上說的是一個操作系統,我們稱之爲“核心(kernel)“ ,但我們一般用戶,不能直接使用kernel。而是通過kernel的“外殼”程序,也就是所謂的shell,來與kernel溝通。
linux權限管理
Linux下的兩種用戶
- 超級用戶:可以再linux系統下做任何事情,不受限制
- 普通用戶:在linux下做有限的事情。
注: 超級用戶的命令提示符是“#”,普通用戶的命令提示符是“$”。
命令: su [用戶名]
功能: 切換用戶。
文件訪問者的分類
- 文件和文件目錄的所有者——文件屬於誰
- 文件和文件目錄的所有者所在的組的用戶——文件所屬組
- 其它用戶
文件基本權限
- 讀: 對文件而言,具有讀取文件內容的權限;對目錄來說,具有瀏覽該目錄信息的權限
- 寫: 對文件而言,具有修改文件內容的權限;對目錄來說具有刪除移動目錄內文件的權限
- 執行: 對文件而言,具有執行文件的權限;對目錄來說,具有進入目錄的權限
文件權限值的表示方法
權限符號 | 說明 | 八進制 | 二進制 |
---|---|---|---|
r - - | 只讀 | 4 | 100 |
- w - | 只寫 | 2 | 010 |
- - x | 只執行 | 1 | 001 |
r w - | 可讀可寫 | 6 | 110 |
r - x | 可讀可執行 | 5 | 101 |
- w x | 可寫可執行 | 3 | 001 |
r w x | 可讀可寫可執行 | 7 | 111 |
- - - | 無權限 | 0 | 000 |
注: “-”表示不具有該項權限
文件訪問權限的相關設置方法
注: 只有文件擁有着和root纔可以改變文件的權限
01、chmod
功能: 設置文件的訪問權限
語法: chmod [參數] 權限 文件名
02、chown
功能: 修改文件的擁有者
語法: chown [參數] 用戶名 文件名
03、chgrp
功能: 修改文件或目錄的所屬組
語法: chgrp [參數] 用戶組名 文件名
04、umask
**功能:**查看或修改文件掩碼
語法: umask 權限值
注: 實際創建文件權限: mask & ~umask
05、file指令
功能: 辨識文件類型。
語法: file [選項] 文件或目錄…
06、使用 sudo分配權限
- 修改/etc/sudoers文件分配權限
- 使用sudo調用授權的命令(命令前面加sudo,普通用戶臨時添加超級用戶權限執行命令)