Linux之文档与目录结构
Linux文件系統(tǒng)結(jié)構(gòu)
Linux目錄結(jié)構(gòu)的組織形式和Windows有很大的不同。首先Linux沒有“盤(C盤、D盤、E盤)”的概念。已經(jīng)建立文件系統(tǒng)的硬盤分區(qū)被掛載到某一個(gè)目錄下,用戶通過操作目錄來實(shí)現(xiàn)磁盤讀寫。
Linux不像Windows那樣的系統(tǒng)目錄,Linux使用正斜杠"/"而不是反斜杠"\"來標(biāo)識(shí)目錄。
Windows目錄:
Linux目錄:
Linux首先是建立一個(gè)根"/"文件系統(tǒng),所有的目錄也都是由根目錄衍生出來。
登錄系統(tǒng)后,在當(dāng)前命令窗口輸入命令:
ls /查看結(jié)果如下圖:
在Linux底下,所有的文件與目錄都是由根目錄開始,是目錄與文件的源頭,然后一個(gè)個(gè)的分支下來,如同樹枝狀,因此稱為這種目錄配置為:目錄樹。
目錄樹的特點(diǎn)是什么呢?
- 目錄樹的起始點(diǎn)是根目錄(/,root);
- 每一個(gè)目錄不止能使用本地的文件系統(tǒng),也可以使用網(wǎng)絡(luò)上的文件系統(tǒng),可以利用NFS服務(wù)器掛載特定目錄。
- 每一個(gè)文件在此目錄樹中的文件名,包含完整路徑都是獨(dú)一無(wú)二的。
目錄樹架構(gòu)示意圖
以下是對(duì)這些目錄的解釋:
?
-
/bin:
bin是Binary的縮寫, 這個(gè)目錄存放著最經(jīng)常使用的命令。 -
/boot:
這里存放的是啟動(dòng)Linux時(shí)使用的一些核心文件,包括一些連接文件以及鏡像文件。 -
/dev :
dev是Device(設(shè)備)的縮寫, 該目錄下存放的是Linux的外部設(shè)備,在Linux中訪問設(shè)備的方式和訪問文件的方式是相同的。 -
/etc:
這個(gè)目錄用來存放所有的系統(tǒng)管理所需要的配置文件和子目錄。 -
/home:
用戶的主目錄,在Linux中,每個(gè)用戶都有一個(gè)自己的目錄,一般該目錄名是以用戶的賬號(hào)命名的。 -
/lib:
這個(gè)目錄里存放著系統(tǒng)最基本的動(dòng)態(tài)連接共享庫(kù),其作用類似于Windows里的DLL文件。幾乎所有的應(yīng)用程序都需要用到這些共享庫(kù)。 -
/lost+found:
這個(gè)目錄一般情況下是空的,當(dāng)系統(tǒng)非法關(guān)機(jī)后,這里就存放了一些文件。 -
/media:
linux系統(tǒng)會(huì)自動(dòng)識(shí)別一些設(shè)備,例如U盤、光驅(qū)等等,當(dāng)識(shí)別后,linux會(huì)把識(shí)別的設(shè)備掛載到這個(gè)目錄下。 -
/mnt:
系統(tǒng)提供該目錄是為了讓用戶臨時(shí)掛載別的文件系統(tǒng)的,我們可以將光驅(qū)掛載在/mnt/上,然后進(jìn)入該目錄就可以查看光驅(qū)里的內(nèi)容了。 -
/opt:
?這是給主機(jī)額外安裝軟件所擺放的目錄。比如你安裝一個(gè)ORACLE數(shù)據(jù)庫(kù)則就可以放到這個(gè)目錄下。默認(rèn)是空的。 -
/proc:
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
這個(gè)目錄是一個(gè)虛擬的目錄,它是系統(tǒng)內(nèi)存的映射,我們可以通過直接訪問這個(gè)目錄來獲取系統(tǒng)信息。
這個(gè)目錄的內(nèi)容不在硬盤上而是在內(nèi)存里,我們也可以直接修改里面的某些文件,比如可以通過下面的命令來屏蔽主機(jī)的ping命令,使別人無(wú)法ping你的機(jī)器: -
/root:
該目錄為系統(tǒng)管理員,也稱作超級(jí)權(quán)限者的用戶主目錄。 -
/sbin:
s就是Super User的意思,這里存放的是系統(tǒng)管理員使用的系統(tǒng)管理程序。 -
/selinux:
?這個(gè)目錄是Redhat/CentOS所特有的目錄,Selinux是一個(gè)安全機(jī)制,類似于windows的防火墻,但是這套機(jī)制比較復(fù)雜,這個(gè)目錄就是存放selinux相關(guān)的文件的。 -
/srv:
?該目錄存放一些服務(wù)啟動(dòng)之后需要提取的數(shù)據(jù)。 -
/sys:
sysfs文件系統(tǒng)集成了下面3種文件系統(tǒng)的信息:針對(duì)進(jìn)程信息的proc文件系統(tǒng)、針對(duì)設(shè)備的devfs文件系統(tǒng)以及針對(duì)偽終端的devpts文件系統(tǒng)。
?這是linux2.6內(nèi)核的一個(gè)很大的變化。該目錄下安裝了2.6內(nèi)核中新出現(xiàn)的一個(gè)文件系統(tǒng)?sysfs?。?
該文件系統(tǒng)是內(nèi)核設(shè)備樹的一個(gè)直觀反映。
當(dāng)一個(gè)內(nèi)核對(duì)象被創(chuàng)建的時(shí)候,對(duì)應(yīng)的文件和目錄也在內(nèi)核對(duì)象子系統(tǒng)中被創(chuàng)建。
-
/tmp:
這個(gè)目錄是用來存放一些臨時(shí)文件的。 -
/usr:
?這是一個(gè)非常重要的目錄,用戶的很多應(yīng)用程序和文件都放在這個(gè)目錄下,類似于windows下的program files目錄。 -
/usr/bin:
系統(tǒng)用戶使用的應(yīng)用程序。 -
/usr/sbin:
超級(jí)用戶使用的比較高級(jí)的管理程序和系統(tǒng)守護(hù)程序。 -
/usr/src:內(nèi)核源代碼默認(rèn)的放置目錄。
-
/var:
這個(gè)目錄中存放著在不斷擴(kuò)充著的東西,我們習(xí)慣將那些經(jīng)常被修改的目錄放在這個(gè)目錄下。包括各種日志文件。
在linux系統(tǒng)中,有幾個(gè)目錄是比較重要的,平時(shí)需要注意不要誤刪除或者隨意更改內(nèi)部文件。
/etc:?上邊也提到了,這個(gè)是系統(tǒng)中的配置文件,如果你更改了該目錄下的某個(gè)文件可能會(huì)導(dǎo)致系統(tǒng)不能啟動(dòng)。
/bin, /sbin, /usr/bin, /usr/sbin:?這是系統(tǒng)預(yù)設(shè)的執(zhí)行文件的放置目錄,比如?ls?就是在/bin/ls?目錄下的。
值得提出的是,/bin, /usr/bin?是給系統(tǒng)用戶使用的指令(除root外的通用戶),而/sbin, /usr/sbin?則是給root使用的指令。
/var:?這是一個(gè)非常重要的目錄,系統(tǒng)上跑了很多程序,那么每個(gè)程序都會(huì)有相應(yīng)的日志產(chǎn)生,而這些日志就被記錄到這個(gè)目錄下,具體在/var/log?目錄下,另外mail的預(yù)設(shè)放置也是在這里。
目錄的相關(guān)操作?
我們知道切換目錄的指令是cd,那么首先得知道如何切換目錄,這個(gè)得用心記呀!
. 當(dāng)前目錄 .. 上一層目錄 - 前一個(gè)工作目錄 ~ 當(dāng)前【用戶】所在的家目錄需要注意的是,在所有目錄底下都存在兩個(gè)目錄,分別是【.】和【..】,分別代表當(dāng)前目錄,上層目錄!那么如何證明它的存在呢?
命令: ls -la /查看命令解釋:man ls (Linux下的幫助指令)
結(jié)論:ls - list directory contens (列出目錄內(nèi)容)
ls -la / 以豎狀格式化顯示列出/目錄所有內(nèi)容
接下來看一下常用的目錄處理指令:
cd : (change directory,更改目錄) pwd:(顯示當(dāng)前目錄) mkdir:(建立一個(gè)新目錄) rmdir:(刪除一個(gè)空目錄)cd命令,變換目錄
cd是change directory的縮寫,這是用來變換工作目錄的命令,注意命令和目錄之間有一個(gè)空格。
mkdir,建立新目錄
mkdir是make directory的縮寫,用來建立新目錄,在默認(rèn)情況下,目錄得一級(jí)一級(jí)的建立。
例如我要建立/home/oldboy/python目錄,我就必須有/home,然后/home/oldboy,最后/home/oldboy/python,如果沒有/home/oldboy,則不能建立python目錄!
?可見高效的創(chuàng)建目錄用上-p參數(shù),可以直接執(zhí)行命令【mkdir -p /home/oldboy/python】,系統(tǒng)會(huì)自動(dòng)添加上/home,/home/oldboy,/home/oldboy/python依次建立目錄,是不是很方便,^ ^?
rmdir,刪除空目錄
當(dāng)我想刪除一個(gè)空目錄時(shí),就用rmdir吧,例如我想刪除剛才建立的oldboy目錄,以及/tmp/oldboy/python,那么可以使用【rmdir oldboy】,但是注意rmdir只能刪除空目錄。
刪除命令可以正確使用【rm -rf】Linux的路徑PATH
同學(xué)們應(yīng)該都會(huì)配置windows下的環(huán)境變量(PATH),都知道系統(tǒng)會(huì)按照PATH的設(shè)定,去每個(gè)PATH定義的目錄下搜索可執(zhí)行文件。
那么如何查看Linux下的PATH環(huán)境變量呢?
執(zhí)行命令: echo $PATH echo命令是有打印的意思 $符號(hào)后面跟上PATH,表示輸出PATH的變量PATH(一定是大寫的)這個(gè)變量是由一堆目錄組成,分隔符是":"號(hào),而不同于windows的";"號(hào)。
絕對(duì)路徑與相對(duì)路徑
Linux中非常重要的概念--路徑,路徑用來定位如何找到某個(gè)文件。
這里超哥先講個(gè)例子,到底什么是相對(duì)路徑,絕對(duì)路徑
比如一個(gè)老外,要來老男孩教育學(xué)習(xí)python,但是他找不到地點(diǎn),因此向你問路,你可以告訴他:
? 1.先坐飛機(jī)來中國(guó)北京,從北京機(jī)場(chǎng)坐地鐵到沙河地鐵站,然后走路800米到沙河匯德商廈,上四樓,找到超哥,結(jié)束尋路。
2. 超哥就在匯德商廈403辦公室,武佩奇后面坐著呢!!!
Linux下特別注意文件名/路徑的寫法,可以將所謂的路徑(path)定義為絕對(duì)路徑(absolute)和相對(duì)路徑(relative)。這兩種文件名/路徑的寫法依據(jù)是這樣的:
- 絕對(duì)路徑:由根目錄(/)為開始寫起的文件名或者目錄名稱,如/home/oldboy/test.py;
- 相對(duì)路徑:相對(duì)于目前路徑的文件名寫法。例如./home/oldboy/exam.py或../../home/oldboy/exam.py,簡(jiǎn)單來說只要開頭不是/,就是屬于相對(duì)路徑
因此你必須了解,相對(duì)路徑是:以你當(dāng)前所在路徑的相對(duì)路徑來表示的。
例如你現(xiàn)在在/home 這個(gè)目錄下,如要進(jìn)入/var/log這個(gè)路徑,如何寫呢?
結(jié)果如圖:
因?yàn)槟阍?home底下,因此你要回到上一層(../)之后,才能繼續(xù)前往/var,特別注意:
- .? ?:代表當(dāng)前的目錄,也可以用./ 來表示
- ..? :代表上一層的目錄,也可以用../來表示
分割線----
這個(gè).與..目錄概念非常重要,平時(shí)經(jīng)常會(huì)看到cd ..或者python ../home/oldboy/exam.py 就是代表進(jìn)入上一層與執(zhí)行相對(duì)路徑的python代碼!
1.linux是以 / 開始的樹狀目錄結(jié)構(gòu),tree查看 2.常用文件目錄操作命令是ls,cd,mkdir,rmdir 3.Linux的PATH查看是 echo $PATH,可以修改/etc/profile文件永久生效,以冒號(hào)分割4.絕對(duì)路徑,相對(duì)路徑的查看
5.文件權(quán)限chmod chgrp chown
Linux的文件系統(tǒng)
用戶在硬件存儲(chǔ)設(shè)備中執(zhí)行的文件建立,寫入,讀取,修改,轉(zhuǎn)存與控制等操作都是依賴文件系統(tǒng)完成的。文件系統(tǒng)的作用是合理規(guī)劃硬盤,保證用戶正常使用。
Linux系統(tǒng)支持?jǐn)?shù)十種文件系統(tǒng),常見文件系統(tǒng)如下。
- Ext3? ? 是一款日志文件系統(tǒng),能夠在系統(tǒng)異常宕機(jī)時(shí)避免文件系統(tǒng)資料丟失,并能 自動(dòng)修復(fù)數(shù)據(jù)的不一致與錯(cuò)誤。
- Ext4? ? ?Ext3 的改進(jìn)版本,作為 RHEL 6 系統(tǒng)中的默認(rèn)文件管理系統(tǒng),它支持的存儲(chǔ)容 量高達(dá) 1EB(1EB=1,073,741,824GB),且能夠有無(wú)限多的子目錄。另外,Ext4 文件系統(tǒng)能夠批量分配 block 塊,從而極大地提高了讀寫效率。
- XFS? ? ?是一種高性能的日志文件系統(tǒng),而且是 RHEL 7 中默認(rèn)的文件管理系統(tǒng),它的優(yōu)勢(shì)在發(fā)生意外宕機(jī)后尤其明顯,即可以快速地恢復(fù)可能被破壞的文件,而且強(qiáng)大的 日志功能只用花費(fèi)極低的計(jì)算和存儲(chǔ)性能。并且它最大可支持的存儲(chǔ)容量為 18EB, 這幾乎滿足了所有需求。
cat /etc/fstab #檢查linux的文件系統(tǒng)
練習(xí)
1.在/home/目錄創(chuàng)建文件夾oldboy,進(jìn)入oldboy創(chuàng)建helloLinux.txt2.創(chuàng)建/tmp/chaogeLinux.txt,用絕對(duì)路徑方式與相對(duì)路徑兩種方法
3.在/tmp/目錄下創(chuàng)建chaogeDir目錄
4.查看linuxPATH
5.修改chaogeLinux.txt文件屬主是chaoge,權(quán)限是可讀可寫
?
轉(zhuǎn)載于:https://www.cnblogs.com/jiadi321/p/9805013.html
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的Linux之文档与目录结构的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (补充)爬取大西洋月刊并调用彩云小译翻译
- 下一篇: 深圳深科技待遇怎么样 待遇还算不错但薪酬