新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 牛人業(yè)話 > 【從0開始學(xué)樹莓派】序列之9 Linux知識(shí)你知多少?

【從0開始學(xué)樹莓派】序列之9 Linux知識(shí)你知多少?

作者: 時(shí)間:2015-02-06 來(lái)源:網(wǎng)絡(luò) 收藏

  本節(jié)我們將了解一下方面的知識(shí),主要是從下面3個(gè)方面進(jìn)行講解:

本文引用地址:http://butianyuan.cn/article/269612.htm

  1.簡(jiǎn)單介紹

  2.文件系統(tǒng)

  3.常用命令介紹

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)



  一、Linux簡(jiǎn)單介紹

  Linux是一套免費(fèi)使用和自由傳播的類Unix操作系統(tǒng),是一個(gè)基于POSIX和UNIX的多用戶、多任務(wù)、支持多線程和多CPU的操作系統(tǒng)。它能運(yùn)行主要的UNIX工具軟件、應(yīng)用程序和網(wǎng)絡(luò)協(xié)議。它支持32位和64位硬件。Linux繼承了Unix以網(wǎng)絡(luò)為核心的設(shè)計(jì)思想:一個(gè)性能穩(wěn)定的多用戶網(wǎng)絡(luò)操作系統(tǒng)。

  Linux操作系統(tǒng)誕生于1991年的10月5日(這是第一次正式向外公布的時(shí)間)。Linux存在著許多不同的Linux版本,但它們都使用了Linux內(nèi)核。Linux可安裝在各種計(jì)算機(jī)硬件設(shè)備中,比如手機(jī)、平板電腦、路由器、視頻游戲控制臺(tái)、臺(tái)式計(jì)算機(jī)、大型機(jī)和超級(jí)計(jì)算機(jī)。嚴(yán)格來(lái)講,Linux這個(gè)詞本身只表示Linux內(nèi)核,但實(shí)際上人們已經(jīng)習(xí)慣了用Linux來(lái)形容整個(gè)基于Linux內(nèi)核,并且使用GNU 工程各種工具和數(shù)據(jù)庫(kù)的操作系統(tǒng)。

  二、文件系統(tǒng)



  1.文件類型

  (A)、普通文件(regular file):就是一般存取的文件,由ls -al顯示出來(lái)的屬性中,第一個(gè)屬性為 [-],例如 [-rwxrwxrwx]。另外,依照文件的內(nèi)容,又大致可以分為:

  (a)、純文本文件(ASCII):這是Unix系統(tǒng)中最多的一種文件類型,之所以稱為純文本文件,是因?yàn)閮?nèi)容可以直接讀到的數(shù)據(jù),例如數(shù)字、字母等等。設(shè) 置文件幾乎都屬于這種文件類型。舉例來(lái)說(shuō),使用命令“cat ~/.bashrc”就可以看到該文件的內(nèi)容(cat是將文件內(nèi)容讀出來(lái))。

  (b)、二進(jìn)制文件(binary):系統(tǒng)其實(shí)僅認(rèn)識(shí)且可以執(zhí)行二進(jìn)制文件(binary file)。Linux中的可執(zhí)行文件(腳本,文本方式的批處理文件不算)就是這種格式的。舉例來(lái)說(shuō),命令cat就是一個(gè)二進(jìn)制文件。

  (c)、數(shù)據(jù)格式的文件(data):有些程序在運(yùn)行過(guò)程中,會(huì)讀取某些特定格式的文件,那些特定格式的文件可以稱為數(shù)據(jù)文件(data file)。舉例來(lái)說(shuō),Linux在用戶登入時(shí),都會(huì)將登錄數(shù)據(jù)記錄在 /var/log/wtmp文件內(nèi),該文件是一個(gè)數(shù)據(jù)文件,它能通過(guò)last命令讀出來(lái)。但使用cat時(shí),會(huì)讀出亂碼。因?yàn)樗菍儆谝环N特殊格式的文件。

  (B)、目錄文件(directory):就是目錄,第一個(gè)屬性為 [d],例如 [drwxrwxrwx]。

  (C)、連接文件(link):類似Windows下面的快捷方式。第一個(gè)屬性為[l],例如 [lrwxrwxrwx]。

  (D)、設(shè)備與設(shè)備文件(device):與系統(tǒng)外設(shè)及存儲(chǔ)等相關(guān)的一些文件,通常都集中在 /dev目錄。通常又分為兩種:

  (E)、塊設(shè)備文件:就是存儲(chǔ)數(shù)據(jù)以供系統(tǒng)存取的接口設(shè)備,簡(jiǎn)單而言就是硬盤。例如一號(hào)硬盤的代碼是 /dev/hda1等文件。第一個(gè)屬性為 [b]。

  (F)、字符設(shè)備文件:即串行端口的接口設(shè)備,例如鍵盤、鼠標(biāo)等等。第一個(gè)屬性為 [c]。

  (G)、套接字(sockets):這類文件通常用在網(wǎng)絡(luò)數(shù)據(jù)連接??梢詥?dòng)一個(gè)程序來(lái)監(jiān)聽客戶端的要求,客戶端就可以通過(guò)套接字來(lái)進(jìn)行數(shù)據(jù)通信。第一個(gè)屬性為 [s],最常在 /var/run目錄中看到這種文件類型。

  (H)、管道(FIFO,pipe):FIFO也是一種特殊的文件類型,它主要的目的是,解決多個(gè)程序同時(shí)存取一個(gè)文件所造成的錯(cuò)誤。FIFO是first-in-first-out(先進(jìn)先出)的縮寫。第一個(gè)屬性為 [p]。

  2.文件結(jié)構(gòu)

  /:根目錄,所有的目錄、文件、設(shè)備都在/之下,/就是Linux文件系統(tǒng)的組織者,也是最上級(jí)的領(lǐng)導(dǎo)者。

  /bin:bin 就是二進(jìn)制(binary)英文縮寫。在一般的系統(tǒng)當(dāng)中,都可以在這個(gè)目錄下找到linux常用的命令。系統(tǒng)所需要的那些命令位于此目錄。

  /boot:Linux的內(nèi)核及引導(dǎo)系統(tǒng)程序所需要的文件目錄,比如 vmlinuz initrd.img 文件都位于這個(gè)目錄中。在一般情況下,GRUB或LILO系統(tǒng)引導(dǎo)管理器也位于這個(gè)目錄。

  /cdrom:這個(gè)目錄在剛剛安裝系統(tǒng)的時(shí)候是空的??梢詫⒐怛?qū)文件系統(tǒng)掛在這個(gè)目錄下。例如:mount /dev/cdrom /cdrom

  /dev:dev 是設(shè)備(device)的英文縮寫。這個(gè)目錄對(duì)所有的用戶都十分重要。因?yàn)樵谶@個(gè)目錄中包含了所有l(wèi)inux系統(tǒng)中使用的外部設(shè)備。但是這里并不是放的外部設(shè)備的驅(qū)動(dòng)程序。這一點(diǎn)和常用的windows,dos操作系統(tǒng)不一樣。它實(shí)際上是一個(gè)訪問(wèn)這些外部設(shè)備的端口??梢苑浅7奖愕厝ピL問(wèn)這些外部設(shè)備,和訪問(wèn)一個(gè)文件,一個(gè)目錄沒有任何區(qū)別。

  /etc:etc這個(gè)目錄是linux系統(tǒng)中最重要的目錄之一。在這個(gè)目錄下存放了系統(tǒng)管理時(shí)要用到的各種配置文件和子目錄。要用到的網(wǎng)絡(luò)配置文件,文件系統(tǒng),x系統(tǒng)配置文件,設(shè)備配置信息,設(shè)置用戶信息等都在這個(gè)目錄下。

  /home:如果建立一個(gè)用戶,用戶名是"xx",那么在/home目錄下就有一個(gè)對(duì)應(yīng)的/home/xx路徑,用來(lái)存放用戶的主目錄。

  /lib:lib是庫(kù)(library)英文縮寫。這個(gè)目錄是用來(lái)存放系統(tǒng)動(dòng)態(tài)連接共享庫(kù)的。幾乎所有的應(yīng)用程序都會(huì)用到這個(gè)目錄下的共享庫(kù)。因此,千萬(wàn)不要輕易對(duì)這個(gè)目錄進(jìn)行什么操作,一旦發(fā)生問(wèn)題,系統(tǒng)就不能工作了。

  /lost+found:在ext2或ext3文件系統(tǒng)中,當(dāng)系統(tǒng)意外崩潰或機(jī)器意外關(guān)機(jī),而產(chǎn)生一些文件碎片放在這里。當(dāng)系統(tǒng)啟動(dòng)的過(guò)程中fsck工具會(huì)檢查這里,并修復(fù)已經(jīng)損壞的文件系統(tǒng)。有時(shí)系統(tǒng)發(fā)生問(wèn)題,有很多的文件被移到這個(gè)目錄中,可能會(huì)用手工的方式來(lái)修復(fù),或移到文件到原來(lái)的位置上。

  /mnt:這個(gè)目錄一般是用于存放掛載儲(chǔ)存設(shè)備的掛載目錄的,比如有cdrom等目錄??梢詤⒖?etc/fstab的定義。

  /media:有些linux的發(fā)行版使用這個(gè)目錄來(lái)掛載那些usb接口的移動(dòng)硬盤(包括U盤)、CD/DVD驅(qū)動(dòng)器等等。

  /opt:這里主要存放那些可選的程序。

  /proc:可以在這個(gè)目錄下獲取系統(tǒng)信息。這些信息是在內(nèi)存中,由系統(tǒng)自己產(chǎn)生的。

  /root:Linux超級(jí)權(quán)限用戶root的家目錄。

  /sbin:這個(gè)目錄是用來(lái)存放系統(tǒng)管理員的系統(tǒng)管理程序。大多是涉及系統(tǒng)管理的命令的存放,是超級(jí)權(quán)限用戶root的可執(zhí)行命令存放地,普通用戶無(wú)權(quán)限執(zhí)行這個(gè)目錄下的命令,這個(gè)目錄和/usr/sbin; /usr/X11R6/sbin或/usr/local/sbin目錄是相似的,凡是目錄sbin中包含的都是root權(quán)限才能執(zhí)行的。

  /selinux :對(duì)SElinux的一些配置文件目錄,SElinux可以讓linux更加安全。

  /srv 服務(wù)啟動(dòng)后,所需訪問(wèn)的數(shù)據(jù)目錄,舉個(gè)例子來(lái)說(shuō),www服務(wù)啟動(dòng)讀取的網(wǎng)頁(yè)數(shù)據(jù)就可以放在/srv/www中

  /tmp:臨時(shí)文件目錄,用來(lái)存放不同程序執(zhí)行時(shí)產(chǎn)生的臨時(shí)文件。有時(shí)用戶運(yùn)行程序的時(shí)候,會(huì)產(chǎn)生臨時(shí)文件。/tmp就用來(lái)存放臨時(shí)文件的。/var/tmp目錄和這個(gè)目錄相似。

  /usr

  這是linux系統(tǒng)中占用硬盤空間最大的目錄。用戶的很多應(yīng)用程序和文件都存放在這個(gè)目錄下。在這個(gè)目錄下,可以找到那些不適合放在/bin或/etc目錄下的額外的工具

  /usr/local:這里主要存放那些手動(dòng)安裝的軟件,即不是通過(guò)“新立得”或apt-get安裝的軟件。它和/usr目錄具有相類似的目錄結(jié)構(gòu)。讓軟件包管理器來(lái)管理/usr目錄,而把自定義的腳本(scripts)放到/usr/local目錄下面、。

  /usr/share :系統(tǒng)共用的東西存放地,比如 /usr/share/fonts 是字體目錄,/usr/share/doc和/usr/share/man幫助文件。

  /var:這個(gè)目錄的內(nèi)容是經(jīng)常變動(dòng)的,看名字就知道,可以理解為vary的縮寫,/var下有/var/log 這是用來(lái)存放系統(tǒng)日志的目錄。/var/ www目錄是定義Apache服務(wù)器站點(diǎn)存放目錄;/var/lib 用來(lái)存放一些庫(kù)文件,比如MySQL的,以及MySQL數(shù)據(jù)庫(kù)的的存放地。

  三、Linux常用命令介紹

  1.顯示目錄和文件的命令

  Ls:用于查看所有文件夾的命令。

  Dir:用于顯示指定文件夾和目錄的命令

  Tree: 以樹狀圖列出目錄內(nèi)容

  Du:顯示目錄或文件大小

  2.修改目錄,文件權(quán)限和屬主及數(shù)組命令

  Chmod:用于改變指定目錄或文件的權(quán)限命令。

  Chown:用于改變文件擁有屬性的命令。

  Chgrp:用于改變文件群組的命令。

  Chattr:用于設(shè)置文件具有不可刪除和修改權(quán)限。

  Lsattr:用于顯示文件或目錄的隱藏屬性。

  3.創(chuàng)建和刪除目錄的命令

  Mkdir:用于創(chuàng)建目錄

  Rmdir:用于刪除空的目錄

  Rm -f:用于刪除不為空的目錄

  4.創(chuàng)建和刪除,重命名,復(fù)制文件的命令

  Touch:創(chuàng)建一個(gè)新的文件

  Vi:創(chuàng)建一個(gè)新的文件

  Rm:刪除文件或目錄

  Mv:重命名或移動(dòng)文件的命令

  Cp:復(fù)制命令

  Scp:用于將本地的文件或目錄復(fù)制到遠(yuǎn)程服務(wù)器

  Wget:用于下載ftp或http服務(wù)器文件到本地。

  5.顯示文件內(nèi)容的命令

  Cat:用于顯示指定文件的全部?jī)?nèi)容

  More:用分頁(yè)的形式顯示指定文件的內(nèi)容

  Less:用分頁(yè)的形式顯示指定文件的內(nèi)容,區(qū)別是more和less翻頁(yè)使用的操作鍵不同。

  Head:用于顯示文件的前n行內(nèi)容。

  Tail:用于顯示文件的后n行內(nèi)容。

  Tail -f:用于自動(dòng)刷新的顯示文件后n行數(shù)據(jù)內(nèi)容。

  6.查找命令

  Find:查找指定目錄或文件的命令。

  Whereis:查找指定的文件源和二進(jìn)制文件和手冊(cè)等

  Which:用于查詢命令或別名的位置。

  Locate:快速查找系統(tǒng)數(shù)據(jù)庫(kù)中指定的內(nèi)容。

  Grep:在指定的文件或標(biāo)準(zhǔn)輸出,標(biāo)準(zhǔn)輸入內(nèi),查找滿足條件的內(nèi)容。

  7.關(guān)機(jī)和重啟計(jì)算機(jī)的命令

  Shutdown:-r 關(guān)機(jī)后立即重啟

  -k 并不真正的關(guān)機(jī),而只是發(fā)出警告信息給所有用戶

  -h 關(guān)機(jī)后不重新啟動(dòng)

  Poweroff:用于關(guān)機(jī)和關(guān)閉電源

  Init:改變系統(tǒng)運(yùn)行級(jí)別

  0級(jí)用于關(guān)閉系統(tǒng)

  1 級(jí)用于單一使用者模式

  2級(jí)用來(lái)進(jìn)行多用戶使用模式(但不帶網(wǎng)絡(luò)功能)

  3級(jí)用來(lái)進(jìn)行多用戶使用模式(帶網(wǎng)絡(luò)全功能)

  4級(jí)用來(lái)進(jìn)行用戶自定義使用模式

  5級(jí)表示進(jìn)入x windows時(shí)的模式

  6級(jí)用來(lái)重啟系統(tǒng)

  Reboot: 用于計(jì)算機(jī)重啟

  Halt:用于關(guān)閉計(jì)算機(jī)系統(tǒng)

  8.壓縮和打包命令

  Tar:用于多個(gè)文件或目錄進(jìn)行打包,但不壓縮,同時(shí)也用命令進(jìn)行解包

  Gzip:用于文件進(jìn)行壓縮和解壓縮命令,文件擴(kuò)展名為.gz結(jié)尾。

  Gunzip:用于對(duì)gzip壓縮文檔進(jìn)行解壓縮。

  Bzip2:用于對(duì)文件或目錄進(jìn)行壓縮和解壓縮

  Bzcat:用于顯示壓縮文件的內(nèi)容。

  Compress/un compress: 壓縮/解壓縮.Z文件

  Zcat:查看z或gz結(jié)尾的壓縮文件內(nèi)容。

  Gzexe:壓縮可執(zhí)行的文件

  Unarg:解壓縮.arj文件

  Zip/unzip:壓縮解壓縮.zip文件

  9.用戶操作命令

  Su:切換用戶命令

  Sudo:一系統(tǒng)管理員的身份執(zhí)行命令

  Passwd:用于修改用戶的密碼

  10.改變目錄和查看當(dāng)前目錄命令

  Cd:進(jìn)入工作目錄

  Cd 。。:會(huì)退到上一級(jí)命令

  Pwd:顯示當(dāng)前用戶所在工作目錄位置

  11.文件連接命令

  Ln:為源文件創(chuàng)建一個(gè)連接,并不將源文件復(fù)制一份,即占用的空間很小。

  可以分為軟件連接和硬鏈接。

  軟連接:也稱為符號(hào)連接,即為文件或目錄創(chuàng)建一個(gè)快捷方式。

  硬鏈接:給一個(gè)文件取多于一個(gè)名字,放在不同目錄中,方便用戶使用。

  Ln命令參數(shù)如下:

  -f:在創(chuàng)建連接時(shí),先將與目的對(duì)象同名的文件或目錄刪除。

  -d:允許系統(tǒng)管理者硬鏈接自己的目錄。

  -i:在刪除與目的對(duì)象同名文件或目錄時(shí)先詢問(wèn)用戶。

  -n:在創(chuàng)建軟連接時(shí),將目的對(duì)象視為一般的文件。

  -s:創(chuàng)建軟連接,即符號(hào)連接。

  -v:在連接之前顯示文件或目錄名。

  -b:將在連接時(shí)會(huì)被覆蓋或刪除的文件進(jìn)行備份。

  12.幫助命令-----man

  其他命令

  Who:顯示系統(tǒng)中有那些用戶在使用。

  -ami 顯示當(dāng)前用戶

  -u:顯示使用者的動(dòng)作/工作

  -s:使用簡(jiǎn)短的格式來(lái)顯示

  -v:顯示程序版本

  Free:查看當(dāng)前系統(tǒng)的內(nèi)存使用情況

  Uptime:顯示系統(tǒng)運(yùn)行了多長(zhǎng)時(shí)間

  Ps:顯示瞬間進(jìn)程的動(dòng)態(tài)

  Pstree:以樹狀方式顯示系統(tǒng)中所有的進(jìn)程

  Date:顯示或設(shè)定系統(tǒng)的日期與時(shí)間。

  Last:顯示每月登陸系統(tǒng)的用戶信息

  Kill: 殺死一些特定的進(jìn)程

  Logout:退出系統(tǒng)

  Useradd/userdel:添加用戶/刪除用戶

  Clear:清屏

  Passwd:設(shè)置用戶密碼

  13.vi編輯器

  首先用vi命令打開一個(gè)文件

  末行模式命令:

  :n,m w path/filename 保存指定范圍文檔( n表開始行,m表結(jié)束行)

  :q! 對(duì)文件做過(guò)修改后,強(qiáng)制退出

  :q 沒有對(duì)文件做過(guò)修改退出

  Wq或x 保存退出

  dd 刪除光標(biāo)所在行

  : set number 顯示行號(hào)

 ?。簄 跳轉(zhuǎn)到n行

  :s 替換字符串 :s/test/test2/g /g全局替換 /也可以用%代替

  / 查找字符串

  14.網(wǎng)絡(luò)通信常用的命令

  Arp:網(wǎng)絡(luò)地址顯示及控制

  ftp:文件傳輸

  Lftp:文件傳輸

  Mail:發(fā)送/接收電子郵件

  Mesg:允許或拒絕其他用戶向自己所用的終端發(fā)送信息

  Mutt E-mail 管理程序

  Ncftp :文件傳輸

  Netstat:顯示網(wǎng)絡(luò)連接.路由表和網(wǎng)絡(luò)接口信息

  Pine:收發(fā)電子郵件,瀏覽新聞組

  Ping:用于查看網(wǎng)絡(luò)是否連接通暢

  Ssh:安全模式下遠(yuǎn)程登陸

  Telnet:遠(yuǎn)程登錄

  Talk:與另一用戶對(duì)話

  Traceroute:顯示到達(dá)某一主機(jī)所經(jīng)由的路徑及所使用的時(shí)間。

  Wget:從網(wǎng)路上自動(dòng)下載文件

  Write:向其它用戶終端寫信息 Rlogin:遠(yuǎn)程登錄


文章專題:是什么?你不知道的知識(shí)和應(yīng)用

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

linux相關(guān)文章:linux教程


路由器相關(guān)文章:路由器工作原理


路由器相關(guān)文章:路由器工作原理




關(guān)鍵詞: 樹莓派 Linux

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉