Linux安全培訓-1-系統基礎與常用命令_第1頁
Linux安全培訓-1-系統基礎與常用命令_第2頁
Linux安全培訓-1-系統基礎與常用命令_第3頁
Linux安全培訓-1-系統基礎與常用命令_第4頁
Linux安全培訓-1-系統基礎與常用命令_第5頁
已閱讀5頁,還剩255頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、Linux Linux 系統基礎系統基礎 授課人:Cimer&IIP 張梓雄課程簡介本課程主要講解 Linux 系統基礎,包括網絡基礎、用戶和組管理基礎、文件系統基礎、服務與進程、應用服務基礎等,對Linux系統做一個基礎的介紹,并講解一些入門的管理與維護技能,讓初涉Linux的人可以盡快入門。3學習目標了解并掌握 Linux 網絡基礎了解并掌握 Linux 系統基礎了解 Linux 系統的基本管理與維護了解 Linux 系統安全與服務安全原理運用相關技術和軟件來保障 Linux 的系統安全和網絡服務安全提高安全意識課程目錄1、Linux 背景與常用版本2、Linux 基礎命令3、Linux

2、網絡基礎4、Linux 用戶和組管理基礎5、Linux 文件系統基礎6、Linux 服務與進程基礎7、Linux 應用服務基礎8、日志管理9、Shell 編程基礎課程目錄1、Linux 背景與常用版本2、Linux 基礎命令3、Linux 網絡基礎4、Linux 用戶和組管理基礎5、Linux 文件系統基礎6、Linux 服務與進程基礎7、Linux 應用服務基礎8、日志管理9、Shell 編程基礎2022-6-61 Linux 發展背景 Linux是一種類Unix操作系統的統稱。 Linux內核的名字也是“Linux”。 嚴格來講,Linux這個詞本身只表示Linux內核,但實際上人們已經習

3、慣了用Linux來形容整個基于Linux內核,并且使用GNU 各種工具和數據庫的操作系統。 Linux操作系統是自由軟件和開放源代碼發展中最著名的例子。 Linux得名于Linus Torvalds。2022-6-61 Linux 發展背景Linux誕生的歷史條件 nLinux 是UNIX 操作系統的一種克隆。它誕生于1991 年10 月5 日(第一次正式向外公布的時間)。此后借助于Internet 網絡,經過世界各地計算機愛好者的共同努力,現已成為世界上使用最多的一種UNIX 類操作系統,并且使用人數還在迅猛增長。 Linux 操作系統的誕生、發展和成長過程始終依賴著以下五個重要支柱:UNI

4、X 操作系統、MINIX 操作系統、GNU 計劃、POSIX 標準和Internet 網絡。 nUNIX 操作系統的誕生 UNIX 是美國貝爾實驗室的Ken Thompson和Dennis Ritchie 于1969 年在DEC PDP-7 小型計算機上開發的一個分時操作系統。當時Ken Thompson 為了能在閑置不用的PDP-7 計算機上運行他非常喜歡的星際旅行(Space travel)游戲,在1969 年夏天乘他夫人回家鄉加利福尼亞渡假期間,在一個月內開發出了UNIX 操作系統的原型。當時使用的是BCPL 語言(基本組合編程語言),后經Dennis Ritchie 于1972 年用C

5、 語言進行了改寫,使得UNIX 系統在高校和研究機構中得到了推廣。 肯湯普遜(左)和丹尼斯里奇(右)2022-6-61 Linux 發展背景MINIX 操作系統 MINIX 系統是由Andrew S. Tanenbaum(AST)開發的。 AST 在荷蘭Amsterdam 的Vrije 大學數學與計算機科學系工作,是ACM 和IEEE 的資深會員。AST 出生在紐約,是荷蘭僑民。他在紐約上的中學、M.I.T上的大學、加州大學Berkeley 分校念的博士學位。由于讀博士后的緣故,他來到了家鄉荷蘭,從此就與家鄉一直有來往。后來就在Vrije 大學教書。 MINIX 是他于1987年編制的,主要用

6、于學生學習操作系統原理。到1991年時版本是1.5,當時該操作系統在大學使用是免費的,可以從許多FTP上下載。 對于Linux 系統,他表示對其開發者Linus 的稱贊。但他認為Linux 的發展有很大原因是因為他為了保持MINIX 的小型化,讓學生在一個學期內就能學完,而沒有接納全世界許多人對Minix 的擴展要求。因此這激發了Linus 編寫Linux,Linus 正好抓住了這個好時機。2022-6-61 Linux 發展背景GNU 計劃 GNU 計劃和自由軟件基金會(the Free Software Foundation - FSF)是由Richard M. Stallman 于198

7、4 年創辦的。旨在開發一個類似 Unix、并且是自由軟件的完整操作系統:GNU 系統。 (GNU 是GNUs Not Unix的遞歸縮寫,它的發音為guh-NEW。)各種使用linux 作為核心的GNU 操作系統正在被廣泛的使用。雖然這些系統通常被稱作Linux,但是嚴格地說,它們應該被稱為GNU/Linux 系統。 到上世紀90 年代初,GNU 項目已經開發出許多高質量的免費軟件,其中包括有名的emacs 編輯系統、bash shell 程序、gcc 系列編譯程序、gdb 調試程序等等。這些軟件為Linux 操作系統的開發創造了一個合適的環境,是Linux 能夠誕生的基礎之一。以至于目前許多

8、人都將Linux 操作系統稱為“GNU/Linux”操作系統。 GNU通用公共許可證簡稱為GPL,是由自由軟件基金會發行的用于計算機軟件的協議證書,使用該證書的軟件被稱為自由軟件。大多數的GNU程序和超過半數的自由軟件使用它。 2022-6-61.1 Linux常用發布版本2022-6-61.1.1 RedHatRedhat(紅帽)是桌面虛擬化1世界領先的開源解決方案供應商,使用社區驅動的方式提供可靠和高性能的云、虛擬化、存儲、Linux® 和中間件技術。Red Hat最早由Bob Young和Marc Ewing在1995年創建。原來的Red Hat版本早已停止技術支持,Red Ha

9、t的Linux分為兩個系列,其中一個是由Red Hat公司提供收費技術支持和更新的Red Hat Enterprise Linux系列;另一個是由社區開發的免費的Fedora 系列。Red Hat因其易于安裝而聞名,在很大程度上減輕了用戶安裝程序的負擔。2022-6-61.1.2 UbuntuUbuntu Ubuntu是一個以桌面應用為主的Linux操作系統,其名稱來自非洲南部祖魯語或豪薩語的“ubuntu”一詞(譯為吾幫托或烏班圖),意思是“人性”、“我的存在是因為大家的存在”,是非洲傳統的一種價值觀,類似華人社會的“仁愛”思想。 Ubuntu基于Debian發行版和GNOME桌面環境,目標

10、在于為一般用戶提供一個最新的、同時又相當穩定的主要由自由軟件構建而成的操作系統。Ubuntu具有龐大的社區力量,用戶可以方便地從社區獲得幫助。馬克沙特爾沃思(Mark Shuttleworth),Ubuntu創始人。出生于1973年9月18日,是一名南非的企業家。2002年,他成為世界上第二名自資的太空游客,也是首位進入太空的非洲人。2022-6-61.2 Linux的圖形界面-X Windowx window是類unix系統中,圖形操作界面標準使用的用語,因為微軟搶先注冊了windows這個標準,所以只能用x window這個稱呼.gnonekde只是linux系統中提供圖形操作界面的兩種解

11、決方案.都是使用x window這個標準來顯示圖形界面.X Window已成為一種開發可移植窗口系統的工業標準,其重要特點之一就是它獨特的與設備無關的結構。任何硬件只要支持X Window標準,便可以執行應用程序顯示一組包含圖形和文字的視窗,而不需要重新編譯和連結。這種與設備無關的特性,使得只要根據X Window標準所開發的應用程序,均可在不同的環境下執行,這種優良特性奠定了成為工業標準的地位。2022-6-61.3 Linux 軟件包管理-RPMRPM是RedHat Package Manager(RedHat軟件包管理工具)類似Windows里面的“添加/刪除程序”。其缺點是RPM 沒有

12、很好地解決軟件包之間的依賴關系的問題。rpm 執行安裝包二進制包(Binary)以及源代碼包(Source)兩種。二進制包可以直接安裝在計算機中,而源代碼包將會由RPM自動編譯、安裝。源代碼包經常以src.rpm作為后綴名。常用命令組合:ivh:安裝顯示安裝進度-install-verbose-hashUvh:升級軟件包-Update;qpl:列出RPM軟件包內的文件信息Query Package list;qpi:列出RPM軟件包的描述信息Query Package install package(s);qf:查找指定文件屬于哪個RPM軟件包Query File;Va:校驗所有的RPM軟件包

13、,查找丟失的文件View Lost;e:刪除包2022-6-61.3 yumYum(全稱為 Yellow dog Updater, Modified)是一個在Fedora和RedHat以及SUSE、CentOS中的Shell前端軟件包管理器。基于RPM包管理,能夠從指定的服務器自動下載RPM包并且安裝,可以自動處理依賴性關系,并且一次安裝所有依賴的軟件包,無須繁瑣地一次次下載、安裝。安裝 Yum install sudo : 安裝sudo這個軟件包同時檢測依賴關系升級Yum update軟件包查詢Yum list軟件包信息 Yum info軟件包卸載 Yum remove幫助 Yum -hel

14、p 、man yum2022-6-61.3 apt-getapt-get是一條linux命令,適用于deb包管理式的操作系統,主要用于自動從互聯網的軟件倉庫中搜索、安裝、升級、卸載軟件或操作系統。apt-get install packagename安裝一個新軟件包apt-get remove packagename卸載一個已安裝的軟件包(保留配置文檔)apt-get remove -purge packagname卸載一個已安裝的軟件包(刪除配置文檔)apt-get autoremove packagename刪除包及其依賴的軟件包apt-get autoremove -purge pack

15、agname刪除包及其依賴的軟件包+配置文件,比上面的要刪除的徹底一點dpkg -force-all -purge packagename有些軟件很難卸載,而且還阻止了別的軟件的應用,就能夠用這個,但是有點冒險。課程目錄1、Linux 背景與常用版本2、Linux 基礎命令3、Linux 網絡基礎4、Linux 用戶和組管理基礎5、Linux 文件系統基礎6、Linux 服務與進程基礎7、Linux 應用服務基礎8、日志管理9、Shell 編程基礎2022-6-62.1 Linux 遠程管理-VNC遠程圖形化管理VNC (Virtual Network Computing)是虛擬網絡計算機的縮

16、寫。VNC 是一款優秀的遠程控制工具軟件,由著名的 AT&T 的歐洲研究實驗室開發的。VNC 是在基于 UNIX 和 Linux 操作系統的免費的開源軟件,遠程控制能力強大,高效實用,其性能可以和 Windows 和 MAC 中的任何遠程控制軟件媲美。 在 Linux 中,VNC 包括以下四個命令:vncserver,vncviewer,vncpasswd,和 vncconnect。大多數情況下我只需要其中的兩個命令:vncserver 和 vncviewer。vncserver此服務程序必須在在主(或遙控)計算機上運行。你只能作為使用者(不需要根用戶身份)使用此項服務。vncviewer本地

17、應用程序,用于遠程接入運行vncserver的計算機并顯示其環境。你需要知道遠程計算機的IP地址和vncserver設定的密碼。vncpasswdvncserver的密碼設置工具。vncserver服務程序沒有設置密碼將不能運行(好習慣)。如果你沒有設置,運行vncserver時它會提示你輸入一個密碼。所以,一般我不會單獨運行這個命令來設置密碼。vncconnect告訴vncserver連接到遠程一個運行vncviewer的計算機的IP和端口號。這樣我就可以避免給其他人一個接入的密碼。2022-6-62.1.1 VNC一、安裝 VNC首先檢查一下本機是否安裝了 VNC,默認情況下,CentOS

18、 6.0 是沒有安裝的。檢查是否安裝,輸入:rootlocalhost # rpm -q vnc vnc-server得到:package vnc is not installedpackage vnc-server is not installed提示沒有安裝,那么就開始安裝,輸入:rootlocalhost # yum -y install tigervnc-server注:如果是 Ubuntu 則輸入:rootlocalhost # apt-get install vnc vnc-server在一串指令提示后,會讓你確認一些選項,輸入兩次 Y 并確認,稍作等待,提示 Complete!

19、即完成安裝。2022-6-62.1.1 VNC二、設置 VNC 密碼啟動 VNC,輸入: rootlocalhost # vncserver此時會提示你輸入密碼,因為是第一次配置。重復輸入兩次即可。 如果要修改密碼,直接使用vncpasswd命令。三、配置桌面類型設置一下遠程桌面使用那個類型的桌面,分辨率多少等等。輸入: rootlocalhost # vi /.vnc/xstartup 一般情況下,我們使用的 Linux 桌面都是 Gnome 桌面,故配置成這 個桌面比較習慣。 按 i 鍵進入編輯狀態,主要修改最后兩行。改為:# xterm -geometry 80 x24+10+10 -l

20、s -title $VNCDESKTOP Desktop &# twm &gnome-session &2022-6-62.1.1 VNC四、配置登錄帳號、桌面分辨率、連接方式輸入: rootlocalhost # vi /etc/sysconfig/vncservers 重點編輯最后兩行,將這兩行注釋去掉,得到:VNCSERVERS=1:rootVNCSERVERARGS1=-geometry 1024x768這里是只有一個帳號登錄,設置分辨率為1024*768,如果你有多個帳號,則按照下面格式配置。VNCSERVERS=1:user1 2:user2 3:user3VNCSERVERARG

21、S1=-geometry 1024768VNCSERVERARGS2=-geometry 1024768VNCSERVERARGS3=-geometry 800600 -depth 24 -nolisten tcp -nohttpd -localhost解釋一下這個文件:VNCSERVERS 這一行是配置在系統啟動時啟動幾個 VNC server,上面的例子里運行了三個 VNC server,其中 user1 在 display :1,user2 在 display :2,user3 在 display :3。VNCSERVERARGS 這三行,分別為 VNC server 1, 2, 3 配

22、置啟動參數,上面的例子里對 user1 和 user2 使用屏幕分辨率 1024768,對 user3 使用 800600,24 色,不支持 tcp,不支持 http 連接,只能在本地測試訪問。注釋:在啟動 VNCserver 時,你也可以為 server 指定一個 display 參數。你可以把 display 理解為一個桌面,每個用戶都可以有自己的桌面。VNC 客戶端在連接時,可以指定連接到哪個桌面上。在系統中,display 號不能重復,也就是說,如果有用戶已經建立了名為 :1 的 display,另外一個用戶就不能再使用 :1 了,他可以使用 :2。指定 display 號碼的啟動 V

23、NC server 的命令是:vncserver:12022-6-62.1.1 VNC五、配置防火墻,允許 VNC 連接VNC server 監聽的端口從 5900 開始,display:1 的監聽 5901,display:2 監聽 5902,以此類推。CentOS 的防火墻缺省是不允許連接這些端口的,所以需要使用下面的步驟打開防火墻(需要 root 權限): 輸入編輯: rootlocalhost # vi /etc/sysconfig/iptables 添加: -A INPUT -m state -state NEW -m tcp -p tcp -dport 5901 -j ACCEPT

24、 rootlocalhost # /sbin/service iptables restartiptables:清除防火墻規則:確定iptables:將鏈設置為政策 ACCEPT:filter 確定iptables:正在卸載模塊:確定iptables:應用防火墻規則:確定2022-6-62.1.1 VNC2022-6-62.1.2 SSHSSH 為 Secure Shell 的縮寫,由 IETF 的網絡工作小組(Network Working Group)所制定;SSH 為建立在應用層和傳輸層基礎上的安全協議。SSH 是目前較可靠,專為遠程登錄會話和其他網絡服務提供安全性的協議。利用 SSH

25、協議可以有效防止遠程管理過程中的信息泄露問題。SSH最初是UNIX系統上的一個程序,后來又迅速擴展到其他操作平臺。SSH在正確使用時可彌補網絡中的漏洞。SSH客戶端適用于多種平臺。幾乎所有U NIX平臺包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平臺都可運行SSH。(1)卸載及清除SSH配置信息:apt-get remove openssh-server(2)安裝OpenSSH程序:apt-get install openssh-server(3)使用客戶端連接SSH服務器客戶端可以選用putty、xshell等等,也可以直接在linux系統

26、中使用ssh ip這樣的方式來進行登錄。2022-6-62.1.3 SCP SCP協議是一個支持網絡文件傳輸的協議。它運行在22端口,基于BSD RCP協議(而RCP又基于SSH協議提供加密和認證)。所以SCP有時被認為不是一個協議,而僅僅是一個RCP和SSH的組合。其中,RCP負責文件的傳輸,而SSH協議負責認證和加密。如果winscp無法連接到遠程linux,則:(一)$ sudo apt-get install ssh正在讀取軟件包列表. 完成正在分析軟件包的依賴關系樹Reading state information. 完成現在沒有可用的軟件包 ssh,但是它被其它的軟件包引用了。這可

27、能意味著這個缺失的軟件包可能已被廢棄,或者只能在其他發布源中找到可是下列的軟件包取代了它:openssh-client ssh-askpass-gnomeE: 軟件包 ssh 還沒有可供安裝的候選者(二)sudo apt-get install openssh-server2022-6-62.2 Linux 基礎命令在Linux操作系統中,命令一般分為以下兩種。(1)Shell內部命令:Shell內部命令是一些較為簡單的又常用的命令,如cd、mkdir、rm等,這些命令在Shell啟動時載入內存,就像是操作系統本身所具有的命令一樣。(2)Shell外部命令:Linux中大多數命令屬于Shell

28、外部命令,每一個Shell外部命令都有一個獨立的可執行程序。也就是說,Shell外部命令實際上是一些實用工具程序,管理員可以獨立地在Shell環境下安裝或卸載這些Shell外部命令。2022-6-62.2.1 命令格式在執行Linux命令時可以根據需要包括“選項”或“參數”,通過“選項”或“參數”可以讓一個命令每次運行時都能夠接受用戶不同的指令,采取不同的運行方式、作用于不同的對象、產生不同的運行結果,一般“選項”會出現在“參數”的前面。在執行Linux命令時需要注意以下幾點(1)在Linux中無論是文件名、目錄名、命令等對英文字符的處理都是區分大小寫的,因此“ls”和“LS”代表兩個不同的命

29、令。(2)在“命令”、“選項”、“參數”中間至少使用一個空格分隔。(3)雖然并不是所有的Linux命令都要求“選項”必須出現在“參數”前面,但推薦在執行命令時,“選項”放在“參數”前面。(4)在Linux命令中“選項”一般需要一個引導符,以“-”引導的是短格式選項(單個字符),如“-l”;以“-”引導的是長格式選項(多個字符),如“-detail”。多個短格式選項可以寫在一起,只有一個“-”引導,如“-rv”和“-r -v”表示相同的意思。2022-6-62.2.2 命令輔助應用加入命令將命令發送硬鏈接到/usr/bin目錄下。將命令所在文件夾加載到環境變量中 /etc/profiles% e

30、xport HADOOP_INSTALL=/home/tom/hadoop-x.y.z % export PATH=$PATH:$HADOOP_INSTALL/bin 使用source /etc/profiles:source命令通常用于重新執行剛修改的初始或文件,使之立即生效,而不必注銷并重新登錄。Tab鍵補全命令行。在使用Linux命令指定文件、目錄以及在一些查找中指定“范本樣式”時,可使用一些通配符:“*”任意個字符、“?”任意一個字符、“0-9”表示0到9、“abc”匹配“abc”中的任何一個字符、“abc”不能匹配“abc”中的任何一個字符。2022-6-62.2.2 命令輔助應用快

31、捷鍵在圖形界面打開終端或虛擬控制臺都可以使用以下快捷鍵(這些快捷鍵使用是不區分大小寫的)。 Ctrl+U:清空從光標所在位置到行首。 Ctrl+K:清空從光標所在位置到行尾。 Ctrl+L:清屏,相當于“clear”命令。 Ctrl+C:停止本次命令的執行。 Ctrl+R+:開始向上搜索包含該字符的命令,繼續按Ctrl+R,查找上一條匹配的命令。 Ctrl+U:剪切命令行中光標所在處之前的所有字符(不包括自身)。 Ctrl+K:剪切命令行中光標所在處之后的所有字符(包括自身)。 Alt+:歷史列表最后一項。 Alt+u:把當前詞轉化為大寫。 Alt+l:把當前詞轉化為小寫。2022-6-62.

32、3 目錄和文件操作命令2022-6-62.3 目錄和文件操作命令屬性名說明類型 d :目錄 -:二進制文件 l:軟鏈接文件 Ln -s /etc/issue /issue.soft :軟鏈接權限是所有人都可以訪問,文件類型為l,時間值為創建此軟鏈接時候的時間值。軟鏈接可以跨越文件系統。 Ln /etc/issue /issue.hard:硬鏈接不同于拷貝,會隨著源文件的變化而變化。在軟硬鏈接目錄文件下輸入:ls -i 表示顯示inode.inode是用數字標識的文件的唯一標識符。軟鏈接與源文件的inode是不同的,而硬鏈接和inode是一致的。硬鏈接不能跨文件系統。權限 rwx r-x r-x

33、 :r-read:讀、w-write:寫、x-execute:執行、s-以root權限執行用戶分類前3個字符代表所有者(user)的權限、中間3個字符代表所屬組(group)的權限、后3個字符代表了其他(others)的權限。一個文件的信息:drwxr-xr-x 2 root root 文件大小:兩個root分別對應所有者與所屬組。2022-6-632/482.3.1 目錄位置與改變判定當前目錄命令n格式:pwd如:2022-6-633/482.3.1 目錄位置與改變改變所在目錄命令ncd是changing directory的縮寫,此命令用于從一個目錄跳轉到另一個目錄。n格式:cd 目錄名命

34、令功能cd回到用戶的登錄時的初始目錄cd 作用也是回到登錄時的初始目錄cd /到系統的根目錄cd /root到根用戶的主目錄,前提是你有相應的權限cd /home到用戶的主目錄,通常是用戶登錄系統時的初始目錄cd .回到上一級目錄即父目錄cd otheruser到由otheruser指出的其他用戶的初始登錄目錄,前提是你有相應的授權cd pathname到由pathname指出的目錄,pathname可以是相對路徑,也可以是絕對路徑2022-6-634/48LS查看目錄內容命令nls是list的縮寫,使用ls命令可以查看目錄下的內容,包括文件和子目錄。n格式:ls 選項 文件目錄列表選 項功

35、能-a代表all,列出目錄下的所有文件,包括隱藏文件-l代表long,列出許可、擁有者、組、大小、創建日期、是否是一個連接等信息-F代表file type,在列出的每一項后添加一個代表文件類型的符號,/代表該項是一個目錄,代表該項是一個符號連接,*代表該項是一個可執行文件-r代表reverse,從后往前列出目錄下的內容,反向排序-R代表recursive,遞歸地列出該目錄下所有目錄的內容-X按擴展名排序-t根據修改時間排序-S代表size,按大小排列文件-version顯示版本信息-help顯示幫助信息-color在顯示文件和目錄時加上色彩,方便區別各種類型的文件-time=顯示訪問時間(at

36、ime)或改變權限屬性時間(ctime),而不是內容變更時間(mtime)2.3.2 信息/內容查看2022-6-635/48新建目錄命令nmkdir是make directory的縮寫。用于在文件系統特定目錄中建立新目錄。n格式:mkdir 選項 目錄名刪除目錄命令nrmdir是remove directory的縮寫。用來刪除目錄,一般情況下刪除的目錄必須為空目錄,如果所給出的目錄不為空,則報錯。n格式:rmdir 選項 目錄列表2.3.3 基本操作2022-6-636/48移動文件命令nmv是move的縮寫。用于移動指定的文件和目錄,在當前目錄 下移動文件時,其功能相當于Window系統中

37、對文件的重命名。n格式:mv 選項 源文件和目錄列表 目標目錄名n常用選項如下:n-i 交互模式,在改寫文件前提示n-f 當目標文件存在但沒有寫權限時mv命令會提示。(本選項使mv執行移動而不作提示,即使用了-i標志也當無效處理)2.3.3 基本操作2022-6-637/48復制文件命令ncp是copy的縮寫。當需要建立 新服務或者進行文件備份,都需要復制文件和目錄。n格式:cp 選項 源文件和目錄列表 目標目錄名常用選項意 義-a在備份中保持盡可能多的源文件結構和屬性-b作將要覆蓋或刪除文件的備份-f刪除已存在的目標文件-i提示是否覆蓋已存在的目標文件-r遞歸拷貝目錄,把所有非目錄文件當普通

38、文件拷貝-R遞歸拷貝目錄,復制整個目錄及其所有子目錄-v在拷貝前打印每個文件名2.3.3 基本操作2022-6-638/48刪除文件命令nrm是remove的縮寫。用于從文件系統中刪除文件及整個目錄 。n格式:rm 選項 文件和目錄列表常用選項意 義-f指定強行刪除模式。在刪除文件權限可滿足時rm提示,本標志強迫刪除,不用提示,即使用了-i標志也當無效處理-i提示是否刪除文件-r刪除文件列表中指定的目錄,若不用此標志則不刪除目錄-R遞歸刪除目錄,刪除整個目錄及其所有子目錄-V在刪除前回顯文件名-指明所有選項結束,用于刪除一個文件名與某一選項相同的文件。例如,假定偶然建立了名為-f的文件,又打算

39、刪除它,命令rm -f不起任何作用,因為-f被解釋成標志而不是文件名;而命令rm - -f能成功地刪除文件2.3.3 基本操作2022-6-639/48改變權限命令n在Linux系統中,用戶設定文件權限以控制其他用戶不能訪問、修改文件。n格式:Chmod ugo+-=rwx文件或目錄mode=421文件或目錄n使用字符串設置權限:可讀(r),可寫入(w),可執行(x)n使用八進制數設置權限:4表示可讀權限,2表示可寫入權限,1表示可執行權限常用選項意 義-c只有在文件的權限確實改變時才進行詳細說明-f不打印權限不能改變的文件的錯誤信息-R遞歸改變目錄及其內容的權限-v詳細說明權限的變化u更改所

40、有者的權限g更改其他組的權限o更改其他用戶折權限a同時更改所有者、擁有組其他用戶的權限+在現在權限基礎上增加新的權限-取消現有權限=將權限改為指定值2.3.4 權限操作2022-6-640/48例n將當前目錄中的子目錄csi權限修改為“777”,也就是說文件的所有者、擁有組、其他用戶的權限都是可讀(r=4)、可寫入(w=2)、可執行(x=1)n將目錄dexter的權限修改為“644”也就是說文件的所有者可讀(r=4)、可寫入(w=2) ;擁有組(r=4);其他用戶的權限都是可讀(r=4)n將目錄everwood的權限修改為文件的所有者、擁有組、其他用戶的權限都是可讀(r=4)、可寫入(w=2)

41、、可執行(x=1)n將目錄friends擁有組現有權限減去只讀權限2.3.4 權限操作2022-6-641/48例n將目錄fringe其他用戶權限在現有的基礎上加入可讀(r)、可寫(w)權限。n將目錄house所有者權限更改為可讀(r)、可寫入(w)、可執行(x);擁有組權限可讀(r)、可執行(x);其他用戶權限更改為可執行(x)2.3.4 權限操作2022-6-642/48文件定位命令n格式:locate 目標文件n如:要查找含有file字樣的文件或目錄,可使用如下的命令行:n回車后,locate命令使用一個文件數據庫中的信息來完成查詢。文件數據庫中存儲著系統中所有文件的信息。nlocate

42、命令查找的速度非常快,這是因為該命令并不是實際在硬盤中每個目錄去查找文件,而是在一個保存了硬盤上目錄結構及文件名的數據庫中查找,也是因為這個原因對于剛新增、修改、刪除的文件和目錄,locate命令有可能無法找到,這時需要使用如下命令更新數據庫。在有些Linux發行版中系統會定期執行該命令。rootlocalhost root# locate file2.3.4 文件定位與查找2022-6-643/48文件查找命令nLinux查找文件的命令通常為find,用于在使用、管理Linux的日常事務中方便地查找出我們需要的文件。n格式:find 目標列表 匹配標準n如:rootlocalhost roo

43、t# find /root name “install*” -print表達式含 義-name 文件名-name文件告訴find要找什么文件;要找的文件包括在引號中,可以使用通配符(*和?)-sizen匹配所有大小為n塊的文件(512字節塊,若k在n后,則為1KB塊)-user 用戶匹配所有用戶序列號為前面所指定的用戶序列號的文件,可以是數字型的值或用戶登錄名-amin n匹配所有在前n分鐘內訪問過的文件-mmin n匹配所有在前n分鐘內修改過的文件-atime n匹配所有在前n天內訪問過的文件-mtime n匹配所有在前n天內修改過的文件-newer 文件匹配所有修改時間比file文件更新的

44、文件。目錄列表指定從哪個目錄開始搜索,匹配標準指定搜索條件-print顯示整個文件路徑和名稱。一般都要用-print動作,如果沒有這個動作,則find命令進行所要搜索而不顯示結果2.3.4 權限操作2022-6-644/48文件查找命令n通過文件名查找n避免錯誤查找,轉移到特定的目錄中去。n根據部分文件名查找查找某個文件中包含有err3個字母2.3.4 權限操作2022-6-645/48文件查找命令n根據文件的特征查找一個Linux文件大小為1500byte,那么可以使用如下命令來查找標明指定系統在根目錄中查找出大于10000000字節的文件2.3.4 權限操作2022-6-646/48文件查

45、找命令n根據文件的特征查找一個Linux文件大小為1500byte,那么可以使用如下命令來查找標明指定系統在根目錄中查找出大于10000000字節的文件find命令格式表達式含 義find / -amin -10查找在系統中最后10分鐘訪問的文件find / -atime -2查找在系統中最后48小時訪問的文件find / -empty查找在系統中為空的文件或者文件夾find / -group cat查找在系統中屬于group cat的文件find / -mmin -5查找在系統中最后5分鐘里修改過的文件find / -mtime -1查找在系統中最后24小時里修改過的文件find / -no

46、user查找在系統中屬于作廢用戶的文件find / -user fred查找在系統中屬于FRED這個用戶的文件find命令選項選項名含 義-amin n查找系統中最后N分鐘訪問的文件-atime n查找系統中最后n*24小時訪問的文件-cmin n查找系統中最后N分鐘被改變狀態的文件-ctime n查找系統中最后n*24小時被改變狀態的文件-empty查找系統中空白的文件,或空白的文件目錄,或目錄中沒有子目錄的文件夾-false查找系統中總是錯誤的文件-fstype type查找系統中存在于指定文件系統的文件,例如ext2-gid n查找系統中文件數字組ID為n的文件-group gname查

47、找系統中文件屬于gname文件組,并且指定組和ID的文件2.3.4 權限操作2022-6-647/48文件查找命令nFind命令的控制選項n在當前目錄及子目錄中查找一個名叫fred的文件n使用混合查找方式查找文件find命令控制選項選項名含 義-daystart測試系統從今天開始24小時以內的文件,用法類似-amin-depth使用深度級別的查找方式,在某層指定目錄中優先查找文件內容-follow遵循通配符連接方式查找,也可忽略通配符連接方式查詢-help顯示命令摘要-maxdepth levels某個層次的目錄中按照遞減方法查找-mount不在文件系統目錄中查找,用法類似-xdev-nole

48、af禁止在非UNUX文件系統,MS-DOS系統,CD-ROM文件系統中進行最優化查找-version打印版本數字2.3.4 權限操作2022-6-648/48符號連接命令nln命令用于建立文件的連接,使得某個文件可以同時存在于多個目錄之中。n格式:ln 選項 目標源文件 連接名n硬連接與目標源文件的關系 n符號連接與源文件的關系(軟連接)nln的鏈接又有軟鏈接和硬鏈接兩種:軟鏈接就是上面所說的ln -s * *,它只會在用戶選定的位置上生成一個文件的鏡像,不會重復占用磁盤空間,平時使用較多的都是軟鏈接;硬鏈接是不帶參數的ln * *,它會在用戶選定的位置上生成一個和源文件大小相同的文件,無論是

49、軟鏈接還是硬鏈接,文件都保持同步變化2.3.4 鏈接2022-6-649/48修改文件的時間戳n當文件存在時touch命令把文件的修改時間更新為當前時間。n格式:touch 選項 常用選項意 義-a改變檔案的讀取時間-m改變檔案的修改時間-c假如目的檔案不存在,不會建立新檔案,和no-create效果一樣-f不使用,是為了與其他UNIX系統的相容性而保留-r使用參考檔案的時間記錄-d設定時間與日期-t設定檔案的時間記錄,格式與date相同-no-create無操作-help詳細說明權限的變化2.3.4 touch2022-6-650/482.5 進程管理命令報告進程狀態命令nps命令用來報告系

50、統當前的進程狀態。n格式:ps 選項ps命令常用選項選 項意 義-a顯示所有用戶進程-e顯示進程環境變量-l給出長列表-r只顯示正在運行的進程-S增加子CPU時間和頁面出錯-w按寬格式顯示輸出。默認情況下,如果輸出結果不能在一行里顯示,將會縮短結果輸出,使用該選項可以避免-txx只顯示受tty.xx控制的進程-u打印用戶格式,顯示用戶名和進程起始時間-x顯示不帶控制終端的進程ps命令輸出字段含義字段名意 義USER進程所有者的用戶名PID進程號,可以唯一標識該進程%CPU進程自最近一次刷新以來所占用的CPU時間和總時間的百分比%MEM進程使用內存的百分比VSZ進程使用的虛擬內存大小,以K為單位

51、RSS進程占用的物理內存的總數量,以K為單位TTY進程相關的終端STAT進程狀態,用下表代碼中的一個給出TIME進程使用的總CPU時間COMMAND被執行的命令行NI進程的優先級值,較小的數字意味著占用較少的CPU時間PRI進程優先級PPID父進程IDWCHAN進程等待的內核事件名進程狀態符 號含 義R運行或準備運行S睡眠狀態I空閑Z死亡D不間斷睡眠W進程沒有駐留頁T停止或跟蹤2022-6-62.4 進程管理命令進程前后臺切換命令fg命令可以把后臺運行的進程調回前臺,而bg命令則相反,即把前臺運行的進程調到后臺。格式:fg 作業號 bg 作業號終止進程命令kill命令允許送一個結束進程的信號到

52、某個當前運行運行的特定進程,從而結束進程。格式:kill 選項 信號 進程號2022-6-62.5 輔助命令與技巧man manual man ls : 獲取ls命令的幫助信息info 類似于info 命令whatis whatis 命令 獲得索引的簡短說明 相當于man -k2022-6-62.5.1 輸入輸出重定向Shell對于每一個進程預先定義3個文字描述符(0、1、2),對應0:STDIN 1:STDOUT 2:STDERR 或 輸出重定向,前者是清空文件并寫入,后者是追加寫入范例:ls -l /tmp /tmp.msg date /tmp.msg 輸入重定向范例:wall 錯誤輸出重

53、定向cp -R /usr/backup/usr.bak 2/bak.error2022-6-62.5.2 管道將一個命令的輸出傳送給另一個命令作為另一個命令的輸入。使用方法:命令1|命令2|.|命令nLs -l /etc | more2022-6-62.5.3 命令連接符;用;間隔的各命令按順序依次執行。&前后命令的執行存在邏輯與關系,只有&前面的命令執行成功后,其后面的命令才被執行。|前后命令的執行存在邏輯或關系,只有|前面的命令執行失敗后,它后面的命令才被執行。2022-6-62.5.4 命令替換符注意,命令替換符是反單引號。將一個命令的輸出作為另一個命令的參數。命令1 命令2 Ls -l

54、 which touch這個是直接替換命令的參數。 Linux 網絡基礎TCP/IP 四層模型和 OSI 七層模型 OSI 七層模型七層模型Linux TCP/IP 四層概念四層概念模型模型對應網絡協議對應網絡協議應用層(Application)應用層TFTP、FTP、NFS表示層(Presentation)Telnet、SNMP會話層(Session)DNS、SMTP、傳輸層(Transport)傳輸層TCP、UDP網絡層(Network)網絡層IP、ICMP、ARP數據鏈路層(Data Link)網絡接口層FDDI、Ethernet物理層(Physical)IEEE 802.1等課程目錄1

55、、Linux 背景與常用版本2、Linux 基礎命令3、Linux 網絡基礎4、Linux 用戶和組管理基礎5、Linux 文件系統基礎6、Linux 服務與進程基礎7、Linux 應用服務基礎8、日志管理9、Shell 編程基礎3.1 Linux 網絡基礎 TCP/IP 提供的主要應用: Telnet 程序 文件傳輸協議 簡單郵件傳輸協議 域名服務協議 簡單網絡管理協議 網絡文件系統協議 傳輸控制協議 網際協議 網際控制消息協議2022-6-63.1.1 Linux 網絡結構基礎Linux在服務器領域已經非常成熟,其影響力日趨增大。Linux的網絡服務功能非常強大,但是由于Linux的桌面應

56、用和Windows相比還有一定差距,除了一些Linux專門實驗室之外,大多數企業在應用Linux系統時,往往是Linux和Windows(或UNIX)等操作系統共存形成的異構網絡。在一個網絡系統中,操作系統的地位是非常重要的。Linux網絡操作系統以高效性和靈活性而著稱。它能夠在PC上實現全部的UNIX特性,具有多任務、多用戶的特點。 Linux的組網能力非常強大,它的TCP/IP代碼是最高級的。2022-6-63.1.1 Linux 網絡結構基礎Linux的組網能力非常強大,它的TCP/IP代碼是最高級的。Linux不僅提供了對當前的TCP/IP協議的完全支持,也包括了對下一代 Intern

57、et協議IPv6的支持。Linux內核還包括了IP防火墻代碼、IP防偽、IP服務質量控制及許多安全特性。Linux的網絡實現是模仿 FreeBSD的,它支持FreeBSD的帶有擴展的Sockets(套接字)和TCP/IP協議。它支持兩個主機間的網絡連接和Sockets通信模型,實現了兩種類型的Sockets:BSD Sockets和INET Sockets。它為不同的通信模型提供了兩種傳輸協議,即不可靠的、基于消息的UDP傳輸協議和可靠的、基于流的TCP傳輸協議,并且都是在IP網際協議上實現的。2022-6-63.1.2 TCP/IP 四層模型和 OSI 七層模型2022-6-63.1.2 T

58、CP/IP 四層模型和 OSI 七層模型一物理層(Physical Layer)O S I 模型的最低層或第一層,該層包括物理連網媒介,如電纜連線連接器。物理層的協議產生并檢測電壓以便發送和接收攜帶數據的信號。在你的桌面P C 上插入網絡接口卡,你就建立了計算機連網的基礎。換言之,你提供了一個物理層。盡管物理層不提供糾錯服務,但它能夠設定數據傳輸速率并監測數據出錯率。網絡物理問題,如電線斷開,將影響物理層。 用戶要傳遞信息就要利用一些物理媒體,如雙絞線、同軸電纜等,但具體的物理媒體并不在OSI的7層之內,有人把物理媒體當做第0層,物理層的任務就是為它的上一層提供一個物理連接,以及它們的機械、電

59、氣、功能和過程特性。如規定使用電纜和接頭的類型、傳送信號的電壓等。在這一層,數據還沒有被組織,僅作為原始的位流或電氣電壓處理,單位是bit比特。2022-6-63.1.2 TCP/IP 四層模型和 OSI 七層模型二數據鏈路層(Datalink Layer)OSI模型的第二層,它控制網絡層與物理層之間的通信。它的主要功能是如何在不可靠的物理線路上進行數據的可靠傳遞。為了保證傳輸,從網絡層接收到的數據被分割成特定的可被物理層傳輸的幀。幀是用來移動數據的結構包,它不僅包括原始數據,還包括發送方和接收方的物理地址以及檢錯和控制信息。其中的地址確定了幀將發送到何處,而糾錯和控制信息則確保幀無差錯到達。

60、 如果在傳送數據時,接收點檢測到所傳數據中有差錯,就要通知發送方重發這一幀。 數據鏈路層的功能獨立于網絡和它的節點和所采用的物理層類型,它也不關心是否正在運行 Wo r d 、E x c e l 或使用I n t e r n e t 。有一些連接設備,如交換機,由于它們要對幀解碼并使用幀信息將數據發送到正確的接收方,所以它們是工作在數據鏈路層的。 數據鏈路層(DataLinkLayer):在物理層提供比特流服務的基礎上,建立相鄰結點之間的數據鏈路,通過差錯控制提供數據幀(Frame)在信道上無差錯的傳輸,并進行各電路上的動作系列。數據鏈路層在不可靠的物理介質上提供可靠的傳輸。該層的作用包括:物

溫馨提示

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

最新文檔

評論

0/150

提交評論