Linux下的文件系統為樹形結構,入口為/ 樹形結構下的文件目錄: 無論哪個版本的Linux系統,都有這些目錄,這些目錄應該是標準的。各個Linux發行版本會存在一些小小的差異,但總體來說,還是大體差不多。
1. / 文件系統的入口,最高一級目錄;
2. /bin 基礎系統所需要的命令位於此目錄,是最小系統所需要的命令,如:ls, cp, mkdir等。
這個目錄中的文件都是可執行的,一般的用戶都可以使用。
3. /boot 包含Linux內核及系統引導程序所需要的文件,比如 vmlinuz initrd.img 文件都位於這個目錄中。在一般情況下,GRUB或LILO系統引導管理器也位於這個目錄;
4. /dev 設備文件存儲目錄,比如音效卡、磁碟... ... 這是一個非常有趣的目錄,是Linux文件系統的一個閃亮的特性 - 所有對象都是文件或目錄。仔細觀察這個目錄你會發現hda1, hda2等, 它們代表系統主硬碟的不同分區。
/dev/cdrom和/dev/fd0代表你的CDROM驅動器和floppy驅動器。看上去可能有些奇怪,但比較文件和硬體的特性這卻是十分合理的。它們都可以讀出和寫入。例如/dev/dsp,這個文件代表你的揚聲器。那麼寫入這個文件的數據都回傳送到喇叭。試一試 'cat /etc/lilo.conf > /dev/dsp' 你會聽到一些聲音。這是你的 lilo.conf 文件的聲音!同樣,向 /dev/ttyS0 ( COM 1 ) 讀出或寫入數據你可以和接到上面的設備進行通訊。
5. /etc 存放系統程序或者一般工具的配置文件。
如安裝了apache2之後,配置文件在/etc/apache2/目錄下。
/etc/init.d 這個目錄是用來存放系統或伺服器以System V模式啟動的腳本,這在以System V模式啟動或初始化的系統中常見。
如apache2的/etc/init.d apache2 start|stop|restart MySQL為/etc/init.d mysql start|stop|restart
6. /home 普通用戶默認存放目錄 Linux 是多用戶環境,所以每一個用戶都有一個只有自己可以訪問的目錄(當然管理員也可以訪問)。它們以 /home/username 的方式存在。這個目錄也保存一些應用對於這個用戶的配置,比如 IRC, X 等。
7. /lib 庫文件存放目錄這里包含了系統程序所需要的所有共享庫文件,類似於 Windows 的共享庫 DLL 文件。
8. /lost+found 在ext2或ext3文件系統中,當系統意外崩潰或機器意外關機,而產生一些文件碎片放在這里。當系統啟動的過程中fsck工具會檢查這里,並修復已經損壞的文件系統。 有時系統發生問題,有很多的文件被移到這個目錄中,可能會用手工的方式來修復,或移到文件到原來的位置上。
Linux 應該正確的關機。但有時你的系統也可能崩潰掉或突然斷電使系統意外關機。那麼啟動的時候 fsck 將會進行長時間的文件系統檢查。Fsck 會檢測並試圖恢復所發現的不正確的文件。被恢復的文件會放置在這個目錄中。所恢復的文件也許並不完整或並不合理,但畢竟提供了一些恢復數據的機會。
9. /media 即插即用型存儲設備的掛載點自動在這個目錄下創建,比如USB盤系統自動掛載後,會在這個目錄下產生一個目錄 ;CDROM/DVD自動掛載後,也會在這個目錄中創建一個目錄,類似cdrom 的目錄。這個只有在最新的發行套件上才有.
10. /mnt /mnt 這個目錄一般是用於存放掛載儲存設備的掛載目錄的,比如有cdrom 等目錄。有時我們可以把讓系統開機自動掛載文件系統,把掛載點放在這里也是可以的。比如光碟機可以掛載到/mnt/cdrom 。
這是一個普通的載入目錄,在這里你可以載入你的文件系統或設備。
載入是使一個文件系統對於系統可用的過程。
在載入後你的文件可以在載入目錄下訪問。
這個目錄通常包含載入目錄或用於載入軟碟機和光碟機的子目錄。
如果需要,你也可以在這里建立其它的載入目錄。
對於載入目錄的位置並沒有強制性的要求,你可以在系統的任意位置建立載入目錄。
建立 /mnt 只是為了使系統更工整的慣例。
11. /opt 表示的是可選擇的意思,有些軟體包也會被安裝在這里,也就是自定義軟體包,比如在Fedora Core 5.0中,OpenOffice就是安裝在這里。有些我們自己編譯的軟體包,就可以安裝在這個目錄中;通過源碼包安裝的軟體,可以通過 ./configure --prefix=/opt/,將軟體安裝到opt目錄。
這個目錄包含所有默認系統安裝之外的軟體和添加的包。
12. /proc 操作系統運行時,進程(正在運行中的程序)信息及內核信息(比如cpu、硬碟分區、內存信息等)存放在這里。/proc目錄是偽裝的文件系統proc的掛載目錄,proc並不是真正的文件系統。
這是系統中極為特殊的一個目錄,實際上任何分區上都不存在這個目錄。它實際是個實時的、駐留在內存中的文件系統。
13. /root Linux超級許可權用戶root的家目錄;
14. /sbin 大多是涉及系統管理的命令的存放,是超級許可權用戶root的可執行命令存放地,普通用戶無許可權執行這個目錄下的命令;
這個目錄和/usr/sbin; /usr/X11R6/sbin或/usr/local/sbin 目錄是相似的; 我們記住就行了,凡是目錄sbin中包含的都是root許可權才能執行的。
15. /tmp 臨時文件目錄,有時用戶運行程序的時候,會產生臨時文件。 /tmp就用來存放臨時文件的。/var/tmp目錄和這個目錄相似。
許多程序在這里建立lock文件和存儲臨時數據。有些系統會在啟動或關機時清空此目錄。
16. /usr 這個是系統存放程序的目錄,比如命令、幫助文件等。這個目錄下有很多的文件和目錄。
當我們安裝一個Linux發行版官方提供的軟體包時,大多安裝在這里。
如果有涉及伺服器配置文件的,會把配置文件安裝在/etc目錄中。
/usr目錄下包括:
涉及字體目錄/usr/share/fonts ,
幫助目錄 /usr/share/man或/usr/share/doc,
普通用戶可執行文件目錄/usr/bin 或/usr/local/bin 或/usr/X11R6/bin ,
超級許可權用戶root的可執行命令存放目錄,比如 /usr/sbin 或/usr/X11R6/sbin 或/usr/local/sbin 等;
還有程序的頭文件存放目錄/usr/include。
/usr/bin 這個目錄是可執行程序的目錄,普通用戶就有許可權執行; 當我們從系統自帶的軟體包安裝一個程序時,他的可執行文件大多會放在這個目錄。
/usr/sbin 這個目錄也是可執行程序的目錄,但大多存放涉及系統管理的命令。只有root許可權才能執行;相似目錄是/sbin 或/usr/local/sbin或/usr/X11R6/sbin等;
/usr/local 這個目錄一般是用來存放用戶自編譯安裝軟體的存放目錄;一般是通過源碼包安裝的軟體,如果沒有特別指定安裝目錄的話,一般是安裝在這個目錄中。這個目錄下面有子目錄。
/usr/lib 和/lib 目錄相似,是庫文件的存儲目錄;
/usr/share 系統共用的東西存放地,比如 /usr/share/fonts 是字體目錄,是用戶都共用的吧。
/usr/share/doc和/usr/share/man幫助文件,也是共用的吧;
/usr/src 是內核源碼存放的目錄,比如下面有內核源碼目錄,比如 linux 、linux-2.xxx.xx 目錄等。有的系統也會把源碼軟體包安裝在這里。比如Fedora/Redhat,當我們安裝file.src.rpm的時候,這些軟體包會安裝在 /usr/src/redhat相應的目錄中。請參考: 《file.src.rpm 使用方法的簡單介紹》 。另外Fedhat 4.0 5.0,他的內核源碼包的目錄位於/usr/src/kernels目錄下的某個目錄中(只有安裝後才會生成相應目錄);
17. /var 這個目錄的內容是經常變動的,看名字就知道,我們可以理解為vary的縮寫,/var下有/var/log 這是用來存放系統日誌的目錄。
/var/www目錄是定義Apache伺服器站點存放目錄;/var/lib 用來存放一些庫文件,比如MySQL的,以及MySQL資料庫的的存放地;
/var/log 系統日誌存放,分析日誌要看這個目錄的東西;
/var/spool 列印機、郵件、代理伺服器等假離線目錄;
上面內容參考於
http://blog.sina.com.cn/s/blog_662234020101ebfd.html
這是我的linux系統目錄結構
administrator@ubuntu:/$ ls -l
總用量 100
drwxr-xr-x 2 root root 4096 8月 22 07:33 bin
drwxr-xr-x 3 root root 4096 8月 22 07:34 boot
drwxr-xr-x 2 root root 4096 8月 22 07:29 cdrom
drwxr-xr-x 16 root root 4320 11月 1 22:26 dev
drwxr-xr-x 136 root root 12288 11月 1 22:38 etc
drwxr-xr-x 5 root root 4096 10月 24 10:02 home
drwxrwxrwx 1 root root 4096 10月 31 18:59 host
lrwxrwxrwx 1 root root 32 8月 22 07:31 initrd.img -> boot/initrd.img-3.5.0-17-generic
lrwxrwxrwx 1 root root 33 8月 22 07:14 initrd.img.old -> /boot/initrd.img-3.5.0-17-generic
drwxr-xr-x 21 root root 4096 8月 22 07:33 lib
drwx------ 2 root root 16384 8月 22 07:14 lost+found
drwxr-xr-x 3 root root 4096 8月 24 22:13 media
drwxr-xr-x 2 root root 4096 10月 9 2012 mnt
drwxr-xr-x 2 root root 4096 10月 17 2012 opt
dr-xr-xr-x 205 root root 0 11月 2 2015 proc
drwx------ 8 root root 4096 8月 24 23:48 root
drwxr-xr-x 22 root root 780 11月 1 22:27 run
drwxr-xr-x 2 root root 12288 8月 22 07:34 sbin
drwxr-xr-x 2 root root 4096 6月 11 2012 selinux
drwxr-xr-x 2 root root 4096 10月 17 2012 srv
dr-xr-xr-x 13 root root 0 11月 2 2015 sys
drwxrwxrwt 8 root root 4096 11月 1 22:44 tmp
drwxr-xr-x 10 root root 4096 10月 17 2012 usr
drwxr-xr-x 15 root root 4096 10月 25 23:11 var
lrwxrwxrwx 1 root root 29 8月 22 07:31 vmlinuz -> boot/vmlinuz-3.5.0-17-generic
administrator@ubuntu:~$ pwd
/home/administrator
administrator@ubuntu:~$ cd ..
administrator@ubuntu:/home$ cd ..
administrator@ubuntu:/$
linux的console界面的默認路徑不是根目錄
建議看看劉遄老師的《linux就該這么學》,書籍當中有詳細的描述
Ⅱ linux 內核映像文件在哪個目錄
編譯後在
/usr/src/linux/arch/i386/boot/
成功後你應該
cp /usr/src/linux/arch/i386/boot/ /boot/bzImage-2.4.18
也就是在
/boot/下
Ⅲ 怎樣進入linux內核文件目錄
1、先是輸入賬號復密碼進入centos7。制
Ⅳ linux內核存放的位置是在/usr/src/kernels下還是/boot/vmlinuz下
1、是在/boot目錄下
2、/usr/src目錄一般是系統內核代碼目錄
3、你看/boot/grub/grub.conf文件,kernel那行是vmlinuz...,就版是代表內核的權名字
4、Linux是一個一體化內核(monolithic kernel)系統。「內核」指的是一個提供硬體抽象層、磁碟及文件系統控制、多任務等功能的系統軟體。一個內核不是一套完整的操作系統。一套基於Linux內核的完整操作系統叫作Linux操作系統,或是GNU/Linux。設備驅動程序可以完全訪問硬體。Linux內的設備驅動程序可以方便地以模塊化(molarize)的形式設置,並在系統運行期間可直接裝載或卸載。
Ⅳ Linux內核完全剖析的目錄
序
第1章概述
1.1 Linux的誕生和發展
1.1.1 UNIX操作系統的誕生
1.1.2 MINIX操作系統
1.1.3 GNU計劃
1.1.4 POSIX標准
1.1.5 Linux操作系統的誕生
1.1.6 L,inux操作系統版本的變遷
1.1.7 Linux名稱的由來
1.1.8早期Linux系統開發的主要貢獻者
1.2內容綜述
第2章微型計算機組成結構
2.1微型計算機組成原理
2.2 I/O埠定址和訪問控制方式
2.2.1 I/O埠和定址
2.2.2 介面訪問控制
2.3 主存儲器、BIOS和CMOS
存儲器
2.3.1 主存儲器
2.3.2 基本輸入/輸出程序BIOS
2.3.3 CMOS存儲器
2.4 控制器和控制卡
2.4.1 中斷控制器
2.4.2 DMA控制器
2.4.3 定時/計數器
2.4.4 鍵盤控制器
2.4.5 串列控制卡
2.4.6 顯示控制
2.4.7 軟盤和硬碟控制器
第3章 內核編程語言和環境
3.1 as86匯編器
3.1.1 as86匯編語言語法
3.1.2 as86匯編語言程序
3.1.3 as86匯編語言程序的編譯和
鏈接
3.1.4 as86和ld86使用方法和選項
3.2 GNU as匯編
3.2.1 編譯aS匯編語言程序
3.2.2 aS匯編語法
3.2.3 指令語句、操作數和定址
3.2.4 區與重定位
3.2.5 符號
3.2.6 aS匯編命令
3.2.7 編寫16位代碼
3.2.8 aS匯編器命令行選項
3.3 C語言程序
3.3.1 C程序編譯和鏈接
3.3.2 嵌入匯編
3.3.3 圓括弧中的組合語句
3.3.4 寄存器變數
3.3.5 內聯函數
3.4 C與匯編程序的相互調用
3.4.1 C函數調用機制
3.4.2在匯編程序中調用C函數
3.4.3在C程序中調用匯編函數
3.5 Linux/0.11目標文跡慎件格式
3.5.1 目標文件格式
3.5.2 Linux 0.11中的目標文件格式
3.5.3 鏈接程序輸出
3.5.4 鏈接程序預定義變數
3.5.5 System.map文件
3.6 Make程序和Makefile文件
第4章
4.1 80x86 系統寄存器和系統指令
4.1.1 標志寄存器
4.1.2 內存管理寄存器
4.1.3 控制寄存器
4.1.4 系統指令
4.2.1 內存定址
4.2.2 地址變換
4.2.3 保護
4.3.1 段的定義
4.3.2 段描述符表
4.3.3 段選擇符冊轎
4.3.4 段描述符
4.3.5 代碼和數據段描述符類型
4.3.6 系統描述符類型
4.4 分頁機制
4.4.1 頁表結構
4.4.2 頁表項格式
4.4.3 虛擬存儲
4.5 保護
4.5.1 段級保護
4.5.2 訪問數據段時的特權級檢查
4.5.3 代碼段之間轉移控制時的特權級
4.5.3 代碼段之間轉移控制時的特權級
4.5.4 頁級保護
4.5.5 組合頁級和段級保護
4.6.1 異常和中斷向量
4.6.2 中斷源和異常源
4.6.3 異常分類
4.6.4 程序或任務的重新執行
4.6.5 開啟和禁止中斷
4.6.6 異常和中斷的優先順序
4.6.7 中斷描述符表
4.6.8 IDT描述符
4.6.9 異常與中斷處理
4.6.10 中斷處理任務
4.6.11 錯誤碼
4.7.1 任務的結構和狀態
4.7.2 任務的執行
4.7.3 任務管理數據結構
4.7.4 任務切換
4.7.5 任務鏈
4.7.6 任務地址空間
4.8.1 進入保護模式時的初始化操作
4.8.2 模式切換
4.9.1 多任務程序結構和工作原理
4.9.2 引導啟動程序boot.s
4.9.3 多任務內核程序head.s
第5章
5.1 Linux內核模式
5.2 Linux內核系統體系結構
5.3.1 物理內存
5.3.2 內存地址空間概念
5.3.3 內存分段機制
5.3.4 內存分頁管理
5.3.5 CPU多任務和保護方式
5.3.6 虛擬地址、線性地址和物理地址
5.3.7 用戶申請內存的動態分配
5.4.1 中斷操作原理
5.4.2 80x86微機的中斷子系統
5.4.3 中斷向量表
5.4.4 Linux內核的中斷處理
5.4.5 標志寄存器的中斷標志
5.5.1 系統調用介面
5.5.2 系統調用處理過程
5.5.3 Linux系統調用州州肆的參數傳遞方式
5.6.1 系統時間
5.6.2 系統定時
5.7 Linux進程式控制制
5.7.1 任務數據結構(1)
5.7.1 任務數據結構(2)
5.7.2 進程運行狀態
5.7.3 進程初始化
5.7.4 創建新進程
5.7.5 進程調度
5.7.6 終止進程
5.8.1 初始化階段
5.8.2 任務的堆棧
5.8.3 任務內核態堆棧與用戶態堆棧之
5.9 Linux 0.12採用的文件系統
5.10.1 內核主目錄linux
5.10.2 引導啟動程序目錄boot
5.10.3 文件系統目錄fs
5.10.4 頭文件主目錄include
5.10.5 內核初始化程序目錄init
5.10.6 內核程序主目錄kernel
5.10.7 內核庫函數目錄lib
5.10.8 內存管理程序目錄mm
5.10.9 編譯內核工具程序目錄tools
5.11 內核系統與應用程序的關系
5.12.1 功能描述
5.12.2 代碼注釋
5.13 本章小結
第11章
11.1 總體功能描述
11.1.1 浮點數據類型(1)
11.1.1 浮點數據類型(2)
11.1.2 數學協處理器功能和結構
11.2.1 功能描述
11.2.2 代碼注釋
第14章
14.1 include/目錄下的文件
14.2.1 功能描述
14.2.2 代碼注釋
14.2.3 a.out執行文件格式
14.3 const.h文件
Ⅵ 如何確定Linux內核源代碼目錄即,KBUILD的路徑
方法一:
確定內核源代碼目錄通常==文件系統中內核驅動模塊的build路徑
即/lib/moles/2.6.25-14.fc9.i686/build,這個build通常回為鏈接文件,連接到答
/usr/src/kernels/2.6.25-14.fc9.i686
此方法較准確,通常可以寫如下腳本實現:
# KBUILD is the path to the Linux kernel build tree. It is usually the
# same as the kernel source tree, except when the kernel was compiled in
# a separate directory.
KBUILD ?= $(shell readlink -f /lib/moles/$(KVERS)/build)
方法二:
自己下載內核源文件包,自己指定內核的編譯目錄!
不推薦這種做法,還是按照各大發行版的做法比較好!這樣不至於在編譯下載的某個設備驅動程序時
Ⅶ linux根目錄下5個主要的目錄及目錄的功能各是什麼
(1)/ : 根目錄
(2)/bin :存放啟動時所需要的普通程序
(3)/boot : 存放內核及啟動所需要的文件
(4)/dev :存放設備相關的文件
(5)/etc :存放系統的配置文件
(6)/home:存放用戶文件的主目錄,用戶數據( cd ~ 可進入自己的主目錄)
(7)/lib :存放啟動時所需要的庫文件
(8)/mnt :存放臨時的映射文件,通常是一些用來安裝其他設備的子目錄(如 /mnt/cdrom /mnt/floppy)
(9)/proc :這是一個虛擬的文件系統,存放當前系統的狀態(有關進程和系統信息)
(10)/root: 超級用戶主目錄
(11)/sbin: 存放啟動時所需要的系統管理程序
(12)/tmp :存放啟動時產生的臨時文件
(13)/usr : 包含一般不需要修改的應用程序,命令程序文件,程序庫,手冊
(14)/var :存放系統產生的經常變化的文件
(15)/var/tmp: 存放用戶的臨時文件
(16) /usr/lib: 存放非啟動用的庫文件
(17)/lib/moles /: 存放內核模塊
(18)/var/log:存放大多數日誌文件
(19)/var/run: 存放運行時的信息
(20)/var/lib: 存放一些系統運行時需要的文件
(21)/var/spool: 存放郵件,新聞及列印序列
(22)/etc/X11:存放X窗口系統所需要的配置文件
(23)/etc/init.d :存放啟動描述文件,包括各種模塊和服務的載入描述
(24)/etc/rcS.d :存放一些連接到 /etc/init.d的文件,根據runlevel的不同而執行不同的描述
(25)/etc/rc0.d---/etc/rc6.d: 存放一些連接文件,只在指定的runlevel 下執行相應的描述
(26)/usr/X11R6,/usr/X11,/usr/Xfree86 :存放X窗口系統所需要的文件
(27)/usr/bin : 存放應用程序二進制可執行文件
(28)/usr/sbin:存放大部分系統程序
(29)/usr/games:存放游戲程序及相應的數據
(30)/usr/include:存放c 和c++的頭文件
(31)/usr/info:存放GNU Info程序所需要的數據
(32)/usr/man:存放man程序所需要的數據
(33)/usr/src:存放源代碼文件
(34)/usr/doc: 存放文檔文件
(35)/usr/local:存放本地計算機所需要的文件
(36)/usr/shared:存放各種共享文件
Ⅷ linux內核主目錄kernel是/home嗎
不是的。
/home:是用戶家目錄。
kernel是內核,內核文件在/boot目錄下,一般以vmlinuz開頭,vm表示內核支持虛擬內存,z表示image zip是壓縮的內核 ,本身裡面帶有gzip的代碼,運行的時候會自行解壓的。