文章目錄
1、UNIX和Linux發展史
UNIX是爸爸
Linux兒子(由unix發展而來)
tcp/ip協議也是應運而生的!
linux是天生的網絡操作系統
2、Linux的版本
內核版本:https://www.kernel.org/ 定期更新
- 內核版本下載來,自己加工以後就成了發行版本
發行版本:redhat,centos,ubuntu,紅旗Linux…等等
- 這些發行版本的內核都是一樣的
3、開源的軟件簡介
Apache是一個基金會,裏面有很多開源的項目
開源不代表免費(僅僅是開放源代碼),但開源軟件絕大多數都是免費的,可自由傳播,改良,甚至銷售
開源帶來的好處:產品越來越優秀,越來越安全(因爲,有更多的人蔘與進來。)
4、Linux的應用領域
1、各種網站的後臺操作系統:
比如:https://searchdns.netcraft.com
這個網站可以查看,某個網站使用的系統
2、嵌入式應用
智能家電,航空系統,智能卡,手機,相機…等等
5、Linux注意事項
- Linux的命令嚴格區分大小寫(Linux中的所有字母都是區分大小寫的)
- Linux的所有東西都是文件;包括硬件
- 硬盤文件:/dev/sd[a-p]
- 光盤文件:/dev/sr0等
- Linux文件都是“沒有”後綴名的,是靠 文件權限來區分的
- 但是有一些壓縮包文件(tgz,tar,bz2,gz…),腳本文件(sh),配置文件(conf),網頁文件(html,css,php,java),這些所謂的擴展名,都僅僅是爲了方便管理員來管理文件,沒有擴展名照樣使用。
- Linux的所有存儲設備都得掛載(分配盤符)以後用戶才能使用,比如,硬盤,光盤,U盤
- windows下的程序不能直接在Linux中安裝運行的
6、Linux服務器端的維護
各個目錄的功能(大部分都是一種規範約定)
目錄名 | 目錄作用 |
---|---|
/bin |
存放系統命令的目錄,普通用戶和超級用戶都可以執行,不過放在/bin下的命令在單用戶模式下也可以執行 |
/sibn |
保存和系統環境設置相關的命令,只有超級用戶可以使用這些命令鏡像系統環境的設置,但有些命令可以允許普通用戶查看 |
/uer/bin/ |
存放系統命令的目錄,普通用戶和超級用戶都可以執行,這些命令和系統啓動無關,在單用戶模式下不能執行 |
/usr/sbin/ |
存放根文件系統不必要的系統管理命令,例如多數服務程序,只有超級用戶可以使用,其實,在Linux中,在sbin目錄中的命令只有超級用戶能用,bin下的所有用戶都可以用 |
/boot/ |
系統啓動目錄,保存系統啓動相關的文件,如內核文件和啓動引導程序文件(grub)等 |
/dev/ |
設備文件保存位置,一些硬件文件,硬盤等等 |
/etc/ |
配置文件保存位置。系統內所有采用默認安裝方式(rpm安裝)的服務的配置文件全部在這個目錄保存,如:用戶賬號密碼,服務啓動腳本,一些服務的配置文件 |
/home/ |
普通用戶的家目錄,每個用戶都要有一個默認登錄位置,這個位置就是該用戶的家目錄,所有普通用戶的家目錄就是在/home下建立一個和用戶名相同的目錄,如:用戶user的家目錄:/home/user |
/lib/ |
系統調用的函數庫保存位置 |
/lost+found/ |
當系統意外崩潰或者機器意外關機,而產生的一些文件碎片放在這裏,當系統啓動的過程中fsck工具會檢查這裏,並修復已經損壞的文件系統,這個目錄只在每個分區中出現,例如 /lost+found/就是根分區的備份恢復目錄,/boot/lost+found/ 就是/boot分區的備份恢復目錄 |
/media/ |
掛載目錄,系統建議是用來掛載媒體設備的,例如軟盤和光盤 |
/mnt/ |
掛載目錄,早起Linux中只有這一個掛載目錄,並沒有細分,現在這個目錄系統建議掛載額外設備,例如,u盤,移動硬盤和其他系統的分區 |
/misc/ |
掛載目錄,系統建議用來掛載NFS服務的共享目錄 |
/opt/ |
第三方安裝的軟件保存位置,這個目錄就是防止和安裝其他軟件的位置,比如 jdk,tomcat…,但也不強迫,有的人喜歡放到usr下也是可以的 |
proc |
虛擬文件系統,該目錄中的數據並不保存到硬盤中,而是保存在內存中,主要保存系統的內核,進程,外部設備狀態和網絡裝填燈 |
/sys/ |
虛擬文件系統,和/proc目錄相似,保存在內存中,保存內核相關信息 |
/root/ |
超級用戶的家目錄,即 / |
/srv/ |
服務數據目錄,一些系統服務啓動之後,可以在這個目錄中保存所需要的的數據 |
/tmp/ |
臨時目錄,系統存放臨時文件的目錄,該目錄下所有用戶都可以訪問和寫入,我們建議此目錄中不能重要數據,每次開機最好清空此目錄 |
/usr/ |
系統軟件資源目錄,注意usr不是user的縮寫,而是“Unix Software Resource”的縮寫,所以不是存放用戶數據,而是存放系統軟件資源的目錄,系統中安裝的軟件大多保存這裏 |
/var/ |
動態數據保存位置,主要保存緩存和日誌以及軟件運行所產生的的文件 |
proc和sys是存放在內存中的兩個目錄,重啓會消失。不要往裏面寫東西,東西一來不會保存,而且當你寫滿以後就會系統就會出錯
usr,系統軟件資源目錄(system,software,resource)類似於windows的windows目錄
注意事項:
1、遠程服務器不允許關機,只能重啓
2、重啓服務應該關閉運行着的服務!!
3、不要在服務器訪問高峯運行高負載命令:高負載命令:進行大數據的操作,壓縮,掃描複製等等
4、遠程配置防火牆的時候記得對自己開放,防火牆甄別是通過:ip地址,端口號,net地址,包數據
5、數據和日誌的定時備份,權限的合理分配(最小分配,夠用就行),密碼的強壯性和定時更新,系統啓動的服務越少越好
7、Linux命令
命令的基本格式:
命令 -選項 參數
比如:ls -la /etc
簡化選項和完整選項:-a --a
,單槓和雙槓
個別命令可能不遵循此格式
文件處理
每一個文件都有一個i節點號,每個進程都有一個進程號,每個用戶都有一個標識號碼
`ls` ls ->(類比於) list ,查看當前目錄的所有文件
`ls -a` 所有文件 -> list -all,包括隱藏文件
`ls -l` l -> long 文件的完整信息
`ls -ld` 查看某個目錄的詳細信息,比如 ls -ld /etc
`ls -h` 人性化的顯示數據,比如文件大小,不加h顯示的是字節數
`ls -i` 查看文件的inode號(inode存儲文件的詳細信息),即i節點
完整信息7個部分,分別是:文件類型和權限,文件基數,文件所屬者,文件所屬組,文件大小,文件最後更新時間,文件名
`mkdir` 創建目錄
`mkdir -p` 遞歸創建目錄,即同時創建多個目錄
`cd` 切換目錄
`pwd` 顯示當前目錄
`.` 當前目錄
`..` 上級目錄
`rmdir` [目錄名] 刪除空目錄
`cp 文件目錄或文件` (-p保留的文件屬性,比如時間等等)
`touch [文件名]` 創建文件,文件名可以含有空格(加雙引號),但儘量不要這樣做。
`cat [文件]` 查看文件內容
`cat -n [文件]` 顯示行號
`tac [文件]` 倒敘查看
`more [文件]` 來查看很多內容的文件這時進入查看文件的狀態,
空格或者f來翻頁,回車一行行的瀏覽找到以後,使用q退出瀏覽狀態
`less [文件]` less不僅含有more的所有功能,而且可以使用↑來向上翻行,
pageUp向上翻頁,在瀏覽狀態下輸入 /log ,
這樣他就會在這個文件中搜索log,並且高亮顯示。(即可搜索關鍵字)
`head -n [文件]` 查看文件的前n行內容(n爲數字)
`tail -n [文件]` 查看文件的末尾n行內容(n爲數字)
`tail -f [文件]` 動態顯示文件最後一行的內容,常用來查看日誌動態的變化
`ln -s [軟鏈接名]` ln -s /tmp/sjt 在tmp目錄下創建sjt軟鏈接(軟鏈接即快捷方式),
軟鏈接的權限都是rwx rwx rwx,不加 -s 生成的是硬鏈接,
硬鏈接不可以跨分區,不允許生成指向目錄的快捷方式
權限管理
只有所有者和管理員才能更改權限
{ugoa}
u:所屬者,g:所屬組,o:其他人,a:所有人
{±=}
+:增加權限,-:減少權限,=:重新授予權限(不管原來是什麼,現在就是我授予的權限)
{rwx}
r:可讀權限(4) ,w:可寫權限(2) ,x:可執行權限(1)
可以同時對幾個用戶來分配權限,用逗號隔開即可
只有管理員才能改變文件或者目錄的所有者
`chown [用戶] [文件或者目錄]` 更改所屬者
`chgrp [用戶組] [文件或者目錄]` 更改所屬組
文件搜索
find [搜索範圍] [匹配條件]
`find / -name init` 在根目錄下按照文件名來搜索名叫init的文件
`find / -iname init` -iname,不區分大小寫查詢,* 可以模糊匹配,?可以匹配單個字母
在/etc目錄下搜索
#按文件大小來查找
`find / -size +204800` 在根目錄下查找文件大於100M的文件
`find / -size -204800` 在根目錄下查找文件小於100M的文件
在linux中,文件的大小要換算成“數據塊”
一個數據塊 512字節 0.5k
即 1k=2個數據塊
100M=102400K=204800個數據塊
`find / -user [username]` 根據所有者查找
`find / -group [groupname]` 根據所屬組查找
超過5分鐘的可以用+
多條件查詢:
根據文件類型查找:
find找到的結果,可以再追加命令-exec
或者-ok
,在追加你想要的命令,這樣就可以把你find出來的東西,執行你的命令,-exec
是立刻執行,-ok
是一一確認。
`locate [文件名]` 查找系統文件,但要注意一些臨時目錄是查不着的,要定期維護更新數據,
`updatedb` 更新數據表
`which [命令]` 查看命令所在的目錄
幫助命令
man
和 info
是大同小異的
`man ls` 使用命令man查看 ls 命令的解釋
`whatis [命令]`
`whereis [命令]`
`apropos [配置文件]` 查看配置文件的幫助信息,(不寫配置文件的絕對路徑)
進入以後有些ls的信息,按q
退出
Linux中數字1代表命令的幫助,5代表配置文件的幫助,兩者都有的話優先顯示命令的幫助,你也可以man 5 passwd
`[命令] --help` 查看該命令的一些選項
`help umask` 查看一些內置命令的幫助
什麼是內置命令,你使用which
和whatis
的時候,顯示不出來幫助的一些信息
用戶管理
`useradd [用戶名]` 這一步其實只是創建了一些文件,想要登錄系統,還需要設置密碼
`passwd [用戶名]` 這裏就設置了密碼,即用戶可登錄你的系統。
`who` 查看登錄的用戶
用戶,登錄終端(tty表示本機,pts表示虛擬終端),時間(系統ip地址)
w
命令