Linux的操作系統教程_第1頁
Linux的操作系統教程_第2頁
Linux的操作系統教程_第3頁
Linux的操作系統教程_第4頁
Linux的操作系統教程_第5頁
已閱讀5頁,還剩27頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

Linux操作系統教程從入門到精通·系統化管理與實戰技能全指南Contents課程目錄從零開始系統掌握Linux操作系統,涵蓋環境搭建、命令行、系統管理、網絡安全與自動化運維五大核心模塊。01Linux基礎認知與環境搭建02命令行核心技能03系統管理與服務控制04網絡配置與安全加固05運維實戰與自動化CHAPTER01Linux基礎認知與環境搭建從歷史起源到發行版選擇,構建你的第一個Linux環境ORIGIN&OPENSOURCELinux的起源與開源精神Linux誕生于1991年LinusTorvalds的個人項目,與GNU自由軟件運動結合后成為全球最重要的開源操作系統。01內核誕生:1991年赫爾辛基大學學生LinusTorvalds開發Linux內核原型,在互聯網上公開源代碼,引發全球開發者協作共建。02生態基石:基于GNU自由軟件基金會理念,Linux內核與GNU工具鏈結合形成完整操作系統,奠定開源生態基石。03開源精神:自由使用、自由修改、自由分發,催生了GitHub協作模式和當今蓬勃的開源社區文化。04廣泛應用:全球90%以上云服務器運行Linux,所有Android設備基于Linux內核,Top500超算100%采用。LinusTorvalds·Linux內核創始人DistroComparison主流Linux發行版對比與選擇Linux發行版(Distro)=內核+軟件包+工具鏈,不同發行版面向不同使用場景。初學者應優先選擇社區活躍、文檔完善的發行版,降低學習曲線;企業環境則需關注長期支持和安全更新策略。五大主流Linux發行版特征對比發行版核心特點適用人群包管理器Ubuntu用戶友好、社區活躍、軟件倉庫豐富、6個月定期發布初學者、桌面用戶、開發者aptCentOS/RockyLinux企業級穩定、兼容RHEL、10年長期支持周期服務器運維、企業環境yum/dnfDebian極致穩定、自由軟件理念嚴格、軟件包數量超6萬追求穩定性的資深用戶aptArchLinux極簡設計、滾動更新、高度可定制、Wiki文檔極完善高級用戶、系統原理學習者pacmanKaliLinux預裝600+安全工具、定期安全更新、滲透測試專用網絡安全從業者、滲透測試aptSummary初學者推薦UbuntuDesktop入門,企業服務器環境推薦CentOS/RockyLinux,安全領域推薦KaliLinuxINSTALLATIONGUIDELinux系統安裝方式全指南搭建Linux學習環境有三種主流路徑:物理機安裝性能最佳但門檻較高,虛擬機安裝靈活安全最適合初學者,WSL2則在Windows生態內實現了無縫的Linux體驗。物理機安裝需制作U盤啟動盤并配置BIOS/UEFI引導,手動完成磁盤分區(/、/home、swap)性能最優、硬件利用率最高,適合主力系統或專用服務器最佳性能虛擬機安裝推薦初學者使用VirtualBox或VMware創建隔離環境,支持快照回滾到任意系統狀態不影響宿主系統,可同時運行多個實例對比,最安全的入門方式最安全WSL2子系統PowerShell一鍵安裝Ubuntu,無需虛擬機開銷,啟動快、資源占用低支持與Windows雙向文件訪問,與VSCode無縫集成,適合Web開發最便捷FilesystemLinux文件系統結構(FHS標準)Linux文件系統遵循FHS層級標準,所有文件從根目錄'/'出發形成樹狀結構。理解這一結構是高效使用Linux的前提——知道配置文件、日志和用戶空間各自在哪里,才能快速定位和解決問題。/(根目錄)整個文件系統的起點,所有掛載點和目錄從此衍生,形成統一的樹狀層級結構ROOT/etc存放系統級配置文件,如網絡配置、用戶賬戶、服務啟動腳本,管理員最常訪問CONFIG/var存放運行時可變數據,/var/log保存系統和應用日志,是故障排查與安全審計的關鍵LOG/home·/usr·/tmp用戶主目錄、用戶級應用和庫文件、臨時文件(重啟后自動清空)USER/bin·/sbin分別存放普通用戶和管理員可用的基礎命令,如ls、cp、mount,系統運行核心依賴CMDCHAPTER02命令行核心技能從Shell入門到文本處理三劍客,掌握Linux最強大的交互方式LINUXBASICSShell入門:命令行的力量Shell是用戶與Linux內核之間的命令解釋器,Bash是最主流的Shell實現。命令行是服務器運維的唯一交互方式,掌握Shell是成為Linux高手的必經之路。Shell與Bash—Shell是用戶與內核之間的命令解釋器,Bash(BourneAgainShell)是絕大多數Linux發行版的默認Shell環境命令行不可替代—90%以上云服務器無圖形界面,所有管理操作必須通過命令行完成,這是運維的核心技能Tab補全與歷史命令—Tab鍵自動補全命令名、文件路徑和參數,上下方向鍵翻閱歷史命令,大幅提升操作效率自主查閱文檔—通過man命令和--help參數可隨時查閱官方文檔,是自主學習和解決問題的關鍵能力Terminal—命令行是服務器運維的唯一交互方式Fundamentals基礎命令:文件與目錄操作掌握ls、cd、cp、mv、rm等核心命令及參數,是進行一切高級操作的前提。導航與瀏覽命令01pwd顯示當前工作目錄的完整路徑,ls-la列出所有文件(含隱藏文件)的詳細信息和權限02cd切換目錄:cd~回主目錄,cd..返上級,cd-回到上一次所在目錄善用Tab鍵自動補全路徑,可大幅提升命令輸入效率并減少拼寫錯誤文件操作命令01mkdir-p遞歸創建多層目錄,cp-r遞歸復制整個目錄樹,支持通配符批量操作02mv同時承擔移動和重命名,rm-rf強制遞歸刪除,需極度謹慎以防誤刪系統文件安全提示:rm命令刪除的文件無法從回收站恢復,建議先用ls確認目標文件再執行刪除LinuxCommands文件內容查看與瀏覽命令Linux提供了多種文件內容查看工具,各有其最佳適用場景:cat適合短文件快速查看,less適合大文件分頁瀏覽和搜索,head/tail適合查看文件首尾部分,tail-f則是實時監控日志的運維利器。cat—全文輸出一次性輸出整個文件內容,適合查看短配置文件;對于數百行以上的長文件應使用less分頁瀏覽。catfilenameless—分頁瀏覽支持上下翻頁、/關鍵詞搜索、n/N跳轉匹配項,是查看大型日志文件和長文檔的首選工具。lesslogfile.loghead/tail—首尾截取head-n20查看文件前20行,tail-n20查看文件最后20行,常用于快速檢查配置文件開頭或日志末尾。head-n20·tail-n20tail-f—實時追蹤實時追蹤日志文件變化,是運維人員監控服務狀態和排查線上故障的核心命令。tail-f/var/log/syslogCOMMANDLINETOOLS文本處理三劍客:grep、sed、awkgrep、sed、awk是Linux文本處理的三大核心工具,被稱為"三劍客"。三者配合管道符使用,可高效完成日志分析、批量配置修改與數據提取。01grep·模式匹配搜索grep-inr'error'/var/log/可遞歸搜索目錄并忽略大小寫、顯示行號,是日志排查第一工具grep-inr'error'/var/log/02sed·流式編輯替換sed's/old/new/g'批量替換文本,sed-i直接修改文件,常用于批量更新配置文件中的參數值sed's/old/new/g'·sed-i03awk·結構化數據處理awk'{print$1,$3}'按列提取數據,支持內置變量和條件表達式,可實現復雜的日志分析和統計運算,是處理結構化文本的利器awk'{print$1,$3}'·NR變量·條件過濾04管道符·三劍客串聯管道符|將前一命令輸出作為后一命令輸入,實現鏈式處理。cataccess.log|grep'500'|awk'{print$1}'可一步提取所有500錯誤的來源IP,大幅提升運維效率grep|sed|awk·管道串聯LINUXESSENTIALSI/O重定向與管道:命令組合的藝術I/O重定向和管道符是Linux命令組合的核心機制,體現了Unix'小工具+組合'的設計哲學。通過重定向控制數據流向,通過管道串聯多個命令形成處理鏈,可以用簡單命令的組合完成極其復雜的數據處理任務。01>將命令輸出重定向到文件(覆蓋原內容),>>追加寫入不覆蓋,2>單獨重定向標準錯誤流,實現輸出與錯誤分離,便于日志分類管理>>>2>02管道符|將前一命令的標準輸出直接傳給后一命令作為輸入,構建數據處理流水線。如psaux|grepnginx快速篩選特定進程信息|PIPE03tee命令實現雙向輸出,同時輸出到屏幕和文件,兼顧實時監控與日志留存。常用于編譯安裝等需要查看實時輸出又需保存記錄的場景,如makeinstall2>&1|teebuild.logTEE04重定向與管道的組合可實現強大功能,構建自動化運維腳本。如find/-name'*.log'-mtime+30|xargsrm自動清理30天前的日志文件,結合定時任務實現系統維護自動化COMBOTerminalEditor終端編輯器:Vim核心操作指南Vim是Linux服務器環境中最常用的終端文本編輯器,以模式切換為核心設計理念。雖然學習曲線較陡,但一旦掌握其'普通-插入-命令'三模式體系,編輯效率將遠超圖形編輯器。三種核心模式普通模式為默認狀態,負責光標移動與文本操作;按i進入插入模式用于文字輸入;按:進入命令模式執行保存、替換等高級指令。Normal·Insert·Command普通模式快捷鍵hjkl對應左下上右移動,dd刪除整行,yy復制整行,p粘貼,u撤銷。全部操作無需雙手離開主鍵盤區,大幅提升編輯效率。hjkl·dd·yy命令模式精要:wq保存并退出、:q!強制退出不保存、:%s/old/new/g全文替換。這是遠程服務器環境中編輯配置文件的核心技能。:wq·:q!·:%s入門建議運行vimtutor內置教程練習30分鐘即可掌握基本操作,隨后在日常使用中逐步積累高級技巧與自定義配置,形成個人工作流。30分鐘Scripting·AutomationShell腳本編程基礎Shell腳本將零散的命令組織為可復用的自動化程序,是Linux運維自動化的基石。通過變量、條件判斷、循環和函數等編程結構,Shell腳本可以完成日志輪轉、自動備份、批量部署等重復性任務,將運維人員從繁瑣的手工操作中解放出來。腳本聲明與執行首行#!/bin/bash聲明解釋器,通過chmod+x賦予執行權限后即可像程序一樣直接運行,實現命令的批量化和復用chmod+x編程結構支持支持變量賦值(NAME='value')、條件判斷(if[-ffile];then...)、for/while循環和函數定義,具備完整的編程能力if/for/while實戰:自動備份用tar打包目錄、date生成時間戳文件名、find清理過期備份,配合crontab實現每日定時執行crontab定位與邊界Shell是運維自動化第一步,復雜邏輯應考慮Python等語言替代,Shell更適合做系統級任務的"膠水"和"調度器"Glue&SchedulerCHAPTER03系統管理與服務控制用戶權限模型、軟件包管理與systemd服務控制三大核心管理技能USER&GROUPMANAGEMENT用戶與用戶組管理Linux通過UID/GID體系實現多用戶隔離與權限控制。每個用戶和用戶組都有唯一標識符,用戶信息存儲在/etc/passwd和/etc/shadow中。合理的用戶與組管理是系統安全的基礎——遵循最小權限原則,避免日常操作使用root賬戶。用戶管理每個用戶擁有唯一UID(root為0),useradd創建用戶、passwd設置密碼、usermod修改屬性、userdel刪除用戶UID0用戶組管理用戶組通過GID管理,groupadd創建組、usermod-aG將用戶追加到組,實現批量權限分配GID信息存儲用戶信息存儲在/etc/passwd(基本信息)和/etc/shadow(密碼哈希,僅root可讀),是安全審計重點/etc/shadow安全實踐日常操作使用普通用戶賬戶,僅在需要時通過sudo提權,避免直接使用root賬戶以防止誤操作sudoSECURITY·PERMISSIONS文件權限與訪問控制(rwx模型)Linux采用rwx權限模型對文件進行三級訪問控制,配合SUID、SGID、StickyBit三種特殊權限實現精細化安全策略。755rwx權限模型每個文件對所有者(u)、組(g)、其他人(o)分別設置讀(r=4)、寫(w=2)、執行(x=1)三種基本權限。權限可用數字或符號靈活表示,如755代表rwxr-xr-x。chmod·chown權限配置命令chmod755可快速設置rwxr-xr-x權限,chownuser:group同時修改文件所有者和所屬組,chgrp命令用于單獨變更所屬組身份。4755SUID/SGIDSUID讓執行者臨時獲得文件所有者權限,常用于passwd等敏感命令;SGID使目錄中新建文件自動繼承父目錄的組屬性,便于團隊協作。1777StickyBit廣泛應用于公共目錄如/tmp,確保用戶只能刪除自己創建的文件,有效防止用戶間誤刪或惡意刪除他人重要數據。PRIVILEGEMANAGEMENTsudo權限提升與安全配置sudo機制允許授權的普通用戶在需要時臨時獲取root權限執行特定命令,是Linux最小權限原則的核心實現。通過精細配置sudoers文件,可以精確控制每個用戶能執行哪些特權命令,既保障管理靈活性又最大限度降低安全風險。01sudo允許普通用戶以root身份執行授權命令,sudo-l查看當前用戶被授權的命令列表,所有sudo操作均記錄到系統日志sudo-l02/etc/sudoers是權限配置文件,必須使用visudo命令編輯(內置語法檢查),防止配置錯誤導致權限系統失效visudo03配置示例:'deployALL=(ALL)NOPASSWD:/usr/bin/systemctlrestartnginx'允許deploy用戶無密碼重啟nginx服務NOPASSWD04企業最佳實踐:按角色創建用戶組并分配sudo權限,而非逐一配置個人;定期審計sudo日志(/var/log/secure)檢測異常操作/var/log/securePackageManagement軟件包管理與源碼編譯安裝Linux通過包管理器從官方倉庫安裝軟件,確保依賴關系自動解析和安全更新。Ubuntu/Debian使用apt,CentOS/RHEL使用yum/dnf,Arch使用pacman。對于官方倉庫中沒有的軟件或需要定制編譯參數的場景,則需要通過源碼編譯方式手動安裝。aptUbuntu/Debian體系核心操作——aptupdate更新軟件倉庫索引,aptinstall/remove安裝卸載軟件,aptupgrade升級所有已安裝包并自動處理依賴關系update·install·upgrade查詢檢索——aptsearch搜索可用軟件包,aptshow查看包詳細信息和依賴樹,dpkg-l列出所有已安裝的包及其版本號search·show·dpkgyum/dnfCentOS/RHEL體系包管理操作——yum/dnfinstall/remove安裝卸載軟件,yum/dnfsearch搜索包,yum/dnfupdate全量升級,操作邏輯與apt基本一致install·search·update源碼編譯安裝三步——./configure檢測環境和配置編譯參數→make編譯源代碼→makeinstall安裝到系統指定目錄configure→make→installSERVICEMANAGEMENTsystemd服務管理與控制systemd是現代Linux發行版的標準初始化系統和服務管理器,通過systemctl命令統一管理所有系統服務,提供從啟停到故障排查的完整鏈路。01服務啟停與狀態管理systemctlstart/stop/restart控制服務啟停,enable/disable設置開機自啟,status查看運行狀態和最近日志摘要。02Unit統一抽象模型systemd將一切抽象為Unit:.service(服務)、.mount(掛載)、.timer(定時器)、.socket(套接字),統一管理接口。03服務列表與配置重載list-units--type=service列出所有活躍服務,daemon-reload在修改服務配置后重新加載單元文件。04結構化日志查詢journalctl-u查看指定服務日志,-f實時追蹤,--sincetoday按時間范圍過濾,替代傳統/var/log翻閱方式。CHAPTER04網絡配置與安全加固從IP配置到防火墻規則,構建安全可靠的Linux網絡環境LinuxNetworking網絡配置基礎與故障排查Linux網絡配置涵蓋IP地址分配、路由設置、DNS解析等多個層面。掌握ip、Netplan等配置工具和ping、curl、ss等診斷命令,配合'物理層→IP層→傳輸層→應用層'的分層排查方法論,是高效解決網絡問題的核心能力。接口與路由診斷ipaddr查看所有網絡接口的IP地址和狀態,iproute顯示路由表,ss-tlnp查看監聽端口和對應進程ip·ssNetplan配置管理使用YAML配置文件定義靜態IP、網關和DNS,netplanapply立即生效,替代舊版interfaces文件YAMLDNS與連通性測試DNS配置存儲在/etc/resolv.conf,ping測試連通性,curl-I測試HTTP響應,traceroute追蹤路由DNS·ping分層排查方法論物理連接→IP和路由驗證→端口連通性→應用層服務配置,逐層定位故障根因L1→L7LinuxSecurity·防火墻防火墻配置:iptables與ufw防火墻是Linux服務器抵御外部攻擊的第一道防線。ufw是iptables的簡化前端,適合初學者快速配置;iptables直接操作內核級包過濾規則,功能更強大。正確配置防火墻的核心原則是"默認拒絕、按需開放",且務必確保SSH端口不被意外封鎖。ufw快速入門Ubuntu默認防火墻工具,設置默認拒絕所有入站連接,按需開放SSH與Web端口。命令簡潔直觀,適合初學者快速上手配置服務器安全策略。ufwdefaultdenyincomingiptables內核級過濾Linux內核級包過濾框架,直接操作Netfilter規則鏈。可精細控制數據包流向,添加允許SSH入站規則,功能強大但語法較為復雜,適合高級用戶。-AINPUT-ptcp--dport22firewalld區域管理CentOS/RHEL默認防火墻,使用區域概念管理規則。支持運行時與永久配置分離,持久化開放HTTP等常用服務,無需重啟即可生效。--add-service=http--permanent配置安全鐵律操作前必須確認SSH端口已開放,建議在tmux或screen會話中執行配置。先測試再保存規則,保留備用連接通道,防止意外斷連導致服務器失聯。SSH·tmux/screen·備用連接SecurityConfigurationSSH安全配置與暴力破解防御通過密鑰認證替代密碼登錄、修改默認端口、禁止root遠程登錄、部署fail2ban自動封禁,構建多層防御大幅降低入侵風險。SSH密鑰認證使用ssh-keygen生成RSA/Ed25519密鑰對,將公鑰部署到服務器authorized_keys,在sshd_config中禁用密碼登錄實現免密安全認證。Ed25519/RSA端口修改修改SSH默認端口可避開90%以上的自動化掃描攻擊,修改后需同步更新防火墻規則允許新端口入站。Port22222權限控制在sshd_config中設置PermitRootLoginno禁止root遠程登錄,迫使管理操作通過普通用戶sudo提權,增加攻擊者橫向移動難度。PermitRootLoginnofail2ban自動防御自動監控auth.log中的SSH登錄失敗記錄,超過閾值自動通過iptables封禁來源IP,有效防御暴力破解攻擊。5次/10分鐘Chapter05運維實戰與自動化系統監控、日志分析與定時任務,構建高效運維工作流SYSTEMMONITORING系統資源監控與性能分析Linux系統監控涵蓋CPU、內存、磁盤、進程四大維度。top/htop監控進程資源占用,free評估內存狀況,df/du分析磁盤空間,iostat診斷IO瓶頸。建立系統化的監控排查流程,是快速定位性能問題和預防故障的關鍵能力。top/htop進程監控實時監控進程CPU和內存占用,htop提供彩色界面和交互式操作,按P/M排序可快速定位資源消耗異常的進程。排序鍵P/Mfree內存評估查看內存使用情況,重點關注available字段(含可回收緩存的真實可用內存),而非單純的free字段數值。核心字段availabledf/du磁盤分析df-h查看各磁盤分區使用率和使用量,du-sh/path統計指定目錄空間占用,是磁盤空間告警時的首要排查命令。排查命令df-h系統化診斷路徑top查異常進程→free查內存→df查磁盤→iostat查IO瓶頸→sar查歷史趨勢,形成完整診斷路徑。工具鏈5步SYSTEMADMINISTRATION日志管理與分析Linux日志系統是故障排查和安全審計的核心數據來源。傳統日志存儲在/var/log目錄下并由logrotate自動輪轉管理,systemd的journalctl則提供結構化的統一日志查詢接口。01核心日志文件:syslog(系統日志)、auth.log(認證日志)、nginx/error.log(應用日志)是最常查閱的三大類日志文件,涵蓋系統運行、用戶認證和應用程序的關鍵事件記錄/var/log02日志輪轉管理:logrotate自動執行日志切割、壓縮和過期刪除,配置文件在/etc/logrotate.d/下,防止日志占滿磁盤。支持按大小、日期或自定義條件觸發輪轉,確保日志管理的自動化與可持續性logrotate03結構化查詢:journalctl按服務、時間和優先級組合查詢(如-unginx--since-perr),精準定位故障日志。支持輸出格式定制、實時跟蹤和字段過濾,大幅提升日志檢索效率journalctl04安全分析實戰:grep統計SSH暴力破解來源IP,配合fail2ban實現自動防御與入侵檢測。通過正則匹配異常登錄模式,動態更新防火墻規則,構建主動安全防護體系fail2banLinuxAutomation定時任務(crontab)與自動備份crontab定時任務配合rsync增量同步,構成了Linux運維自動化的基礎框架。通過定時執行備份腳本、日志清理、健康檢查等任務,可以將重復性運維工作完全自動化,顯著降低人為失誤風險并釋放運維人員的時間精力。01crontab定時任

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論