版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、嵌入式操作系統(tǒng)linux shell基本概述基本概述linux的基本命令的基本命令linux系統(tǒng)的環(huán)境變量的配置系統(tǒng)的環(huán)境變量的配置第2章linux基本命令嵌入式操作系統(tǒng)什么是shellshell是一種特殊的程序,它是用戶與操作系統(tǒng)內(nèi)核之間的橋梁當(dāng)用戶登錄成功,系統(tǒng)會啟動一個交互式的shell來提示用戶輸入指令,對于初學(xué)者大都通過交互式使用shell,但如果總要輸入一組大致相同命令,自然希望將工作自動化。把命令寫到一個文件中,即腳本文件,寫腳本文件就是shell編程嵌入式操作系統(tǒng)什么是shellbash shell是一個增強(qiáng)的bourne shell(標(biāo)準(zhǔn)的unix shell),也是linu
2、x上默認(rèn)的shell。如果想要了解自己所使用的linux有哪些版本的shell,可以查看/etc/shell文件。cat /etc/shells嵌入式操作系統(tǒng)為什么要使用命令在linux系統(tǒng)中,也有非常好用的gui,為什么還要學(xué)習(xí)命令? 歷史原因:在linux早期的版本中,由于不支持圖形化操作,用戶基本上都是使用命令行方式來對系統(tǒng)進(jìn)行操作,另一方面,linux發(fā)行版本眾多,但不同發(fā)行版之間linux命令操作都是相識的; 命令優(yōu)勢:現(xiàn)在雖然有了圖形化操作界面,但是掌握常用的一些linux命令是非常方便的。linux命令是linux操作系統(tǒng)的一大優(yōu)勢,命令行操作的運行不需要占用過多的系統(tǒng)資源,功能
3、也十分強(qiáng)大,幾乎所以的linux操作都可以通過命令完成。 熟練掌握linux命令操作也是領(lǐng)會linux系統(tǒng)精髓的必然途徑。 遠(yuǎn)程管理(telnet、ssh)要求嵌入式操作系統(tǒng)怎樣進(jìn)入命令環(huán)境開機(jī)后進(jìn)入直接文本環(huán)境圖形化環(huán)境還提供了一種仿真“終端”,在“終端”下的命令操作與純文本環(huán)境的命令操作是完全一樣的,在redhat linux 上打開“終端”方法是點擊“主菜單”“系統(tǒng)工具”“終端”或在“桌面單擊右鍵”“新建終端”。以ssh(secure shell)或telent 方式登錄到linux系統(tǒng)。嵌入式操作系統(tǒng)終端命令提示符rootlocalhost root#用戶名主機(jī)名當(dāng)前工作的目錄此提示符
4、一般有兩,#和$,#表示root用戶,而$表示一般用戶嵌入式操作系統(tǒng)linux命令格式說明command -options arguments (或parameters) 選項是對命令的特別定義,以-開始,多個選項可用一個-連起來 如ls -l -a與ls -la相同 單字符選項前使用一個減號(-),單詞(多字符)選項前使用兩個減號(-) 如ls -help 嵌入式操作系統(tǒng)linux命令格式說明命令與參數(shù)區(qū)分大小寫,命令名一般由小寫的英文字母構(gòu)成,往往是表示相應(yīng)功能的英文單詞或單詞的縮寫 如cp是copy的縮寫,表示拷貝文件 演示命令:date,date,date最簡單的命令只有命令名,復(fù)雜的
5、shell令可以有多個參數(shù)。操作參數(shù)可以是文件也可以是目錄,有些命令必須使用多個操作參數(shù), 如cp命令必須指定源操作對象和目標(biāo)操作對象。命令名、參數(shù)和操作參數(shù)都作為命令執(zhí)行時的輸入,它們之間用空格分隔開。嵌入式操作系統(tǒng) 文件和目錄管理 要學(xué)會使用linux,首先要掌握的就是基本的文件與目錄操作命令。 定位文件與目錄命令:cd pwd find(*) locate 瀏覽文件命令:cat more less 目錄操作命令:mkdir rmdir 文件操作命令:touch rm cp mv ln tar gzip gunzip whereis whatis嵌入式操作系統(tǒng)定位文件和目錄 1. pwd
6、- 顯示用戶所在的位置顯示用戶所在的位置。rootlocalhost root# pwd/root 在linux文本環(huán)境,對于命令前的“rootlocalhost root#”,其中“root”表示登錄用戶名,“l(fā)ocalhost”代表計算機(jī)名,而“ ”后邊表示的是用戶當(dāng)前目錄,最后的字符為命令提示符。 linux操作系統(tǒng)默認(rèn)是使用普通用戶賬號登錄系統(tǒng),默認(rèn)的命令提示符為“$”,如果使用root即超級用戶賬號登錄系統(tǒng)后,則默認(rèn)的命令提示符為“#”。嵌入式操作系統(tǒng)定位文件和目錄 2. cd - 命令用來改變工作目錄在使用cd進(jìn)入某個目錄時,用戶必須具有對該目錄的讀權(quán)限。(1) 改變當(dāng)前所處的目錄
7、,如果用戶當(dāng)前處于/root目錄,想進(jìn)入/etc目錄。rootlocalhost root # cd /etcrootlocalhost root etc # pwd/etc注意cd后的空格。(2)返回上級目錄。rootlocalhost root # cd .rootlocalhost root / # pwd/注意“.”和“.”的用法。嵌入式操作系統(tǒng)定位文件和目錄 2. cd - 命令用來改變工作目錄(3)回到用戶主目錄。rootlocalhost root / # cd rootlocalhost root # pwd/root返回到用戶主目錄也可以直接執(zhí)行命令“cd”。在linux系統(tǒng)
8、中,“”表示為登錄主目錄,“.”表示目前所在的目錄,“.”表示目前目錄位置的上一層目錄。對于“root”用戶的主目錄是“/root”,其他一般用戶的主目錄默認(rèn)在“/home”下,例如,對于“student”用戶,默認(rèn)主目錄為“/home/student”。如果要在最近工作過的兩個目錄間切換,可以執(zhí)行命令“cd ”。嵌入式操作系統(tǒng)定位文件和目錄 3. find - 在硬盤上查找文件find是linux功能最為強(qiáng)大,使用也是較為復(fù)雜的命令。find命令格式:find 匹配條件路徑:希望查詢文件或文件集的目錄列表,目錄間用空格分隔。匹配條件:希望查詢的文件的匹配標(biāo)準(zhǔn)或說明。例:從根目錄開始查找文件名
9、為passwd的文件。rootlocalhost root:# find / -name passwd/etc/pam.d/passwd/etc/passwd/var/cache/system-tools-backends/backup/2/etc/passwd注:感興趣的同學(xué)可自行查閱相關(guān)資料,要注意的一點是find命令是在文件系統(tǒng)(硬盤)中進(jìn)行查找。嵌入式操作系統(tǒng)定位文件和目錄4. locate - 用來定位文件或目錄。同find命令相比較,locate命令是從數(shù)據(jù)庫中查找,而不是每次搜索文件系統(tǒng)。因為是從數(shù)據(jù)庫中查找,locate的速度遠(yuǎn)遠(yuǎn)快于find命令。但是,使用locate命令查找
10、的結(jié)果僅僅是在當(dāng)前數(shù)據(jù)庫,結(jié)果可能會沒有find準(zhǔn)確。查找apt.conf文件。rootlocalhost root:#locate *.conf/usr/share/tmake/solaris-g+/tmake.conf/usr/share/tmake/sunos-g+/tmake.conf注意:比find比較查找速度嵌入式操作系統(tǒng)瀏覽文件和目錄 1. ls - 用來顯示用戶當(dāng)前或指定目錄的內(nèi)容在ls命令中還可以使用通配符“*”、“?”。這樣可以使用戶很方便地查找特定形式的文件和目錄。如果不指定目錄,將顯示當(dāng)前目錄的內(nèi)容,否則顯示指定目錄的內(nèi)容。(1) 輸出根目錄下文件或目錄的詳細(xì)信息。ro
11、otlocalhost root:# ls l /總用量 84drwxr-xr-x 2 root root 4096 2007-05-19 05:00 bindrwxr-xr-x 3 root root 4096 2007-05-19 05:45 bootlrwxrwxrwx 1 root root 11 2007-05-19 04:26 cdrom - media/cdromdrwxr-xr-x 12 root root 13720 2007-07-20 23:55 dev嵌入式操作系統(tǒng)瀏覽文件和目錄 (2) 列出當(dāng)前目錄下所有文件(包括隱含文件)。rootlocalhost root #
12、ls a. .evolution .iceauthority .2. .gconf .java .profile.aptitude .gconfd .kde .qt. linux 系統(tǒng)的隱含文件是文件名“.”以開頭。(3) 列出目錄下所有文件或目錄的詳細(xì)信息。rrootlocalhost root # ls la drwxr-xr-x 35 root root 4096 2007-07-01 16:16 .drwxr-xr-x 2 root root 4096 2007-06-03 16:00 downloads嵌入式操作系統(tǒng)瀏覽文件和目錄 (4) 列出包括子目錄下
13、的所有文件。rootlocalhost root # ls r. :desktop downloads./desktop:arland catalogue1.xls screenshot-index ./downloads:嵌入式操作系統(tǒng)瀏覽文件和目錄 2. head - 用來查看文件的開頭部分 本命令只限于查看文件的前幾行,看不到文件實際上有多長。按照默認(rèn)設(shè)置,查看文件的前十行。 查看文件/etc/profile前五行。rootlocalhost root: # head -5 /etc/profile# /etc/profile# /etc/profile# system wide env
14、ironment and startup programs, for login setup# functions and aliases go in /etc/bashrc嵌入式操作系統(tǒng)瀏覽文件和目錄 3. tail - 查看文件結(jié)尾部分在缺省狀態(tài)tail命令用于查看文件結(jié)尾的十行,與head命令恰恰相反。這有助于查看日志文件的最后十行來閱讀重要的系統(tǒng)消息,還可以使用tail來觀察日志文件被更新的過程。(1) 即時觀察/var/log/messages的變化。rootlocalhost root # tail -f /var/log/messages 使用此命令,/var/log/messa
15、ges文件內(nèi)容一有變化將馬上在屏幕顯示出來。嵌入式操作系統(tǒng)瀏覽文件和目錄 4. cat - 合并文件或者顯示文件的內(nèi)容 cat是“concatenate”的縮寫,即合并文件。該命令可以顯示文件的內(nèi)容,或者是將多個文件合并成一個文件。(1)使用cat閱讀短文。rootlocalhost root # cat /etc/profile(2)建立兩個文件并重定向到file1與file2。重定向就是使系統(tǒng)改變它所認(rèn)定的標(biāo)準(zhǔn)輸出,或者改變標(biāo)準(zhǔn)輸出的目標(biāo)。要重定向標(biāo)準(zhǔn)輸出,使用“”符號。把“”符號放在cat命令之后(或在任何寫入標(biāo)準(zhǔn)輸出的工具程序和應(yīng)用程序之后),會把它的輸出重定向到跟在符號之后的文件中。
16、rootlocalhost root # cat file1 hello , student!按ctrld結(jié)束輸入。cat file2 this is great按ctrld結(jié)束輸入。嵌入式操作系統(tǒng)瀏覽文件和目錄 (3)追加file2文件到file1。rootlocalhost root # cat file2 file1rootlocalhost root # cat file1hello , student!this is great(4)合并file2與 file1文件到file3。rootlocalhost root # cat file2 file1 file3rootlocalho
17、st root # cat file3this is greathello , student!this is great按ctrld結(jié)束輸入。嵌入式操作系統(tǒng)瀏覽文件和目錄 5. more - 顯示文件的內(nèi)容 more命令是一般用于要顯示的內(nèi)容會超過一個屏幕的情況。為了避免畫面顯示時瞬間就閃過去,用戶可以使用more命令,讓畫面在顯示滿一頁時暫停,此時可按空格健繼續(xù)顯示下一個畫面,按b鍵就會往回(back)一頁顯示或按q鍵停止顯示。(1)顯示/etc/profile文本文件的內(nèi)容。rootlocalhost root # more /etc/profile屏幕在顯示滿一屏?xí)r暫停,此時可按空格健
18、繼續(xù)顯示下一屏,不像cat命令那樣對不能一屏顯示的就一閃而過到最后一屏。嵌入式操作系統(tǒng)瀏覽文件和目錄 5. more - 顯示文件的內(nèi)容(2)當(dāng)用ls命令查看文件列表時,如果文件太多,則可配合more命令使用。rootlocalhost root # ls -al | more 以長格形式顯示當(dāng)前目錄下的文件列表,顯示滿一個屏幕便暫停,可按空格鍵繼續(xù)顯示下一畫面,或按q鍵結(jié)束。6. less-顯示文件內(nèi)容 less命令與more命令的區(qū)別。嵌入式操作系統(tǒng)搜索文件內(nèi)容搜索文件內(nèi)容可以使用grep命令1. grep - 在文件中查找指定的字串grep除了可以查找固定的字符串,還可以使用較為復(fù)雜的匹
19、配模式。要實現(xiàn)復(fù)雜的匹配模式,需要使用如下的表達(dá)符號:? 匹配字符串中的一個字符。* 匹配任意個字符。* 匹配“*”字符。? 匹配“?”字符。) 匹配“)”字符。(1)搜索profile文件中字符串then并輸出。rootlocalhost root # grep then /etc/profile嵌入式操作系統(tǒng)搜索文件內(nèi)容搜索文件內(nèi)容可以使用grep命令1. grep - 在文件中查找指定的字串(2)搜索profile文件中字符串then并以顯示行數(shù)輸出。rootlocalhost root # grep -n then /etc/profile7: if ! echo $path | /b
20、in/egrep -q (|:)$1($|:) ; then8: if $2 = after ; then17:if id -u = 0 ; then37:if -z $inputrc -a ! -f $home/.inputrc ; then 44: if -r $i ; then顯示說明在/etc/profile文件的7,8,17,37,44行包含then字符串。嵌入式操作系統(tǒng)操作文件和目錄1. cp - 復(fù)制文件或目錄(1)復(fù)制文件/etc/profile到當(dāng)前目錄。rootlocalhost root # cp /etc/profile .(2)復(fù)制/etc/apt目錄下所有的內(nèi)容,包
21、括所有子目錄到當(dāng)前目錄。rootlocalhost root # cp r /etc/apt .(3)使用通配符復(fù)制etc目錄下mail開頭的所有文件到當(dāng)前目錄rootlocalhost root # cp /etc/mail* . 嵌入式操作系統(tǒng)操作文件和目錄2. touch - 生成一個空文件或修改文件的存取/修改的時間記錄值。(1)將當(dāng)前下的文件時間修改為系統(tǒng)的當(dāng)前時間。rootlocalhost root # touch * rootlocalhost root # ls(2) 新建文件。rootlocalhost root # touch testrootlocalhost root
22、 # ls-rw-r-r- 1 root root 0 2007-07-13 18:10 test注:若文件存在,則修改為系統(tǒng)的當(dāng)前時間;若文件不存在,則生成一個為當(dāng)前時間的空文件。嵌入式操作系統(tǒng)操作文件和目錄2. touch - 生成一個空文件或修改文件的存取/修改的時間記錄值。(3)將test文件的日期改為20080710。rootlocalhost root # touch d 20070710 testrootlocalhost root # ls-rw-r-r- 1 jenod jenod 0 2007-07-10 00:00 test嵌入式操作系統(tǒng)操作文件和目錄3. mv - 移動
23、文件可以將文件及目錄移到另一目錄下,或更改文件及目錄的名稱(1)將test文件移動上層目錄。rootlocalhost root # mv test ./ (2)將profile改名為profile.back。rootlocalhost root # mv profile profile1.back嵌入式操作系統(tǒng)操作文件和目錄4. rm - 刪除文件和目錄(1)刪除文件主目錄下file1文件。rootlocalhost root # rm profile(2)刪除文件主目錄下file2文件時給以提示。rootlocalhost root # rm i file2:是否刪除一般文件“file2”
24、? (3)遞歸刪除目錄。rootlocalhost root # rm -r apt(4)強(qiáng)制遞歸刪除目錄。rootlocalhost root # rm rf apt不給提示直接刪除apt目錄下的文件與apt目錄。嵌入式操作系統(tǒng)操作文件和目錄5. mkdir - 創(chuàng)建目錄(1)在當(dāng)前目錄下建立新目錄dir1。rootlocalhost root # mkdir dir1(2)若當(dāng)前目錄下無book目錄,在當(dāng)前目錄創(chuàng)建book/linux子目錄。rootlocalhost root # mkdir book/linuxmkdir: 無法創(chuàng)建目錄book/linux: no such file
25、or directoryrootlocalhost root # mkdir p /book/linuxrootlocalhost root # lsbook jenod一次創(chuàng)建多層目錄要加-p參數(shù)。嵌入式操作系統(tǒng)操作文件和目錄6. rmdir - 刪除目錄與創(chuàng)建目錄類似,加上-p參數(shù)表示如果刪除一個目錄后,其父目錄為空,則將其父目錄一同刪除。(1)刪除目錄。rootlocalhost root # rmdir dir1(2)刪除當(dāng)前目錄下的book/linux子目錄,如果book目錄為空,也刪除該目錄。rootlocalhost root # rmdir p book/linuxbook目錄
26、不為空則保留。嵌入式操作系統(tǒng)簡單系統(tǒng)管理1. shutdown - 關(guān)機(jī)命令執(zhí)行此命令時,每個用戶都會收到一條信息,從中可以得到關(guān)機(jī)的最后期限。一般只有root賬號才有權(quán)執(zhí)行此命令。(1)立即關(guān)機(jī)。rootlocalhost root # shutdown h now(2)關(guān)閉系統(tǒng)后重啟系統(tǒng)。rootlocalhost root # shutdown r(3)系統(tǒng)1分鐘后重啟。rootlocalhost root # shutdown r +1minutes嵌入式操作系統(tǒng)簡單系統(tǒng)管理1. shutdown - 關(guān)機(jī)命令(4)系統(tǒng)15:30后重啟。rootlocalhost root # shu
27、tdown r 15:30 shutdown常用的時間參數(shù)有hh:mm或+m兩種模式。hh:mm格式表示在幾點幾分執(zhí)行shutdown命令。例如“shutdown 10:45”表示將在10:45執(zhí)行shutdown。+m表示m分鐘后執(zhí)行shutdown。比較特別的用法是以now表示立即執(zhí)行shutdown。(5)最安全的關(guān)機(jī)方法。rootlocalhost root # sync;sync;sync;shutdown h now嵌入式操作系統(tǒng)簡單系統(tǒng)管理2. logname - 顯示登錄時的用戶名顯示登錄時的用戶名。rootlocalhost root # lognameroot3. who查
28、看系統(tǒng)中登錄的用戶(1)查看用戶自己的信息。rootlocalhost root # who m(2)顯示登錄的用戶名和數(shù)量。rootlocalhost root # who -qroot studentusers=2嵌入式操作系統(tǒng)簡單系統(tǒng)管理4. id - 顯示當(dāng)前用戶名和所屬組名顯示當(dāng)前用戶名和所屬組名。rootlocalhost root # iduid=0(root) gid=0(root) groups=0(root)表示當(dāng)前用戶是root,其組名也是root。嵌入式操作系統(tǒng)簡單系統(tǒng)管理5. su - 改變用戶身份su 意思是“substitute users(代替用戶)”,在使用某
29、個用戶登錄系統(tǒng)后,允許改變用戶身份,改用其他用戶身份繼續(xù)使用系統(tǒng)。(1)改變超級用戶root用戶到student用戶。rootlocalhost root # su stduent$cd /切換到student用戶家目錄(2)改變超級用戶student用戶到root用戶。$ su rootpassword:rootlocalhost root # 為了安全,變換到root用戶時要輸入root用戶密碼。嵌入式操作系統(tǒng)簡單系統(tǒng)管理6. man - 獲得命令幫助要想查看某個命令的使用手冊頁(man page),只要輸入man后跟該命令的名稱即可。(1)查看ls的使用手冊。rootlocalhost
30、root # man ls使用man命令,首先進(jìn)入man page環(huán)境,要退出man page幫助直接按q。其他man page按鍵: 空格 向下翻頁 page up向下翻頁page down 向下翻頁 /word 查找word單詞(2)查看man自己的使用手冊。rootlocalhost root # man man嵌入式操作系統(tǒng)簡單系統(tǒng)管理7. date - 命令可以顯示/修改當(dāng)前的日期時間(1)顯示系統(tǒng)當(dāng)前時間。rootlocalhost root # date(2)將時間更改為12月10日10點23分2010年。rootlocalhost root # date 12101023201
31、08. cal - 顯示日歷或年歷(1)顯示當(dāng)月的日歷。rootlocalhost root # cal(2)顯示2010年12月的日歷。rootlocalhost root # cal 12 2010 (3)顯示2003年的日歷。rootlocalhost root # cal - y 2003嵌入式操作系統(tǒng)簡單系統(tǒng)管理9. df - 查看磁盤命令檢查文件系統(tǒng)的磁盤空間占用情況??梢岳迷撁顏慝@取硬盤被占用了多少空間,目前還剩下多少空間等信息。(1) 查看文件系統(tǒng)各個分區(qū)的占用情況。rootlocalhost root # df 文件系統(tǒng) 1k-塊 已用 可用 已用% 掛載點/dev/hd
32、a2 28834744 3785064 23584956 14% /dev/hda1 474443 20924 429022 5% /bootdf命令默認(rèn)以k為單位顯示分區(qū)情況,如果要m為單位命令為:df m。嵌入式操作系統(tǒng)簡單系統(tǒng)管理9. df - 查看磁盤命令(2) 查看文件系統(tǒng)的各個分區(qū)的占用情況并顯示文件類型。rootlocalhost root # df t文件系統(tǒng) 1k-塊 已用 可用 已用% 掛載點/dev/hda2 ext3 28834744 3785064 23584956 14% /dev/hda1 ext3 474443 20924 429022 5% /boot嵌入式操
33、作系統(tǒng)簡單系統(tǒng)管理10. du - 查看目錄或文件容量(1)列出/etc目錄下與文件所占容量。rootlocalhost root # du / etc(2)以m為單位列出/home目錄下與文件所占容量。rootlocalhost root # du -m / etc(3)僅僅列出/etc目錄容量。rootlocalhost root # du -s / etc嵌入式操作系統(tǒng)文件壓縮和解壓縮當(dāng)需要把一組文件貯存成一個文件以便備份或傳輸?shù)搅硪粋€目錄甚至另一臺計算機(jī),或者讓某些文件占用少量磁盤空間并能更快地通過互聯(lián)網(wǎng)下載時,通常需要將文件壓縮。在linux中,文件壓縮工具gzip、bzip2和zi
34、p對應(yīng)的解壓工具分別是gunzip、bunzip2、unzip。bzip2和gzip壓縮工具提供了最大限度的壓縮,并且可在多數(shù)類似unix的操作系統(tǒng)上找到,因此得到廣泛應(yīng)用。如果需要在linux和其他操作系統(tǒng)如windows間傳輸文件,應(yīng)該使用zip,因為該命令與windows上的壓縮工具最兼容。下面簡單介紹一下常用的壓縮/解壓縮命令:嵌入式操作系統(tǒng)文件壓縮和解壓縮1. zip和unzip使用zip來壓縮文件,使用unzip來解壓縮文件。(1)壓縮單個文件。rootlocalhost root # cp /etc/man.config .rootlocalhost root # zip man
35、 man.config上面的命令把man.config,然后放入man.zip文件中。 (2)壓縮多個文件與目錄到同一個壓縮文件。rootlocalhost root # zip -r zip1 man.config man.zip上述命令把man.config與man.zip壓縮到zip1文件中。嵌入式操作系統(tǒng)文件壓縮和解壓縮2. gzip和gunzip使用gzip來壓縮文件,使用gunzip來解壓縮文件,其實gzip其壓縮命令與解壓縮命令gunzip實際上是同一個程序,文件的大小和參數(shù)完全一樣,只是命令的名稱不同。文件會被壓縮,并被保存為 filename.gz。當(dāng)解壓縮時,filenam
36、e.gz 會被刪除,同時filename被還原。對比zip,gzip有以下特點:zip命令具有將許多文件與目錄壓縮成一個文件的功能,但gzip卻不能;用gzip命令壓縮后源文件會被刪除。嵌入式操作系統(tǒng)文件壓縮和解壓縮2. gzip和gunzip(1)壓縮單個文件。rootlocalhost root # cp /etc/man.config .rootlocalhost root # gzip man.configrootlocalhost root # ls -l使用ls -l查看結(jié)果時,man.config是沒有了,但多了一個man.config.gz文件。(2)壓縮多個文件。rootlo
37、calhost root # touch a brootlocalhost root # gzip a brootlocalhost root # ls a.gz b.gz對比發(fā)現(xiàn)gzip可以一次壓縮許多文件,但不可以壓縮目錄,也不可以將許多文件與目錄壓縮成一個文件。嵌入式操作系統(tǒng)文件壓縮和解壓縮3. tar - 打包命令tar 是linux常用的壓縮與解壓縮類命令,更多是用于硬盤數(shù)據(jù)備份,tar可以對文件和目錄進(jìn)行打包。利用tar,用戶可以對某一特定文件進(jìn)行打包(一般用作備份文件),也可以在包中改變文件,或者向包中加入新的文件。(1)將/home目錄下所有文件打包成test.tar。root
38、localhost root # tar -cvf test.tar /home/*注意擴(kuò)展名.tar需自行加上。(2)將所有文件打包成test1.tar,再用gzip命令壓縮: rootlocalhost root # tar -zcvf test1.tar.gz /tmp/*嵌入式操作系統(tǒng)文件壓縮和解壓縮3. tar - 打包命令(3)查看test.tar文件中包括了哪些文件rootlocalhost root # tar -tf test.tar(4)將text1.tar解壓縮rootlocalhost root # tar -xvf test.tar(5)將text1.tar.gz解壓
39、縮rootlocalhost root # tar -zxvf test.tar嵌入式操作系統(tǒng)linux 用戶管理linux是一個多任務(wù)、多用戶的操作系統(tǒng),任何一個要使用系統(tǒng)資源的使用者(用戶),都必須首先申請一個帳號,然后用這個帳號登錄系統(tǒng)。用戶的帳號可以幫助系統(tǒng)對使用系統(tǒng)的用戶進(jìn)行跟蹤,并控制用戶對系統(tǒng)資源的訪問,另一方面也可以幫助用戶組織文件,并為用戶提供安全性的保護(hù)。 思考:理解用戶與帳號的關(guān)系?嵌入式操作系統(tǒng)linux 組組是具有共同用戶特征的用戶的集合,這與現(xiàn)實生活中的個人與集體是類似的。使用組對linux系統(tǒng)來說提高系統(tǒng)的靈活性,對于具體的linux系統(tǒng)管理員來說通過管理組來管理
40、用戶,提高了工作效率。嵌入式操作系統(tǒng)linux用戶linux下的用戶可以分為三類:超級用戶、系統(tǒng)用戶和普通用戶。超級用戶:用戶名為root,具有一切權(quán)限,只有進(jìn)行系統(tǒng)維護(hù)(例如建立用戶等)或其它必要情形下才用超級用戶登錄,以避免系統(tǒng)出現(xiàn)安全問題。系統(tǒng)用戶:linux系統(tǒng)正常工作所必需的內(nèi)建的用戶,主要是為了滿足相應(yīng)的系統(tǒng)進(jìn)程對文件屬主的要求而建立的,系統(tǒng)用戶不能用來登錄,如bin、daemon、adm、lp等用戶,系統(tǒng)用戶也稱為虛擬用戶。普通用戶:為了讓使用者能夠使用linux系統(tǒng)資源而建立的,我們的大多數(shù)用戶屬于此類。其實 linux 并不會直接認(rèn)識你的“用戶名稱”,它認(rèn)識的其實以數(shù)字表示的
41、“用戶 id”,每個用戶都有一個“用戶 id”,稱為uid。在linux中,超級用戶的uid為0,系統(tǒng)用戶的uid一般為1499,普通用戶的uid默認(rèn)為100060000之間的值。嵌入式操作系統(tǒng)linux用戶登入系統(tǒng)過程linux系統(tǒng)采用純文本文件來保存賬號的各種信息,其中最重要的文件有/etc/passwd、 /etc/shadow、/etc/group這幾個。linux用戶登入系統(tǒng)過程實質(zhì)是系統(tǒng)讀取、核對這幾個文件的過程。過程如下:首先linux會出現(xiàn)一個登錄系統(tǒng)的畫面提示輸入賬號,輸入賬號與密碼;linux 接著會先找尋 /etc/passwd 里面是否有這個賬號名,如果沒有則退出登錄,
42、如果有的話則將該賬號對應(yīng)的 uid ( user id )與 gid ( group id )讀出來,另外,該賬號的對應(yīng)的用戶主目錄與 shell 設(shè)定也一并讀出; 核對密碼表,這時 linux 會進(jìn)入 /etc/shadow 里面找出登錄賬號與 uid相對應(yīng)的、記錄,然后核對一下剛剛輸入的密碼與此文件的密碼是否符合;以上核定沒有沒有問題,用戶正式進(jìn)入系統(tǒng)。 嵌入式操作系統(tǒng)賬號文件對于與帳號有關(guān)的文件有/etc/passwd、/etc/shadow、/etc/group,我們可以使用vi或其他編輯器來更改它們,也可以使用專門的命令來更改它們。賬號的管理實際上就是對這幾個文件的內(nèi)容進(jìn)行添加、修改
43、和刪除記錄行的操作,不管以哪種形式管理賬號,了解這幾個文件的內(nèi)容十分必要。1 /etc/passwd用戶帳號文件/etc/passwd文件是賬號管理中最重要的一個文件,它是一個純文本文件。每一個注冊用戶在該文件都有一個對應(yīng)的記錄行,這一記錄行記錄了此用戶的必要信息。嵌入式操作系統(tǒng)1 /etc/passwd用戶帳號文件例:顯示/etc/passwd文件。rootlocalhost root# cat /etc/passwd從passwd文件中可以看到,第一行是root用戶,緊接的是系統(tǒng)用戶,普通用戶通常在文件的尾部。passwd文件中的每一行由7個字段的數(shù)據(jù)組成,字段之間用“:”分隔,其格式如下
44、:賬號名稱:密碼:uid:gid:個人資料:主目錄:shell嵌入式操作系統(tǒng)賬號名稱:密碼:uid:gid:個人資料:主目錄:shell說明如下:賬號名稱 用戶登錄linux系統(tǒng)時使用的名稱。密碼 這里的密碼是經(jīng)過加密后的密碼,而不是真正的密碼,若為“x”,說明密碼已經(jīng)被移動到 shadow 這個加密過后的文件。uid 用戶的標(biāo)識,是一個數(shù)值,linux系統(tǒng)內(nèi)部使用它來區(qū)分不同的用戶。通常 linux 對于 uid 有幾個限制,說明如下:0系統(tǒng)管理員,也即root用戶,所以當(dāng)你要作另一個系統(tǒng)管理員賬號時,你可以將該賬號的 uid 改成 0 即可; 1500保留給系統(tǒng)使用的id,其實 16553
45、4 之間的賬號并沒有不同,也就是除了 0 之外,其它的 uid 并沒有不一樣,但默認(rèn) 500 以下給系統(tǒng)作為保留賬號是一個好習(xí)慣。100065535在linux中給一般使用者用的,注意到?jīng)]有,passwd最后一行的記錄sutdent用戶的uid 就是1000。嵌入式操作系統(tǒng)賬號名稱:密碼:uid:gid:個人資料:主目錄:shell說明如下:gid 用戶所在組的標(biāo)識,是一個數(shù)值,linux系統(tǒng)內(nèi)部使用它來區(qū)分不同的組,相同的組具有相同的gid。個人資料 可以記錄用戶的個人信息,如姓名、電話等信息(如studnet用戶資料)。主目錄 對于 root 的主目錄在 /root ,所以當(dāng) root 登
46、入之后,馬上在的所在就是 /root 里頭;對于其他用戶通常是/home/username,這里username是用戶名,用戶執(zhí)行“cd”命令時當(dāng)前目錄會切換到個人主目錄,如studnet用戶的主目錄為/home/studnet。shell 定義用戶登錄后使用的shell版本,默認(rèn)是bash。 嵌入式操作系統(tǒng)2 /etc/shadow用戶密碼文件任何用戶對passwd文件都有讀的權(quán)限,雖然密碼已經(jīng)經(jīng)過加密,但還是不能避免有人會獲取加密后的密碼。為了安全,linux系統(tǒng)對密碼提供了更多一層的保護(hù),即把加密后的密碼移動到 /etc/shadow 這個文件中,這個文件只有超級用戶能夠讀取shadow
47、的內(nèi)容,并且linux設(shè)置了很多的限制參數(shù)在 /etc/shadow 里。密碼如果經(jīng)過shadow保護(hù),在/etc/passwd文件中,每一記錄行的密碼字段會變成“x”,并且在/etc目錄下存在文件shadow。 嵌入式操作系統(tǒng)2 /etc/shadow用戶密碼文件例:查看shadow文件的內(nèi)容。 rootlocalhost root# cat /etc/shadow該文件格式如下: 用戶登錄名 用戶的加密口令 口令最后修改時間距1970年1月1日的天數(shù) 密碼不可更改的天數(shù)(防止修改口令,然后立刻將它改回到老口令) 密碼需要重新更改的天數(shù) 密碼更改期限前的警告期限 密碼過期的寬限時間 賬號失效
48、日期 保留域。嵌入式操作系統(tǒng)用戶名:密碼:最后一次修改時間:最小時間間隔:最大時間間隔:警告時間:不活動時間:失效時間:標(biāo)志字段。說明如下:最后一次修改時間:表示從1970年1月1日起到上次修改口令所經(jīng)過的天數(shù)。最小時間間隔:表示兩次修改口令之間至少經(jīng)過的天數(shù)。最大時間間隔:表示口令還會有效的最大天數(shù),如果是99999則表示永不過期警告時間:表示口令失效前多少天內(nèi)系統(tǒng)向用戶發(fā)出警告。不活動時間:表示禁止登陸前用戶名還有效的天數(shù)。失效時間:表示用戶被禁止登陸的時間。標(biāo)志字段無意義,未使用。安裝linux系統(tǒng)時,系統(tǒng)缺省采用shadow來保護(hù)密碼。如果安裝linux時未啟用shadow,可以使用p
49、wconv命令啟用shadow。注意用root用戶登錄來執(zhí)行該命令,執(zhí)行的結(jié)果是/etc/passwd文件中的密碼字段被改為“x”,同時產(chǎn)生/etc/shadow文件。相反,如果要取消shadow功能,可使用pwunconv命令,不建議這樣。在shadow文件中,密碼字段為“*”表示用戶被禁止登錄,為“!”表示用戶被鎖定。 嵌入式操作系統(tǒng)useradd添加用戶賬號只有超級用戶root才有權(quán)使用此命令,使用useradd命令創(chuàng)建新的用戶賬號后,應(yīng)利用passwd命令為新用戶設(shè)置口令。一個類似的命令是adduser,也用來創(chuàng)建用戶賬號。(1)添加student1用戶。rootlocalhost:#
50、 useradd student1查看用戶添加結(jié)果。rootlocalhost:#cat /etc/passwdroot:x:0:0:root:/root:/bin/bashstudnet1:x:1001:1001:student1,:/home/ studnet1 :/bin/sh看到?jīng)]有,用戶student1添加成功,同時發(fā)現(xiàn),使用命令useradd添加用戶同時添加了許多默認(rèn)其他設(shè)置,比如說用戶主目錄,shell版本等。嵌入式操作系統(tǒng)passwd修改用戶屬性添加完用戶后首要文件是修改用戶密碼。(1)root修改用戶student1的密碼屬性。rootlocalhost:# passwd s
51、tudent1enter new password:retype new password: passwd:已成功更新密碼修改用戶的密碼需要兩次輸入密碼確認(rèn)。密碼是保證系統(tǒng)安全的一個重要措施,在設(shè)置密碼時,不要使用過于簡單的密碼。技巧:為了安全,密碼最好需要底下幾個特性: 密碼中含有數(shù)個特殊字符,例如 $#&* 及數(shù)字鍵等等:密碼長度至少要到 6 8 個以上才好; 沒有特殊意義的字母或數(shù)字組合,并且夾著很多的特殊字符。嵌入式操作系統(tǒng)(2)修改用戶自己密碼。rootlocalhost:# passwd enter new unix password: retype new unix pa
52、ssword: passwd:已成功更新密碼(3)鎖定用戶賬號student1登錄。在系統(tǒng)中,有時需要臨時禁止某個用戶賬號登錄。rootlocalhost:# passwd -l student1查看linux系統(tǒng)中管理用戶賬號的系統(tǒng)文件/etc/shadow,可看到其密碼域的第一個字符前加了符號“!”(若系統(tǒng)沒有密碼保護(hù)則文件為/etc/passwd)。rootlocalhost:# cat /etc/shadowstudent2:13713:0:99999:7: 嵌入式操作系統(tǒng)技巧:鎖定用戶賬號student1登錄也可修改etc/passwd文件,將該用戶的passwd域的第一個字符前加一
53、個號注銷這行記錄,如要啟用時再去掉。 (4) 解除用戶賬號student1鎖定。rootlocalhost:# passwd u student1嵌入式操作系統(tǒng)userdel刪除用戶賬號若不再允許用戶登錄系統(tǒng)時,可以將用戶賬號刪除。(1)只刪除studnt2登錄賬號但保留相關(guān)目錄。rootlocalhost:# userdel studnet2只刪掉 /etc/passwd 與 /etc/shadow 的與用戶student2有關(guān)的內(nèi)容,其它的用戶相關(guān)信息,比如用戶主目錄等保留,方便以后再次添加這個用戶。 其實更好的方法是使用命令暫停用戶登錄或者將 /etc/shadow倒數(shù)一個字段設(shè)定為 0
54、 也可以讓該賬號無法使用,但是所有跟該賬號相關(guān)的數(shù)據(jù)都會留下來。(2)完全刪除studnt1登錄賬號。rootlocalhost:# userdel r studnet1刪除賬號的同時,將用戶主目錄及其內(nèi)部文件同時刪除。 嵌入式操作系統(tǒng)權(quán)限控制機(jī)制 linux系統(tǒng)是個多用戶系統(tǒng),能做到不同的用戶能同時使用系統(tǒng)。問題: 假設(shè)有一臺電腦,多人使用,用戶studnet1有一個人文件,這個文件對于student1來說是可讀可寫的,同班同學(xué)是可以讀的,而其他的同學(xué)是不可讀寫的,對于多用戶操作系統(tǒng)來說,怎樣保證這種安全性?linux通過一定文件權(quán)限控制機(jī)制來實現(xiàn)嵌入式操作系統(tǒng)linux權(quán)限控制機(jī)制linu
55、x系統(tǒng)是個多用戶系統(tǒng),能做到不同的用戶能同時訪問不同的文件,因此一定要有文件權(quán)限控制機(jī)制。文件主與文件組:linux的文件或目錄被一個用戶擁有時,這個用戶稱為文件的擁有者(或文件主),同時文件還被指定的用戶組所擁有,這個用戶組稱為文件所屬組。一個用戶可以是不同組的成員,這可以由管理員控制。文件的權(quán)限:由權(quán)限標(biāo)志來決定,權(quán)限標(biāo)志決定了文件的擁有者、文件的所屬組、其他用戶對文件訪問的權(quán)限。嵌入式操作系統(tǒng) 文件與目錄的權(quán)限linux系統(tǒng)中的每個文件和目錄都有3種不同的用戶:文件主(user)、同組用戶(group)、可以訪問系統(tǒng)的其他用戶(others)。不同的用戶都有相應(yīng)訪問權(quán)限,用它確定用戶可以
56、通過何種方式對文件和目錄進(jìn)行訪問和操作。訪問權(quán)限規(guī)定不同用戶3種訪問文件或目錄的方式:讀(r)、寫(w)、可執(zhí)行或查找(x)。1文件訪問權(quán)限讀權(quán)限(r)表示只允許指定用戶讀取相應(yīng)文件的內(nèi)容,禁止對它做任何的更改操作。寫權(quán)限(w)表示允許指定用戶打開并修改文件。執(zhí)行權(quán)限(x)表示允許指定用戶將該文件作為一個程序執(zhí)行。 嵌入式操作系統(tǒng) 文件與目錄的權(quán)限2目錄訪問權(quán)限讀權(quán)限(r)表示可以列出存儲在該目錄下的文件,即讀目錄內(nèi)容。寫權(quán)限(w)表示允許你從目錄中刪除或創(chuàng)建新的文件或目錄。執(zhí)行權(quán)限(x)表示允許你在目錄中查找,并能用cd命令將工作目錄切換到該目錄。用chmod 命令可改變文件或目錄的訪問權(quán)限
57、。文件的權(quán)限容易理解,但對于目錄就有點費解,打個比方,假如教室是一個目錄,教室只讀說明,說明你在走廊上通過窗口可以看到教室里面,但你不能進(jìn)入教室,因為你只讀;如果教室可以執(zhí)行呢?,說明你雖能不能通過窗口可以看到教室里面,但你可以破們而入,因為你可以執(zhí)行。所以要開放一個目錄,一般說來給定目錄r權(quán)限,同時要給定x權(quán)限。嵌入式操作系統(tǒng)例1:回顧使用命令ls查看文件/目錄屬性的屬性。前面已經(jīng)簡單介紹了每一組的作用,繼續(xù)對第一組的內(nèi)容做介紹。第一組共有10列,分為四類。文件類型:由第一列表示。為“ d ”則是目錄; 為“ ”則是文件,例如上表的第 5 行; 若是“ l ”則表示為連結(jié)文件(link fi
58、le); 若是“b ”則表示為塊設(shè)備文件; 若是“ c ”則表示為字符設(shè)備文件接下來的屬性中,三個為一小組,表示文件主、同組用戶、其他用戶權(quán)限。文件擁有者的權(quán)限(24列);同組的權(quán)限(57列);其它用戶的權(quán)限(810列)。嵌入式操作系統(tǒng)例2:使用命令ls查看文件/etc/man.config的屬性。rootlocalhost root# ls -l /etc/man.config-rw-r-r- 1 root root 4557 2003-02-10 /etc/man.config前面十列說明如下:第1列為“-”說明man.config為文件;第24列為“rw-”說明文件主可以讀、寫,但不可以
59、執(zhí)行;第57列為“r-”說明同組用戶可以讀,但不可以寫與執(zhí)行;第810列為“r-”說明其他用戶權(quán)限為只讀。嵌入式操作系統(tǒng)權(quán)限控制命令1chmod改變或設(shè)置文件或目錄的訪問權(quán)限。(1)使用字符方式設(shè)定權(quán)限。用戶字符表示:基本上,文件或目錄九個屬性分別屬于文件主 、組用戶 、其他用戶這3類用戶。在設(shè)定權(quán)限時可以對3類采用如下方式表示:u(user)表示文件的所有者。g(group)表示文件的所屬組。o(others)表示其他用戶。a(all)代表所有用戶(即u+g+o)。權(quán)限字符表示:r表示讀權(quán)限;w表示寫權(quán)限;x表示執(zhí)行權(quán)限。最后要指明是增加(+)還是取消(-)權(quán)限,或是只賦予權(quán)限(=)。嵌入式
60、操作系統(tǒng)例1:將文件profile的權(quán)限改為所有用戶對其都有執(zhí)行權(quán)限。rootlocalhost:# ls -l profile -rw-r-r- 1 root root 369 2007-07-14 01:50 profilerootlocalhost:# chmod a+x profile rootlocalhost:# ls -l profile -rwxr-xr-x 1 root root 369 2007-07-14 01:50 profile執(zhí)行命令chmod a+x profile后所有用戶相應(yīng)的權(quán)限位都添加了“x”,profile文件具有執(zhí)行權(quán)限了嵌入式操作系統(tǒng)例2:將文件profil
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版跨境電商平臺傭金比例調(diào)整合同3篇
- 二零二五版?zhèn)€人教育貸款擔(dān)保合同模板3篇
- 二零二五年建筑裝修幫工雇傭合同2篇
- 二零二五版寄賣合同范本:藝術(shù)品寄售代理中介服務(wù)協(xié)議2篇
- 二零二五版辦公設(shè)備智能化升級改造合同5篇
- 二零二五版橋梁工程勞務(wù)分包合同模板6篇
- 二零二五版職工住房借款與社區(qū)文化活動支持合同3篇
- 二零二五年度黃牛養(yǎng)殖與屠宰行業(yè)購銷法律法規(guī)遵守合同3篇
- 二零二五年鋁藝門安裝與外觀設(shè)計承包合同3篇
- 二零二五年度電商代發(fā)貨及品牌授權(quán)合同2篇
- 店鋪交割合同范例
- 大型活動LED屏幕安全應(yīng)急預(yù)案
- 舞蹈課家長會
- 2024年內(nèi)蒙古包頭市中考道德與法治試卷
- 湖南省長沙市2024-2025學(xué)年高二上學(xué)期期中考試地理試卷(含答案)
- 自來水質(zhì)量提升技術(shù)方案
- 金色簡約蛇年年終總結(jié)匯報模板
- 農(nóng)用地土壤環(huán)境質(zhì)量類別劃分技術(shù)指南(試行)(環(huán)辦土壤2017第97號)
- 反向開票政策解讀課件
- 工程周工作計劃
- 房地產(chǎn)銷售任務(wù)及激勵制度
評論
0/150
提交評論