新聞中心

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

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

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

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

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

  1.簡單介紹

  2.文件系統(tǒng)

  3.常用命令介紹

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



  一、Linux簡單介紹

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

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

  二、文件系統(tǒng)



  1.文件類型

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

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

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

  (c)、數(shù)據(jù)格式的文件(data):有些程序在運行過程中,會讀取某些特定格式的文件,那些特定格式的文件可以稱為數(shù)據(jù)文件(data file)。舉例來說,Linux在用戶登入時,都會將登錄數(shù)據(jù)記錄在 /var/log/wtmp文件內(nèi),該文件是一個數(shù)據(jù)文件,它能通過last命令讀出來。但使用cat時,會讀出亂碼。因為它是屬于一種特殊格式的文件。

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

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

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

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

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

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

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

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

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

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

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

  /cdrom:這個目錄在剛剛安裝系統(tǒng)的時候是空的。可以將光驅(qū)文件系統(tǒng)掛在這個目錄下。例如:mount /dev/cdrom /cdrom

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

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

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

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

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

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

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

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

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

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

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

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

  /srv 服務(wù)啟動后,所需訪問的數(shù)據(jù)目錄,舉個例子來說,www服務(wù)啟動讀取的網(wǎng)頁數(shù)據(jù)就可以放在/srv/www中

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

  /usr

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

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

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

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

  三、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)建一個新的文件

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

  Rm:刪除文件或目錄

  Mv:重命名或移動文件的命令

  Cp:復(fù)制命令

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

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

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

  Cat:用于顯示指定文件的全部內(nèi)容

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

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

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

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

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

  6.查找命令

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

  Whereis:查找指定的文件源和二進制文件和手冊等

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

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

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

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

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

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

  -h 關(guān)機后不重新啟動

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

  Init:改變系統(tǒng)運行級別

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

  1 級用于單一使用者模式

  2級用來進行多用戶使用模式(但不帶網(wǎng)絡(luò)功能)

  3級用來進行多用戶使用模式(帶網(wǎng)絡(luò)全功能)

  4級用來進行用戶自定義使用模式

  5級表示進入x windows時的模式

  6級用來重啟系統(tǒng)

  Reboot: 用于計算機重啟

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

  8.壓縮和打包命令

  Tar:用于多個文件或目錄進行打包,但不壓縮,同時也用命令進行解包

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

  Gunzip:用于對gzip壓縮文檔進行解壓縮。

  Bzip2:用于對文件或目錄進行壓縮和解壓縮

  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.改變目錄和查看當前目錄命令

  Cd:進入工作目錄

  Cd 。。:會退到上一級命令

  Pwd:顯示當前用戶所在工作目錄位置

  11.文件連接命令

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

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

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

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

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

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

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

  -i:在刪除與目的對象同名文件或目錄時先詢問用戶。

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

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

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

  -b:將在連接時會被覆蓋或刪除的文件進行備份。

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

  其他命令

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

  -ami 顯示當前用戶

  -u:顯示使用者的動作/工作

  -s:使用簡短的格式來顯示

  -v:顯示程序版本

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

  Uptime:顯示系統(tǒng)運行了多長時間

  Ps:顯示瞬間進程的動態(tài)

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

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

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

  Kill: 殺死一些特定的進程

  Logout:退出系統(tǒng)

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

  Clear:清屏

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

  13.vi編輯器

  首先用vi命令打開一個文件

  末行模式命令:

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

  :q! 對文件做過修改后,強制退出

  :q 沒有對文件做過修改退出

  Wq或x 保存退出

  dd 刪除光標所在行

 ?。?set number 顯示行號

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

 ?。簊 替換字符串 :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:安全模式下遠程登陸

  Telnet:遠程登錄

  Talk:與另一用戶對話

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

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

  Write:向其它用戶終端寫信息 Rlogin:遠程登錄


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

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

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


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


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




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

評論


相關(guān)推薦

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

關(guān)閉