初級部分
什么Linux?
發布時間:1991年10月5日
Linux用于服務器作業系統比較多,通常被認為是一套作業系統,實際上它是一系列Linux內核基礎上開發的作業系統的總稱,日常所見比較多的Ubuntu、企業常用的centos其實都是Linux系統,基于Linux內核搞出來的,都可以視為Linux系統大家族的成員
為什么要使用Linux
1、開源
為什么這么多的的設備都選擇使用 Linux?因為它是開源軟體(open source software),具有不同的含義,
使用一個安全的作業系統作業變得必不可少的事,而 Linux 恰好滿足了這個需求,因為它是開源的, 任何人都可以查看代碼并研究來判定是否有一些潛在的能夠造成安全風險的缺陷,
2、多用戶、多任務、多執行緒
Linux系統同時可以支持多個用戶,每個用戶對自己的檔案設備有特殊的權利,能夠保證各用戶之間互不干擾,就像手機開了助手一樣,同時登陸多個qq賬號,當硬體配置非常高時,每個用戶還可以同時執行多個任務、多個執行緒同時作業、提高效率,簡直是完美的一塌糊涂,單憑多用戶而言就完爆其他作業系統,
3、穩定性和高效性
你也許會聽到Windows服務器長時間運行而突然宕機,但你絕不會聽到Linux系統服務器因為長時間不關機會卡死,在Linux上幾乎是不會出現這種情況的,Linux服務器可以無休止的運行下去不宕機,因為它繼承了Unix卓越的穩定性和高效性,正因為它的穩定才獲得了眾多用戶的青睞,因為它的高效,它的使用范圍更加廣闊,然而Linux還可以提供一些高可靠性的服務,比如:LNMP、虛擬化、資料庫服務等等,
4、安全性和SELinux
全性相比其他系統也要安全很多,由于Linux擁有相當龐大的用戶和開源社區支持,因此能很快發現系統漏洞,并迅速發布安全補丁及時更新,同時還具有很強的“免疫力”特點,很少受到病毒攻擊,對于一個開放式系統而言,在方便用戶的同時,很可能存在安全隱患,
不過,利用Linux自帶防火墻(iptables,firewalld)、入侵檢測和安全認證等工具,及時修補系統的漏洞,就能大大提高Linux系統的安全性,讓黑客們無機可乘,同時還有安全增強機制SElinux,在linux內核中提供強制訪問控制,功能非常全面,能夠很好保護系統和服務,不過很多人喜歡把它關閉,這相對安全性就不是很好了,
還有Tcp_wrappers也能夠提供很好的網路服務訪問控制,Linux系統對于用戶和檔案管理權限的管理也是相當出色的,能夠很好的控制權限,保證檔案的機密性,也是其他系統無法比擬,所以Linux系統在一定程度上是堅不可摧的,
5、性能優勢
由于Linux要保證其穩定性,所以并沒有像其它作業系統一樣內核如此臃腫龐大、漏洞百出,隨著Linux內核的不斷更新,不斷提升著優勢,Linux作業系統能把服務器的硬體優勢體現的淋漓盡致,因為Linux系統吸取了Unix系統近1/4世紀發展的經驗,最主要的是Linux開放源代碼,保證系統穩定性,更好的呼叫硬體功能,同時還提供了豐富的系統資源工具top,freee,df,vmstat,dmesg,iostat,sar,uptime等,方便查看資源的利用率,
Linux作業系統和Windows作業系統

Linux系統的搭建
Linux之VMware Workstation16 pro上安裝redhat_榷訓月累-CSDN博客
重置root密碼的方法
Linux之重置密碼的兩種方法_榷訓月累-CSDN博客
Linux目錄的結構

Linux開機程序
- BIOS 上電自檢(POST)
- 引導裝載程式 (GRUB2)
- 內核初始化
- 啟動 systemd,其是所有行程之父,
Linux作業系統的啟動程序_星輝領域-CSDN博客_linux系統啟動程序
硬鏈接與軟鏈接

檔案型別分類
普通檔案:用于存放資料、程式等資訊的檔案,
目錄檔案:是由檔案系統中一個目錄所包含的目錄項組成的檔案,
鏈接檔案:又稱符號鏈接檔案, 用于不同目錄下檔案的共享,實際上它指向另一個檔案,
設備檔案:用于與I/O設備提供連接的一種檔案,分為
塊設備檔案:表示磁盤、光碟等
字符設備檔案:聯系著按照字符進行操作的終端、鍵盤等設備,
管道檔案:主要用于在行程間傳遞資料, 套接字檔案 :套接字(socket)檔案通常用于網路資料連接,
行程
程式: 二進制檔案,靜態 /bin/date, /usr/sbin/httpd,/usr/sbin/sshd, /usr/local/nginx/sbin/ngix
行程: 是程式運行的程序, 動態,有生命周期及運行狀態,
程式和行程的區別
程式是靜態的,它只是一組指令的集合,不具有任何的運行意義,而行程是程式運行的動態程序? 行程和程式并不是一一對應的關系,相同的程式運行在不同的資料集上就是不同的行程? 行程還具有并發性和交往性,而程式卻是封閉的
行程和執行緒的區別
? 一個行程可以擁有多個執行緒,而一個執行緒同時只能被一個行程所擁有
? 執行緒不能單獨執行,但是每一個執行緒都有程式的入口、執行序列以及程式出口,它必須組成行程才能被執行

w 查看當前系統資訊
靜態查看行程
ps注:ps -aux 不同于 ps aux常用選項 :
-a :顯示所有用戶的行程
-u :顯示用戶名和啟動時間
-x :顯示 沒有控制終端的行程
-e :顯示所有行程,包括沒有控制終端的行程
-l :長格式顯示
-w:寬行顯示,可以使用多個 w 進行加寬顯示
動態查看行程top
磁盤管理
1、查看磁盤資訊(塊設備)資訊:lsblk
2、創建磁區磁區的兩種格式:
1)MBR磁區MBR(Master Boot Record,主引導記錄)是傳統的磁區機制,使用BIOS引導的PC設備,尋址空間只有32bit長,最大支持2.19TB支持的磁區數量:4個主磁區或3個主磁區1個擴展磁區
MBR磁區型別:
1>主磁區(primary partition)一塊硬碟最多4個主磁區,主磁區不可以再進行二次磁區,可以用來引導、啟動作業系統 ,同時,主磁區可以直接建立檔案系統,如windows的NTFS,存放資料,
2>擴展磁區(extended partition)一塊硬碟最多一個,加主磁區最多4個,不能創建檔案系統,可以劃分邏輯磁區,
3>邏輯磁區(logical partition)可以創建檔案系統,存放資料,同時,邏輯磁區的數量沒有限制,
2)GPT磁區GPT(GUID Partition Table,全域唯一標識磁區表)是一種比MBR磁區更先進、更靈活的磁盤磁區模式優點:
①在默認情況下,GPT最多可支持128個磁區,
②支持大于2.2TB的總容量及大于2.2TB的磁區,最大支持18EB(1EB=1024PB,1PB=1024TB,1TB=1024GB),
③GPT磁區表自帶備份,
④向后兼容MBR,GPT磁區表上包含保護性的MBR區域,
磁區工具:
fdisk只能用于MBR磁區,gdisk,parted可以用于GPT磁區,fdisk大多數運維作業人員已經習慣這個互動模式,
parted命令在創建洗掉磁區使用命令比較方便,可劃分大于2TB的磁區,但是功能不是太完善,沒有備份還原命令,
gdisk在磁區上命令和fdisk風格一樣, 使用方便,學習難度低且功能強大,推薦使用,
命令部分
檔案操作
查看檔案系統型別命令:ls -l
新建檔案:touch
查看檔案內容:
cat:從第一行開始顯示文本內容(適用于內容較少的)
more:一頁一頁的顯示文本內容(適用于內容較多的)
less:與 more 類似,但是比 more 更好的是,它可以往前翻頁!
head:只看文本的前面幾行
tail:只看文本的后面幾行
復制(copy)檔案或目錄--cp命令
洗掉(remove)檔案或目錄--rm命令
為檔案或目錄建立鏈接(Link)——ln命令
目錄操作
查看當前的作業目錄(Print Working Directory)——pwd命令
切換作業目錄(Change Directory)——cd命令
串列(list)顯示目錄內容——ls命令
創建目錄(make directory)——mkdir命令
統計目錄及檔案的空間占用情況——du命令
vi操作檔案


管道
管道運算子——“|”

輸入/輸出重定向
“>”、“>>”稱為輸出重定向運算子,“<”、“<<”稱為輸入重定向運算子,

壓縮和解壓縮
unzip命令

tar歸檔命令


用戶管理
1.添加新用戶——useradd命令

2.為用戶賬號設定密碼——passwd命令

3.修改用戶屬性——usermod命令

4.洗掉用戶賬號——userdel命令
5.用戶間切換——su(substitute user)命令
用戶組管理
1.創建用戶組——groupadd命令
2.添加/洗掉組成員——gpasswd命令

3.修改用戶組屬性——groupmod命令
4.洗掉組賬戶——groupdel命令
檔案權限



設定檔案權限
1.修改檔案或目錄的權限—chmod(change mode)命令
命令格式 1:chmod [-選項] [ugoa] [+-=] [rwx] 檔案或目錄...
命令格式2:chmod [-選項] nnn 檔案或目錄...
2.修改檔案或目錄的屬主和屬組—chown(change owner)命令
服務部分
防火墻
linux 查看并對外開放埠(防火墻攔截處理) - Sunny_star - 博客園 (cnblogs.com)
linux訪問控制(二)防火墻基礎和netfilter模塊簡述_chinaltx的博客-CSDN博客_linux網路訪問控制方法
ssh連接建立程序原理(埠:22)
遠程連接協議的埠、遠程連接工具型別
ssh連接的原理 - 一個有故事的devops - 博客園 (cnblogs.com)
遠程連接工具: PuTTY、SSH、Xshell、 VNC、secureCRT、xmanager等等
crontab(計劃任務)
周期性計劃任務檔案格式說明
minute: 表示分鐘,可以是從0到59之間的任何整數,*/1
hour:表示小時,可以是從0到23之間的任何整數,
day:表示日期,可以是從1到31之間的任何整數,
month:表示月份,可以是從1到12之間的任何整數,
week:表示星期幾,可以是從0到7之間的任何整數,這里的0或7代表星期日,
command:要執行的命令,可以是系統命令,也可以是自己撰寫的腳本檔案,
在以上各個欄位中,還可以使用以下特殊字符:
星號(*):代表所有可能的值,例如month欄位如果是星號,則表示在滿足其它欄位的制約條件后每月都執行該命令操作,
逗號(,):可以用逗號隔開的值指定一個串列范圍,例如,“1,2,5,7,8,9”
中杠(-):可以用整數之間的中杠表示一個整數范圍,例如“2-6”表示“2,3,4,5,6”
正斜線(/):可以用正斜線指定時間的間隔頻率,例如“/1”表示每兩小時執行一次,同 時正斜線可以和星號一起使用,例如*/10,如果用在minute欄位,表示每十分鐘執行一次,
郵件服務
埠 協議
25 smtp:發送郵件
110 pop3: 接收郵件
143 imap:接收郵件
基于安全
995 pop3s
993 imaps
465 smtps
dns域名決議協議(埠:UDP53)
dns決議程序、資源記錄型別
Linux之DNS配置及案例_榷訓月累-CSDN博客
samba服務
實作檔案共享的埠 445
nfs
實作檔案共享
ftp檔案傳輸協議
埠
- TCP20 命令埠
- TCP21 資料埠
作業方式
主動方式:資料是通過server器主動建立回應
被動方式:資料服務端基于被動方式相應
lvm
面試問得不多,但是實際應用多
web服務
http埠:80
https埠:443
https的建立程序

-
在使用HTTPS是需要保證服務端配置正確了對應的安全證書
-
客戶端發送請求到服務端
-
服務端回傳公鑰和證書到客戶端
-
客戶端接收后會驗證證書的安全性,如果通過則會隨機生成一個亂數,用公鑰對其加密,發送到服務端
-
服務端接受到這個加密后的亂數后會用私鑰對其解密得到真正的亂數,隨后用這個亂數當做私鑰對需要發送的資料進行對稱加密
-
客戶端在接收到加密后的資料使用私鑰(即生成的隨機值)對資料進行解密并且決議資料呈現結果給客戶
-
SSL加密建立
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/303141.html
標籤:其他
