




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
項目1認識Linux操作系統項目2初探CentOS8項目3用戶管理項目4文件管理項目5磁盤管理項目6軟件管理項目7網絡管理項目8進程與服務管理項目9學習Shell腳本項目10學習PythonLinux操作系統基礎項目教程(CentOS8)第2版項目1Linux操作系統概述任務1操作系統概述12Linux的誕生與發展3Linux層次結構認識Linux操作系統4Linux版本1操作系統概述由硬件系統和軟件系統兩大部分組成硬件:看得見摸得著的硬件設備軟件:控制計算機硬件運行的指令和數據的集合軟件分為系統軟件和應用軟件計算機系統的組成1操作系統概述硬件系統由運算器、控制器、存儲器、輸入設備和輸出設備組成計算機內部采用二進制表示指令和數據把程序和數據加載到內存中,由控制器負責取出指令并執行馮·諾依曼結構1操作系統概述計算機系統=軟件+硬件操作系統是最重要的基本軟件計算機用戶或應用程序與硬件之間交互的“橋梁”操作系統的主要作用方便用戶使用,提高硬件利用率操作系統基本概念1操作系統概述操作系統的組成狹義:內核廣義:內核+系統調用設備管理作業管理進程管理文件管理存儲管理操作系統基本功能2Linux的誕生與發展2Linux的誕生與發展UNIX在UNIX的發展歷程中有多達上百種UNIX版本1969年,匯編語言開發,取名為Unics1973年,C語言實現第三版內核發展早期,免費提供源代碼從1971至1975年,UNIX發展到第六版1979年從SystemV7開始,開始商業化道路2Linux的誕生與發展單靠一人維護無法及時響應改進訴求Minix最終未能廣泛使用UNIX源碼私有化后,教育領域無法使用Minix的開發不參考UNIX核心代碼Minix意為MiniUNIX,即迷你UNIXMinix與UNIX兼容,主要用于教學與研究Minix2Linux的誕生與發展最初開發Linux內核時LinusTorvalds還是大學生從Minix中學習有關內核設計理念開發工具完全依賴自由軟件,如GCC最初只釋放內核,版本號為0.02構建虛擬團隊共同發展Linux1994年,內核1.0版正式對外發布Linux的誕生2Linux的誕生與發展憑借這些特征Linux在服務器市場大獲成功開源免費硬件需求低安全穩定多用戶多任務多平臺支持Linux的主要特征2Linux的誕生與發展讀研究生期間任助教時認識日后的妻子在澳大利亞被一只企鵝咬過,把企鵝作為Linux吉祥物不能利用Linux直接賺錢,收入來自Linux基金會和其他公司的捐贈獲得計算機先驅獎的第一位芬蘭人和60后一周時間開發出流行的版本控制工具Git“Linux之父”+“終生仁慈的獨裁者”Linux創始人-LinusTorvalds2Linux的誕生與發展實驗室硬件更換,RichardStallman無法繼續開展工作轉向UNIX操作系統,把原來為Lisp開發的軟件移植到UNIX實施路徑:為提高知名度,以“開放源代碼”的方式重新實現UNIX上的常用軟件成立自由軟件基金會,招募其他志愿者參與GNU計劃最成功的自由軟件:GCC和BASHshellLinux與GNU計劃GNU'sNotUnix2Linux的誕生與發展GPL:GeneralPublicLicense防止有人利用自由軟件開發專利軟件Linux也采用GPL授權GNU通用公共許可證自由之零:無論用戶出于何種目的,都可以按照自己的意愿自由地運行該軟件自由之一:用戶可以自由地學習并根據需要修改該軟件自由之二:用戶可以自由地分發該軟件的副本以幫助其他人自由之三:用戶可以自由地分發修改后的軟件,以讓其他人從改進后的軟件中受益四項基本自由3Linux層次結構3Linux層次結構每一部分都是必需的,但是內核是操作系統的核心從內到外:內核、命令解釋層和應用程序內核:與硬件直接交互,是硬件和應用程序的接口命令解釋層:與內核進行交互應用程序:完成各種實際工作的軟件程序Linux層次結構4Linux版本Linux的內核版本被嚴格管理由內核開發小組嚴格控制內核版本格式:主版本.次版本.修訂版本次版本號是偶數:穩定版本次版本號是奇數:測試版本3.0之后不再使用該約定內核版本4Linux版本開源的內核,任何人都可以對內核進行修改基于GPL協議發行Linux套件:內核+配套的應用程序發行版本4Linux版本任務2安裝準備工作12創建和設置虛擬機3安裝CentOS8安裝CentOS84虛擬機快照和克隆1安裝準備工作1安裝準備工作商業版Linux:昂貴,成本高社區版Linux:功能和穩定性滿足學習需求不同的Linux發行版其實是相通的CentOS克隆自RHEL,功能強大、穩定性好選擇合適的Linux發行版清華大學開源鏡像站:/centos浙江大學開源鏡像站:/centos中國科技大學開源鏡像站:/centos華中科技大學開源鏡像站:/centos北京交通大學開源鏡像站:/cento/1安裝準備工作虛擬化技術獲得廣泛應用降低學習成本、方便學習多啟動系統不利于學習在虛擬機中安裝操作系統,自由切換虛擬機共享物理機硬件VMware、VirtualBox、KVM虛擬化技術1安裝準備工作硬件兼容性:能夠在大多數硬件上安裝運行硬盤需求:為虛擬機分配至少需要30GB的虛擬硬盤內存需求:取決于發行版本、安裝類型和安裝功能硬件需求2創建和設置虛擬機2創建和設置虛擬機創建虛擬機(1)安裝好VMware后,選擇【文件】→【新建虛擬機】,或單擊主工作區中的【創建新的虛擬機】2創建和設置虛擬機創建虛擬機(2)采用默認的典型安裝(3)選擇【稍后安裝操作系統】2創建和設置虛擬機創建虛擬機(4)選擇操作系統類型及版本(5)設置虛擬機名稱和存儲路徑2創建和設置虛擬機創建虛擬機(6)指定虛擬機磁盤容量(7)單擊【完成】創建虛擬機2創建和設置虛擬機設置虛擬機(1)單擊【編輯虛擬機設置】2創建和設置虛擬機設置虛擬機(2)設置虛擬機內存、處理器等參數2創建和設置虛擬機設置虛擬機(3)設置虛擬機的安裝源2創建和設置虛擬機設置虛擬機(4)設置虛擬機的網絡連接方式3安裝CentOS83安裝CentOS8安裝CentOS8(1)單擊【開啟此虛擬機】(2)選擇【InstallCentOSLinux8】3安裝CentOS8安裝CentOS8(3)選擇安裝語言(4)安裝信息摘要3安裝CentOS8安裝CentOS8(5)選擇【帶GUI的服務器】(6)選擇【自定義】3安裝CentOS8安裝CentOS8(7)選擇【標準分區】,單擊【點擊這里自動創建他們】(8)根據需要設置分區容量3安裝CentOS8安裝CentOS8(9)單擊【接受更改】(10)設置主機名3安裝CentOS8安裝CentOS8(11)設置ROOT密碼(12)創建普通用戶3安裝CentOS8安裝CentOS8(13)等待安裝結束,結束后單擊【重啟系統】按鈕3安裝CentOS8安裝CentOS8(14)操作系統使用許可協議(15)系統登錄界面3安裝CentOS8安裝CentOS8(16)CentOS8桌面4虛擬機快照和克隆4虛擬機快照和克隆適時使用虛擬機快照做好備份,有備無患保存虛擬機當前的狀態首次安裝好操作系統重要的系統設置前安裝某些軟件前某些實驗或測試前虛擬機快照4虛擬機快照和克隆創建虛擬機快照(2)設置快照信息(1)選擇【虛擬機】→【快照】→【拍攝快照】4虛擬機快照和克隆創建虛擬機快照(3)恢復時選擇相應虛擬機照4虛擬機快照和克隆使用克隆虛擬機功能簡單、省時、快速創建虛擬機虛擬機對應物理機中的文件克隆即復制文件保持虛擬機當前狀態克隆虛擬機4虛擬機快照和克隆克隆虛擬機(2)選擇克隆源(1)選擇【虛擬機】→【管理】→【克隆】4虛擬機快照和克隆克隆虛擬機(4)設置新虛擬機名稱(3)選擇克隆類型4虛擬機快照和克隆克隆虛擬機(5)克隆成功項目2初探CentOS8任務1Linux命令結構12命令行操作技巧3Linux常用命令認識Linux命令行模式1Linux命令結構1Linux命令結構系統管理員最常用的操作環境沒有圖形界面元素接受用戶命令并交給內核執行位置1是標題欄,顯示登錄用戶及主機名位置2是菜單欄位置3顯示Linux命令提示符終端窗口1Linux命令結構包括命令名、選項和參數三部分命令名是必需的,選項和參數可選命令名區分大小寫選項有長短格式之分參數表示命令作用的對象或目標命令名、選項、參數用空格分隔命令的組成命令[選項
][參數
]1Linux命令結構Linux命令舉例[zys@centos8~]$ls //只使入命令名公共模板視頻圖片文檔下載音樂桌面[zys@centos8~]$ls-a //使用短格式選項.圖片.bash_logout.esd_auth..文檔.bash_profile .ICEauthority[zys@centos8~]$ls–all //使用長格式選項,效果與ls-a相同.圖片.bash_logout.esd_auth..文檔.bash_profile.ICEauthority[zys@centos8~]$ls-al //組合使用兩個短格式選項,相當于ls-a-ldrwxr-xr-x.2zyszys62月2017:41公共drwxr-xr-x.2zyszys62月2017:41桌面-rw-------.1zyszys5022月2121:54.bash_history-rw-r--r--.1zyszys181月122021.bash_logout2命令行操作技巧2命令行操作技巧命令行操作技巧-自動補全[zys@centos8home]$log //輸入log后按兩次Tab鍵logger loginctl logout logsavelogin logname logrotate[zys@centos8home]$logname //輸入logn后按一次Tab鍵,然后按Enter鍵執行命令zys[zys@centos8home]$cd/tmp/ //在cd命令后輸入/tm,按一次Tab鍵可自動補全路徑[zys@centos8tmp]$按一次Tab鍵:自動補全命令連續按兩次Tab鍵:提示已有命令提高輸入速度并減少錯誤[zys@centos8tmp]$touchfile_with_a_very_long_name\ //“輸入后按回車鍵>file_with_a_longer_name //換行繼續輸入[zys@centos8tmp]$lsfile_with* //顯示名稱以“file_with”開頭的文件file_with_a_longer_namefile_with_a_very_long_name命令太長時需要換行輸入行末輸入轉義符“\”,按回車繼續輸入“\”后不能有空格2命令行操作技巧命令行操作技巧-換行輸入[zys@centos8tmp]$pingPING()56(84)bytesofdata.64bytesfrom:icmp_seq=1ttl=64time=0.213ms64bytesfrom:icmp_seq=2ttl=64time=0.063ms^C <==按【Ctrl+C】組合鍵強行終止命令命令等待時間太長或執行錯誤的命令按【Ctrl+C】組合鍵強行終止命令2命令行操作技巧命令行操作技巧-強制終止命令【Ctrl+C】[zys@centos8tmp]$catuserinputhere //輸入這一行按回車鍵userinputhere //這一行是回顯的內容,輸入【Ctrl+D】組合鍵表示輸入結束[zys@centos8tmp]$bc3*7 //輸入這一行按回車鍵21 //這一行是結果,輸入【Ctrl+D】組合鍵或quit退出當前會話[zys@centos8tmp]$通常表示用戶輸入的結束在交互式Shell中表示退出當前Shell會話2命令行操作技巧命令行操作技巧-結束用戶輸入【Ctrl+D】3Linux常用命令查看當前工作目錄登錄Shell后默認為用戶主目錄文件和目錄查看類命令-pwd3Linux常用命令[zys@centos8~]$pwd/home/zys在Linux中執行命令時,要知道自己身處何處更改當前工作目錄可以使用絕對路徑或相對路徑不加參數表示切換到用戶主目錄文件和目錄查看類命令-cdLinux常用命令[zys@centos8~]$pwd/home/zys <==當前工作目錄[zys@centos8~]$cd/tmp //切換到目錄/tmp[zys@centos8tmp]$pwd/tmp <==當前工作目錄切換為/tmp[zys@centos8tmp]$cd //不加參數,返回用戶zys的主目錄[zys@centos8~]$pwd/home/zys <==當前工作目錄切換為zys主目錄cd[目標目錄]3文件和目錄查看類命令-cdLinux常用命令[zys@centos8~]$pwd/home/zys <==工作目錄[zys@centos8~]$cd. //進入當前目錄[zys@centos8~]$pwd/home/zys <==工作目錄并未改變[zys@centos8~]$cd.. //進入上一級目錄[zys@centos8home]$pwd/home <==工作目錄變為上一級目錄[zys@centos8home]$cd- //進入上次所在目錄/home/zys[zys@centos8~]$pwd/home/zys[zys@centos8~]$cd~ //進入當前用戶主目錄[zys@centos8~]$pwd/home/zys[zys@centos8~]$cd~root//進入root主目錄bash:cd:/root:權限不夠通過特殊符號簡化表示3查看目錄中有哪些文件和子目錄功能強大,選項眾多文件和目錄查看類命令-lsLinux常用命令ls[-CFRacdilqrtu][目錄名稱]選項功能說明-a列出所有文件,包括以"."開頭的隱藏文件-d將目錄像其它普通文件一樣列出,而不是列出它們的內容-f將文件按磁盤存儲順序列出,而不是按文件名排序輸出-i顯示文件的inode編號-l顯示文件的詳細信息,而且一行顯示一個文件-u將文件按其最近訪問時間排序-t將文件按其最近修改時間排序-c將文件按其狀態修改時間排序-r將輸出結果逆序排列,和-t、-S等選項配合使用-R將目錄及其所有子目錄的內容全部顯示出來-S按文件大小排序,默認大文件在前3Linux常用命令文件和目錄查看類命令-ls示例[zys@centos8~]$ls //只使入命令名公共模板視頻圖片文檔下載音樂桌面[zys@centos8~]$ls-a //使用短格式選項.圖片.bash_logout.esd_auth[zys@centos8~]$ls–all //使用長格式選項,效果與ls-a相同.圖片.bash_logout.esd_auth[zys@centos8~]$ls-al //組合使用兩個短格式選項,相當于ls-a-ldrwxr-xr-x.2zyszys62月2017:41桌面-rw-------.1zyszys5022月2121:54.bash_history文件類型文件權限引用計數用戶和組文件大小文件創建或修改時間文件名3顯示文件全部內容可以同時打開多個文件文件和目錄查看類命令-catLinux常用命令cat[-AbeEnstTuv][文件列表]選項功能說明-b只顯示非空行的行號-E在每行結尾處顯示“$”符號-n顯示所有行的行號-s將連續的多個空行替換為一個空行-T把制表符TAB字符顯示為“^I”[zys@centos8~]$cat/etc/centos-release
CentOSLinuxrelease8.4.2105[zys@centos8~]$cat-n/etc/centos-release
1 CentOSLinuxrelease8.4.2105[zys@centos8~]$cat-n/etc/centos-release/etc/hostname1 CentOSLinuxrelease8.4.2105 2 centos8 3顯示文件頭部內容默認顯示前10行可以按字節顯示文件和目錄查看類命令-headLinux常用命令head[-cnqv]文件名[zys@centos8~]$head/etc/aliases##AliasesinthisfilewillNOTbeexpandedintheheaderfrom…… <==默認顯示10行,此處省略[zys@centos8~]$head-c8/etc/aliases //顯示文件的前8字節##Ali[zys@centos8~]$head-n2/etc/aliases //顯示文件的前2行##AliasesinthisfilewillNOTbeexpandedintheheaderfromLinux中換行符占1個字節3顯示文件尾部內容默認顯示后10行使用-f選項,可以動態刷新文件內容文件和目錄查看類命令-tailLinux常用命令tail[-cnqv]文件名[zys@centos8~]$tail-c9/etc/aliases //顯示文件最后9字節t: marc[zys@centos8~]$tail-n3/etc/aliases //顯示文件最后3行#Personwhoshouldgetroot'smail#root: marc3分頁顯示文件內容less是more的增強版文件和目錄查看類命令-more和
lessLinux常用命令選項功能說明F鍵或空格鍵向下翻一頁D鍵或Ctrl+D向下翻半頁B鍵或Ctrl+B向上翻一頁U鍵或Ctrl+U向上翻半頁方向鍵移動光標回車鍵向下移動一行Q鍵退出more命令[zys@centos8~]$more/etc/aliases……lp: rootsync: rootshutdown: root--更多--(32%) <==第1頁只能顯示32%的內容3統計文件的行數、單詞數和字節數可以同時統計多個文件文件和目錄查看類命令-wcLinux常用命令[zys@centos8~]$wc/etc/aliases //顯示文件行數、單詞數和字節數
972391529/etc/aliases[zys@centos8~]$wc-c/etc/aliases //顯示文件字節數1529/etc/aliases[zys@centos8~]$wc-l/etc/aliases //只顯示文件行數97/etc/aliases[zys@centos8~]$wc-L/etc/aliases //顯示文件最長的行的長度66/etc/aliases[zys@centos8~]$wc-w/etc/aliases //只顯示文件單詞數239/etc/aliaseswc[-clLw]文件名3文本文件中提取符合指定匹配表達式的行與正則表達式配合使用文件和目錄查看類命令-grepLinux常用命令[zys@centos8~]$grep-nweb/etc/aliases //提取包含web字符串的行40:webalizer: root82:www: webmaster83:webmaster: root[zys@centos8~]$grep-n-v"^#"/etc/aliases //反向查找,提取不以#開頭的行9:11:mailer-daemon: postmaster12:postmaster: rootgrep[選項][匹配表達式]文件名3新建文件修改文件時間戳文件和目錄操作類命令-touchLinux常用命令[zys@centos8~]$touch/tmp/file1[zys@centos8~]$ls-l/tmp/file1-rw-rw-r--.1zyszys02月2210:00/tmp/file1[zys@centos8~]$touch-a-t2402221001/tmp/file1[zys@centos8~]$ls-l--time=atime/tmp/file1-rw-rw-r--.1zyszys02月2210:01/tmp/file1[zys@centos8~]$touch-m-t2402221101/tmp/file1[zys@centos8~]$ls-l/tmp/file1-rw-rw-r--.1zyszys02月222024/tmp/file1touch[-acmt]文件名3新建指定大小的數據內容格式轉換文件和目錄操作類命令-ddLinux常用命令[zys@centos8~]$ddif=/dev/zeroof=/tmp/file1bs=1Mcount=5記錄了5+0的讀入記錄了5+0的寫出5242880bytes(5.2MB,5.0MiB)copied,0.00340522s,1.5GB/s[zys@centos8~]$ls-lh/tmp/file1 //注意ls命令的-h選項的用法-rw-rw-r--.1zyszys5.0M2月2210:23/tmp/file1[zys@centos8~]$ddconv=ucaseCentos8isgreat! <==輸入完按【Ctrl+D】組合鍵結束輸入CENTOS8ISGREAT! <==這一行是轉換后的結果3新建目錄可連續創建多級目錄文件和目錄操作類命令-mkdirLinux常用命令[zys@centos8~]$mkdirdir1 //創建一個新目錄[zys@centos8~]$ls-lddir1drwxrwxr-x.2zyszys62月2210:33dir1[zys@centos8~]$mkdirdir2/subdir //不使用-p選項連續創建兩級目錄mkdir:無法創建目錄“dir2/subdir”:沒有那個文件或目錄[zys@centos8~]$mkdir-pdir2/subdir //使用-p選項連續創建兩級目錄[zys@centos8~]$ls-lddir2dir2/subdirdrwxrwxr-x.3zyszys202月2210:34dir2drwxrwxr-x.2zyszys62月2210:34dir2/subdirmkdir[-pm]目錄名3只能刪除空目錄遞歸刪除多級目錄時要求各級子目錄都是空目錄文件和目錄操作類命令-rmdirLinux常用命令[zys@centos8~]$rmdirdir1 //目錄dir1是空的[zys@centos8~]$rmdirdir2 //目錄dir2非空,其中有子目錄subdirrmdir:刪除'dir2'失敗:目錄非空[zys@centos8~]$rmdir-pdir2/subdir //遞歸刪除各級子目錄[zys@centos8~]$ls-lddir1dir2ls:無法訪問'dir1':沒有那個文件或目錄ls:無法訪問'dir2':沒有那個文件或目錄3復制文件使用-r選項復制整個目錄文件和目錄操作類命令-cpLinux常用命令[zys@centos8~]$touchfile1file2[zys@centos8~]$mkdirdir1[zys@centos8~]$cpfile1file2dir1 //復制文件file1和file2到目錄dir1中[zys@centos8~]$cpfile1file3 //復制文件file1為file3,保存在當前目錄中[zys@centos8~]$cpfile2/tmp/file2 //復制文件file2為file4,保存在/tmp主目錄中[zys@centos8~]$cp-rdir1dir2 //自動創建目錄dir2并復制源目錄的內容[zys@centos8~]$lsdir2file1file23移動文件或目錄重命名文件或目錄文件和目錄操作類命令-mvLinux常用命令[zys@centos8~]$mvfile1dir1 //把文件file1移動到目錄dir1中[zys@centos8~]$lsfile1ls:無法訪問'file1':沒有那個文件或目錄[zys@centos8~]$touchfile1 //在當前目錄中重新創建文件file1[zys@centos8~]$rm-ifile1dir1 //注意,此時目錄dir1中已經有文件file1rm:是否刪除普通空文件'file1'?yrm:無法刪除'dir1':是一個目錄 <==使用-i選項會有提示[zys@centos8~]$mvfile2file3 //把文件file2重命名為file33刪除文件或目錄使用-i選項刪除前會有提示使用-f選項刪除前不會有任何提示使用-r選項可以刪除目錄文件和目錄操作類命令-rmLinux常用命令[zys@centos8~]$touchfile1file2[zys@centos8~]$rm-ifile1rm:是否刪除普通空文件'file1'?y <==使用-i選項時有提示[zys@centos8~]$rm-ffile2 <==使用-f選項時沒有提示[zys@centos8~]$mkdirdir1[zys@centos8~]$rm-rfdir1rm[-dfirvR]文件或目錄3以安全的方式關閉或重啟系統所有登錄用戶會收到提示信息功能類似的命令有:halt、poweroff、reboot關機相關命令-shutdownLinux常用命令[zys@centos8~]$shutdown-hnow //立刻關機[zys@centos8~]$shutdown-h21:30 //21:30關機[zys@centos8~]$shutdown-r+10 //10分鐘后重啟系統3shutdown[-arkhncfF]time[提示信息]查看命令幫助信息,包括概述、描述和參數的具體含義等獲取命令幫助-manLinux常用命令3設置時區、日期、時間與遠程NTP服務器的時間同步日期時間管理命令-timedatectlLinux常用命令3[root@centos8~]#timedatectlstatus //顯示日期時間信息
Localtime:四2024-02-2214:28:05CSTUniversaltime:四2024-02-2206:28:05UTCRTCtime:四2024-02-2206:28:03Timezone:Asia/Shanghai(CST,+0800)[root@centos8~]#timedatectlset-timezoneAsia/Shanghai //修改時區[root@centos8~]#timedatectlset-time2024-02-29 //僅修改日期[root@centos8~]#timedatectlset-time23:59:59 //僅修改時間[root@centos8~]#timedatectlset-time"2024-02-2923:59:59"http://同時修改日期和時間查看和設置系統日期時間以不同的格式顯示系統日期時間日期時間管理命令-dateLinux常用命令3[root@centos8~]#date //顯示系統當前日期時間2024年03月01日星期五00:13:24CST[root@centos8~]#date-s"2024-02-2214:43:05" //修改系統日期時間2024年02月22日星期四14:43:05CST[root@centos8~]#date+%m/%d/%Y02/22/24[root@centos8~]#date+%F //相當于+%Y-%m-%d2024-02-22[root@centos8~]#date+"%Y-%m-%d%H:%M:%S"2024-02-2214:44:44其他常用命令Linux常用命令3[zys@centos8~]$who //查看當前系統登錄用戶zystty22024-02-2211:39(tty2)zyspts/12024-02-2211:42()[zys@centos8~]$echo"hello,thisis$USER" //顯示字符串或變量的值hello,thisiszys[zys@centos8~]$uname-a //顯示系統信息Linuxcentos84.18.0-305.3.1.el8.x86_64#1SMPTueJun…[zys@centos8~]$history //顯示最近執行的命令
1exit2pwd[zys@centos8~]$clear //清除終端窗口內容任務2vi與vim12vim工作模式vim文本編輯器3vim高級功能1vi與vim1vi與vimvim是使用Linux的必備工具,必須熟練掌握vim是增強型的vi,功能強大高亮顯示關鍵字和語法錯誤,編程時特別有用多窗口編輯、語法高亮、代碼折疊、代碼補全、編譯及錯誤跳轉vim用于文本編輯,而非文字排版vim概述1vi與vim命令行直接輸入vim,打開空文件vim后跟文件名,打開已有文件啟動vim打開空文件打開已有文件2vim工作模式2vim工作模式啟動vim后首先進入命令模式(commandmode)輸入的是命令而非文本內容可以移動光標、復制和刪除文本等操作vim工作模式-命令模式命令模式-移動光標2vim工作模式命令模式-刪除和復制2vim工作模式在命令模式下輸入I、O、A或R,進入插入模式(insertmode)在插入模式下進行文件編輯輸入的是文本而非命令按Esc鍵回到命令模式vim工作模式-插入模式2vim工作模式在命令模式下輸入:、/或?,進入末行模式(lastlinemode)光標移至最后一行,等待輸入命令而非文本對文件進行查找、替換、保存、退出等操作按Esc鍵回到命令模式vim工作模式-末行模式2vim工作模式末行模式-查找與替換2vim工作模式末行模式-保存和退出2vim工作模式3vim高級功能3vim高級功能vim高級功能-多文件編輯vim后跟多個文件名,一次性打開多個文件可以使用YY和P命令在不同文件間復制數據3vim高級功能vim高級功能-多窗口編輯解決在一個vim窗口中只能顯示一個文件的問題編輯一個文件時參考本文件或其他文件的其他內容3vim高級功能vim高級功能-多窗口編輯多窗口編輯其實只是通過vim子窗口同時顯示多個文件,為用戶提供了更友好的操作體驗。3vim高級功能vim高級功能-區塊編輯區塊是指文件的特定范圍,可以是連續的幾行或幾列,也可以是從某行的某個字符到另一行的某個字符之間的連續范圍,或者文本的某個矩形區域以列為單位復制、粘貼或刪除文本內容項目3Linux用戶管理任務1用戶與用戶組簡介12用戶與用戶組配置文件3管理用戶與用戶組用戶與用戶組1用戶與用戶組簡介1用戶與用戶組簡介以某個用戶的身份登錄Linux用戶組是用戶的邏輯組合,方便管理有名字也有數字標識root用戶擁有最高的權限用戶基本概念2用戶與用戶組配置文件2用戶與用戶組配置文件記錄用戶基本信息每行代表一個用戶每一行包含7個字段,用“:”分隔普通用戶有權查看用戶基本信息-/etc/passwd用戶名密碼UIDGID用戶描述信息主目錄默認Shell2用戶與用戶組配置文件記錄用戶密碼相關信息每行代表一個用戶每一行包含9個字段,用“:”分隔只有root用戶有權查看用戶密碼信息-/etc/shadow用戶名密碼最近一次密碼修改日期最小修改時間間隔密碼有效期密碼到期前的警告天數密碼到期后的寬限天數賬號失效日期保留使用2用戶與用戶組配置文件每行代表一個用戶組每一行包含4個字段,用“:”分隔用戶組信息-/etc/group組名組密碼GID組內用戶3管理用戶與用戶組3管理用戶與用戶組/etc/passwd的第4個字段,指的是指的是用戶主組的GID一對一、一對多、多對一和多對多主組:登錄到系統后自動擁有主組權限附加組:用戶加入的其他組用戶與用戶組的關系3管理用戶與用戶組新建用戶-useradduseradd[-d|-u|-g|-G|-m|-M|-s|-c|-r|-e|-f][參數]用戶名選項功能說明-dhomedir指定用戶的主目錄-uuid指定用戶的UID-ggid|gname指定用戶主組的GID或組名-Ggroups指定用戶的附加組-m強制建立用戶的主目錄-M不要建立用戶的主目錄-sshell指定用戶的默認Shell-ccomment關于用戶的簡短描述-r創建一個系統用戶-eexpiredate指定賬號失效日期-finactive用戶密碼到期后的寬限天數①在/etc/passwd中新增一行用戶基本信息②在/etc/shadow中新增一行用戶密碼信息③在/etc/group中新增一行用戶組基本信息④在/home目錄下創建用戶同名主目錄useradd會做哪些事?3管理用戶與用戶組useradd示例[root@centos8~]#useraddshaw //創建新用戶shaw[root@centos8~]#grepshaw/etc/passwd //新增用戶基本信息shaw:x:1001:1001::/home/shaw:/bin/bash[root@centos8~]#grepshaw/etc/shadow //新增用戶密碼信息shaw:!!:19775:0:99999:7:::[root@centos8~]#grepshaw/etc/group //創建同名用戶組shaw:x:1001:[root@centos8~]#ls-ld/home/shaw //新建同名主目錄drwx------.3shawshaw782月2219:13/home/shaw[root@centos8~]#useradd-u1234-gzystong //手動指定用戶的UID和主組[root@centos8~]#greptong/etc/passwdtong:x:1234:1000::/home/tong:/bin/bash <==1000是用戶組zys的GID[root@centos8~]#greptong/etc/group //未創建同名用戶組[root@centos8~]#3管理用戶與用戶組修改用戶密碼-passwd普通用戶只能修改自己的密碼必須輸入原密碼必須滿足密碼復雜性要求root用戶可以修改普通用戶密碼不用輸入原密碼復雜的密碼雖然麻煩,但是保證系統安全是最重要的3管理用戶與用戶組passwd示例[zys@centos8~]$passwd //修改用戶自己的密碼,無須輸入用戶名更改用戶zys的密碼。Currentpassword: <==在這里輸入原密碼新的密碼: <==在這里輸入新密碼重新輸入新的密碼: <==確認新密碼passwd:所有的身份驗證令牌已經成功更新。[root@centos8~]#passwdzys //以root用戶身份修改zys用戶的密碼更改用戶zys的密碼。新的密碼: <==輸入一個復雜的密碼重新輸入新的密碼: <==再次輸入passwd:所有的身份驗證令牌已經成功更新。3管理用戶與用戶組修改用戶信息-usermod修改已有用戶信息和useradd命令參數基本相同[root@centos8~]#grepshaw/etc/passwdshaw:x:1001:1001::/home/shaw:/bin/bash <==修改前的用戶信息[root@centos8~]#usermod-u1111-g1000shaw[root@centos8~]#grepshaw/etc/passwdshaw:x:1111:1000::/home/shaw:/bin/bash <==注意UID和GID的變化如果主目錄當前不存在,操作能成功嗎?3管理用戶與用戶組刪除用戶-userdel刪除已有用戶,和useradd相反默認刪除同名用戶組默認不刪除主目錄[root@centos8~]#userdel-rshaw //刪除用戶shaw信息及主目錄[root@centos8~]#grepshaw/etc/passwd //userdel執行之后的文件信息[root@centos8~]#grepshaw/etc/shadow[root@centos8~]#grepshaw/etc/group[root@centos8~]#ls-ld/home/shaw
3管理用戶與用戶組新建用戶組-groupadd新建一個用戶組,后跟組名稱[root@centos8~]#groupaddsie //新增用戶組[root@centos8~]#grepsie/etc/groupsie:x:1002: <==在文件/etc/group中添加相應用戶組信息[root@centos8~]#groupadd-g1008ict //添加用戶組時指定GID[root@centos8~]#grepict/etc/groupict:x:1008:grupadd[-g][參數]用戶組名稱3管理用戶與用戶組修改用戶組-groupmodgroupmod[-g|-n][參數]用戶組名稱[root@centos8~]#grepict/etc/groupict:x:1008:[root@centos8~]#groupmod-g1100ict //修改GID為1100[root@centos8~]#grepict/etc/groupict:x:1100:[root@centos8~]#groupmod-nnewictict //修改組名[root@centos8~]#grepnewict
/etc/groupnewict:x:1100:3管理用戶與用戶組刪除用戶組-groupdelgroupdel用戶組名稱[root@centos8~]#grepzys/etc/passwdzys:x:1000:1000:zhangyunsong:/home/zys:/bin/bash[root@centos8~]#grep-E'zys|newict'/etc/groupzys:x:1000:newict:x:1100:[root@centos8~]#groupdelnewict //刪除用戶組newict[root@centos8~]#grepnewict/etc/group //刪除用戶組newict成功[root@centos8~]#groupdelzys //刪除用戶組zysgroupdel:不能移除用戶“zys”的主組不能刪除用戶主組3管理用戶與用戶組管理組成員-groupmemsgroupmems[-a|-d|-l|-p][參數]用戶組[root@centos8~]#groupmems-l-gdevteam //查看用戶組內有哪些用戶zys[root@centos8~]#groupmems-atong-gdevteam //向devteam組中添加用戶tong[root@centos8~]#groupmems-l-gdevteamzystong[root@centos8~]#groupmems-dtong-gdevteam //從devteam組中移除用戶tong[root@centos8~]#groupmems-l-gdevteamzys把用戶添加到用戶組或從組中移除3管理用戶與用戶組修改有效組-newgrp[zys@centos8~]$groupszys //當前登錄用戶是zyszys:zysdevteam <==主組是zys,同時屬于附加組devteam[zys@centos8~]$touchfile1[zys@centos8~]$newgrpdevteam //將有效組設置為devteam[zys@centos8~]$touchfile2[zys@centos8~]$ls-lfile1file2-rw-rw-r--.1zyszys02月2220:13file1 <==文件file1的屬組是zys-rw-r--r--.1zysdevteam02月2220:14file2 <==file2的屬組為devteam修改用戶的有效組,作為創建文件的屬組任務2切換用戶1su命令2sudo命令1su命令su命令-切換用戶[zys@centos8~]$su–root //從用戶zys切換到root用戶密碼: <==在這里輸入root用戶的密碼[root@centos8~]#su–zys //從root用戶切換到普通用戶時,不需要輸入密碼[zys@centos8~]$exit //退出用戶zys,返回root用戶[root@centos8~]#exit //退出root用戶,返回用戶zys[zys@centos8~]$用戶權限各不相同切換到root用戶需要root密碼root用戶切換普通用戶不需要密碼1su命令su命令-執行命令后返回[zys@centos8~]$su--c"grepzys/etc/shadow" //兩個“-”之間有空格密碼: <==在這里輸入root用戶的密碼zys:$6$DL7Lw…BkW3in20:19775:10:30:5::: <==這一行是grep命令的結果[zys@centos8~]$ //當前用戶仍然是zys暫時借用root用戶身份執行特權命令執行完恢復普通用戶1su命令2sudo命令sudo命令-sudo的優勢使用su命令切換到root用戶需要root用戶的密碼,容易造成泄漏普通用戶使用sudo命令可以在不知道root用戶密碼的情況下執行某些特權操作,前提是root用戶授予普通用戶使用sudo命令執行這些特權操作的權限,即為普通用戶“提權”默認情況下只有root用戶能夠執行sudo命令。要想讓普通用戶也有執行sudo命令的權限,root用戶必須正確配置文件/etc/sudoers建議通過visudo命令修改文件/etc/sudoers,退出時會檢查語法是否正確,如果配置錯誤,則會有相應提示2sudo命令sudo命令-為單個用戶提權[root@centos8~]#visudo
zys ALL=(ALL)ALL <==添加這一行內容,然后退出visudo[root@centos8~]#exit
[zys@centos8~]$sudogrepzys/etc/shadow
[sudo]zys的密碼: <==注意,這里輸入的是用戶zys的密碼zys:$6$DL7LwhUUxxxkW3in20:19775:10:30:5:::[zys@centos8~]$sudo-uxftouch/tmp/sudo_test //獲取用戶xf的權限第1部分是一個用戶名,表示允許哪個用戶使用sudo命令第2部分表示允許用戶通過哪臺主機登錄本系統。ALL表示任意主機第3部分表示允許使用sudo命令切換到哪個用戶。ALL表示任意用戶第4部分是可以執行的實際命令,用絕對路徑表示。ALL表示任意命令2sudo命令sudo命令-為用戶組提權[root@centos8~]#visudo%svistALL=(ALL)NOPASSWD:ALL[root@centos8~]#groupaddsvist[root@centos8~]#groupmems-azys-gsvist //將用戶zys加入svist組[root@centos8~]#exit[zys@centos8~]$idzysuid=1000(zys)gid=1000(zys)組=1000(zys),1003(devteam),1238(svist)[zys@centos8~]$sudogrepzys/etc/shadow //不用輸入密碼zys:$6$DL7LwhUU4m…qBkW3in20:19775:10:30:5:::[zys@centos8~]$把第一部分改為“%組名”即可2sudo命令sudo命令-限制特權命令[root@centos8~]#visudozysALL=(root)/usr/bin/passwd[A-Za-z]*,!/usr/bin/passwdroot[root@centos8~]#exit[zys@centos8~]$sudopasswd //測試passwd命令后沒有參數對不起,用戶zys無權以root的身份在centos8上執行/bin/passwd。[zys@centos8~]$sudopasswdroot //測試passwd命令后帶root參數對不起,用戶zys無權以root的身份在centos8上執行/bin/passwdroot。[zys@centos8~]$sudopasswdxf //測試修改其他用戶的密碼新的密碼: 一般要對sudo后面的命令進行相應的限制,即明確指明用戶可以使用哪些命令,或者進一步指明使用這些命令時必須附帶哪些參數或選項2sudo命令sudo命令-使用別名簡化提權配置[root@centos8~]#visudo#Host_AliasMAILSERVERS=smtp,smtp2#User_AliasADMINS=jsmith,mikem#Cmnd_AliasSOFTWARE=/bin/rpm,/usr/bin/up2date,/usr/bin/yum//添加下面兩行User_AliasJIA=zys,tong <==創建別名JIA,包含2個用戶JIAALL=(ALL)ALL <==使用別名配置sudo權限使用User_Alias關鍵字創建用戶別名,在配置sudo權限時,使用這個別名進行配置。擁有該別名的用戶擁有相同權限主機別名和命令別名分別用Host_Alias和Cmnd_Alias關鍵字創建2sudo命令項目4Linux文件管理任務1認識Linux文件系統Linux文件系統概述12目錄樹與路徑3文件類型與文件名4文件操作常用命令1Linux文件系統概述文件系統基本概念1Linux文件系統概述對存儲空間進行組織和分配,提供文件操作的接口,文件權限管理為操作系統提供識別和管理磁盤文件的方法和數據結構是磁盤上特定位置的一片區域,保存本文件系統的相關信息文件的內容稱為用戶數據(userdata)文件還有一些附件信息,即元數據(metadata),如文件所有者、文件權限、大小、最近訪問時間、最近修改時間等用戶數據和元數據一般分開存放文件系統數據結構1Linux文件系統概述數據塊:保存文件的實際內容inode:一個文件對應一個inode,記錄文件的屬性信息及文件的數據塊編號超級數據塊:記錄文件系統相關信息區塊位圖記錄文件系統中所有區塊的使用狀態inode位圖記錄每個inode的狀態。[zys@centos8~]$ls-li1521191drwxr-xr-x.2zyszys62月2017:41 公共52432685-rw-rw-r--.1zyszys02月2220:13 file1常用的Linux文件系統1Linux文件系統概述ext2:最早使用的Linux文件系統之一,簡單可靠,以inode為基礎,支持最大16TB的分區和最大2TB的文件ext3:ext2的升級版,支持最大16TB的存儲容量和2TB的文件。ext3增加了日志功能,還支持快速備份和恢復功能ext4:在ext3的基礎上繼續擴充,引入Extent映射、延遲分配、日志校驗和在線碎片整理等新特性,支持最大1EB的存儲容量和16TB的文件大小XFS:適合處理大文件和大容量存儲,最大支持18EB的數據量。XFS是一種日志式文件系統,還具有動態inode分配、延遲寫入和讀取優化等特點2目錄樹與路徑根目錄是頂層目錄,用“/”表示目錄中可以新建文件或子目錄目錄和文件形成一棵以根目錄為根節點的倒置的目錄樹Linux目錄樹2目錄樹與路徑絕對路徑以根目錄為起點相對路徑以當前工作目錄為起點絕對路徑是唯一的相對路徑隨當前工作目錄而變絕對路徑和相對路徑2目錄樹與路徑Linux發行版內部的文件系統都遵循文件系統層次化標準(FilesystemHierarchyStandard,FHS)FHS的主要作用是規范特定的目錄下應該存放哪類文件以及它們的用途,從而為操作系統定義統一的文件系統布局FHS定義了兩層目錄規范。第一層規范定義根目錄“/”下各個目錄應該存放什么文件,第二層針對/usr和/var兩個目錄的子目錄定義文件系統層次標準2目錄樹與路徑文件系統層次標準2目錄樹與路徑3文件類型與文件名3文件類型與文件名Linux中“文件”的概念被泛化硬件被抽象為“文件”目錄也是一種“文件”ls-l的輸出中第1個字符表示文件類型Linux文件類型普通文件(-)目錄文件(d)鏈接文件(l)設備文件(b或c)管道文件(p)套接字文件(s)[zys@centos8~]$ls-llrwxrwxrwx.1zyszys123月512:00uosv20->/mnt/uosv20-rw-rw-r--. 1 zyszys 0 2月1209:38 file1drwx------. 5 zyszys 39 12月611:02 Maildir沒有“擴展名”的概念,不強制使用后綴區分大小寫,AB.txt和Ab.txt是不同的文件以“.”開頭的文件表示隱藏文件文件命名時避免使用特殊字符Linux文件名* ? > < ; & ! [ ] | \ ‘ “ ` ( ) { }空格3文件類型與文件名4文件操作常用命令打包:將多個文件合并為一個文件壓縮:對文件進行處理以減少其占用空間打包和壓縮文件-tar
和
gzip4文件操作常用命令[zys@centos8~]$touchfile1file2file3[zys@centos8~]$tar-cftest.tarfile1file2 //使用-c選項創建打包文件[zys@centos8~]$tar-tftest.tar //使用-t選項查看打包文件的內容[zys@centos8~]$tar-xftest.tar-C/tmp //將文件包內容展開到/tmp目錄中[zys@centos8~]$tar-rftest.tarfile3[zys@centos8~]$gziptest.tar //壓縮test.tar文件[zys@centos8~]$gunziptest.tar.gz //也可以使用gzip-dtest.tar.gz命令tar命令可同時對文件進行打包和壓縮支持gz和bz2等壓縮格式同時打包和壓縮文件-tar[zys@centos8~]$touchfile3file4[zys@centos8~]$tar-zcfgzout.tar.gzfile3file4 //-z和-c選項結合使用[zys@centos8~]$tar-zxfgzout.tar.gz-C/tmp //-z和-x選項結合使用[zys@centos8~]$touchfile5file6[zys@centos8~]$tar-jcfbz2out.tar.bz2file5file6 //-j和-c選項結合使用[zys@centos8~]$tar-jxfbz2out.tar.bz2-C/tmp //-j和-x選項結合使用4文件操作常用命令鏈接文件-硬鏈接鏈接文件和原文件共享inode,文件屬性完全相同刪除一個文件不影響另一個文件[zys@centos8~]$ls-lifile1.ori //使用-i選項顯示文件的inode編號52433266-rw-rw-r--.1zyszys162月2322:23file1.ori[zys@centos8~]$lnfile1.orifile1.hardlink //ln命令默認建立硬鏈接[zys@centos8~]$ls-lifile1.orifile1.hardlink52433266-rw-rw-r--.2zyszys162月2322:23file1.hardlink52433266-rw-rw-r--.2zyszys162月2322:23file1.ori[zys@centos8~]$rmfile1.ori //刪除原文件[zys@centos8~]$ls-lifile1.hardlink //硬鏈接文件仍在,inode不變52433266-rw-rw-r--.1zyszys162月2322:23file1.hardlink4文件操作常用命令鏈接文件-符號鏈接(軟鏈接)軟鏈接文件和原文件inode不同軟鏈接數據塊保存原文件的文件名刪除原文件軟鏈接文件無法使用[zys@centos8~]$touchfile2.ori[zys@centos8~]$ln-sfile2.orifile2.softlink[zys@centos8~]$ls-lifile2.orifile2.softlink52433267-rw-rw-r--.1zyszys02月2322:26file2.ori
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025屆應屆大學實習生合同
- 三八婦女節經典短信祝福語
- 2025企業搬遷合同協議書樣本
- 能源項目開發權轉讓合同
- 電商行業大數據營銷推廣策略
- 高速鐵路軌道施工與維護技能考核試題庫
- 汽車技術知識考核題
- 電力工程設計合同協議書
- 2025年征信考試題庫:信用評分模型與信用評估指標試題
- 2025年FRM金融風險管理師考試專業試卷(金融市場與機構)
- 電影《白日夢想家》課件
- 新版中國食物成分表
- 新人教版七年級初一數學下冊第一二單元測試卷
- 白內障手術操作規范及質量控制標準(2017版)
- 中國銀行履約保函(中英文)
- 不銹鋼儲罐施工方案(2024043554)
- 自考00911互聯網數據庫 精華小抄筆記
- 《電子商務法律法規》課程標準
- 中國聯通科技創新獎勵辦法
- 中藥飲片儲存與養護
- 【《項鏈》莫泊桑】《項鏈》課本劇劇本
評論
0/150
提交評論