溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

2.1Linux的 Directory Description目錄描述(總結(jié))

發(fā)布時間:2020-06-29 17:50:05 來源:網(wǎng)絡(luò) 閱讀:261 作者:wx5976b0f438118 欄目:系統(tǒng)運(yùn)維

1.Linux的Directory Description目錄描述

binEssential command binaries 所有用戶可用的基本命令的二進(jìn)制程序
bootStatic files of the boot loader 引導(dǎo)加載器必須用到的靜態(tài)文件 ,kernel initramfs(initrd),grub等。
devDevice files 存儲特殊文件或設(shè)備文件 設(shè)備有兩種類型: 塊設(shè)備(隨機(jī)設(shè)備)、字符設(shè)備(線性設(shè)備)

  • 硬盤 、硬盤分區(qū)、usb閃存盤 /dev/sd[a-p]數(shù)字
  • 25針打印機(jī) /dev/lp[0-2]
  • usb接口打印機(jī) /dev/usb/lp[0-15]
  • 軟盤 /dev/fd[0-7]
  • VirtI/O 界面 /dev/vd[a-p]
  • 鼠標(biāo) /dev/input/mouse[0-15] (通用)
  • CDROM/DVDROM /dev/scd[0-1]
  • /dev/sr[0-1]
  • /dev/cdrom
  • 磁帶機(jī) /dev/ht0 IDE界面
  • /dev/sr0 SATA/SCSI界面
  • /dev/tape 當(dāng)前磁帶

etc Host-specific system configuration 系統(tǒng)程序配置文件,不能為二進(jìn)制程序
home 普通用戶家目錄的集中位置,一般每個用戶的家目錄默認(rèn)為此目錄下與用戶同名的子目錄 , /home/$USER
root Home directory for the root user (optional) 管理員的家目錄,可選。應(yīng)該使用普通用戶登陸。
lib Essential shared libraries and kernel modules 基本共享庫和內(nèi)核模塊 為系統(tǒng)啟動或跟文件系統(tǒng)上的應(yīng)用程序(/bin,/sbin等)提供共享庫,以及為內(nèi)核提供內(nèi)核模塊

  • libc.so. the dynamically-linked C library 動態(tài)鏈接c庫
  • ld the execution time linker/loader 運(yùn)行時鏈接器、加載器
  • /lib:** 必須有的目錄或軟鏈接, loadable kernal modules 可加載的內(nèi)核模塊
  • lib64: 64位系統(tǒng)特種的存放64位共享庫的路徑,32位的庫在lib下
    media: Mount point for removeable media 可移動、便攜式設(shè)備掛載點(diǎn)
    mnt: Mount point for mounting a filesystem temporarily 其他文件系統(tǒng)的臨時掛載點(diǎn)
    opt: Add-on application software packages 附加應(yīng)用軟件包的安裝位置,可選
    sbin: Essential system binaries 基本的系統(tǒng)管理二進(jìn)制程序
    srv: Data for services provided by this system 系統(tǒng)提供的服務(wù)的數(shù)據(jù)

tmp: Temporary files 存儲程序產(chǎn)生的臨時文件的目錄,此目錄所有用戶都能執(zhí)行寫操作。
usr: Secondary hierarchy usr層級結(jié)構(gòu) 第二重要的文件系統(tǒng),

  • bin 、sbin
  • lib、 lib64
  • include: c程序頭文件
  • share: 命令手冊頁和自帶文檔等架構(gòu)特有的文件的存儲位置
  • local: 層級結(jié)構(gòu)
  • X11R6: x窗口系統(tǒng)安裝目錄
  • games:
  • src: 源碼文件的存儲位置
  • local /usr/local local hierarchy 系統(tǒng)管理員安裝應(yīng)用程序;通常用于安裝第三方程序

var contains variable data files. This includes spool directories and files, administrative and logging data, and transient and temporary files. 存儲時常發(fā)生變化的數(shù)據(jù)

  • cache Application cache datalibVariable state information
  • local Variable data for /usr/local
  • lock Lock files 鎖文件
  • log Log files and directories 日志文件
  • opt Variable data for /opt
  • run Data relevant to running processes 運(yùn)行中的
  • spool Application spool data
  • tmp Temporary files preserved between system reboots 重啟后仍要保留的臨時文件

proc基于內(nèi)存的虛擬文件系統(tǒng),存儲內(nèi)核和進(jìn)程相關(guān)文件,多為內(nèi)核參數(shù), 例如 net.ipv4.ip_forward,虛擬為 net/ipv4/ip_forward , 完整路徑為 /proc/sys/net/ipv4/ip_forward
sys 基于內(nèi)存的sysfs虛擬文件系統(tǒng)提供了一種比proc 更為理想的訪問內(nèi)核數(shù)據(jù)的途徑,主要作用是管理Linux設(shè)備提供一種統(tǒng)一的模型的接口

2 /sys下的子目錄 所包含的內(nèi)容

devices 這是內(nèi)核對系統(tǒng)中所有設(shè)備的分層次表達(dá)模型,也是 /sys 文件系統(tǒng)管理設(shè)備的最重要的目錄結(jié)構(gòu),下文會對它的內(nèi)部結(jié)構(gòu)作進(jìn)一步分析;
dev 這個目錄下維護(hù)一個按字符設(shè)備和塊設(shè)備的主次號碼(major:minor)鏈接到真實(shí)的設(shè)備(/sys/devices下)的符號鏈接文件,它是在內(nèi)核 2.6.26 首次引入;
bus 這是內(nèi)核設(shè)備按總線類型分層放置的目錄結(jié)構(gòu), devices 中的所有設(shè)備都是連接于某種總線之下,在這里的每一種具體總線之下可以找到每一個具體設(shè)備的符號鏈接,它也是構(gòu)成 Linux 統(tǒng)一設(shè)備模型的一部分;
class 這是按照設(shè)備功能分類的設(shè)備模型,如系統(tǒng)所有輸入設(shè)備都會出現(xiàn)在 /sys/class/input 之下,而不論它們是以何種總線連接到系統(tǒng)。它也是構(gòu)成 Linux 統(tǒng)一設(shè)備模型的一部分;
block 這里是系統(tǒng)中當(dāng)前所有的塊設(shè)備所在,按照功能來說放置在 /sys/class 之下會更合適,但只是由于歷史遺留因素而一直存在于 /sys/block, 但從 2.6.22 開始就已標(biāo)記為過時,只有在打開了 CONFIG_SYSFS_DEPRECATED 配置下編譯才會有這個目錄的存在,并且在 2.6.26 內(nèi)核中已正式移到 /sys/class/block, 舊的接口 /sys/block 為了向后兼容保留存在,但其中的內(nèi)容已經(jīng)變?yōu)橹赶蛩鼈冊?/sys/devices/ 中真實(shí)設(shè)備的符號鏈接文件;
firmware 這里是系統(tǒng)加載固件機(jī)制的對用戶空間的接口,關(guān)于固件有專用于固件加載的一套API,在附錄 LDD3 一書中有關(guān)于內(nèi)核支持固件加載機(jī)制的更詳細(xì)的介紹;
fs 這里按照設(shè)計(jì)是用于描述系統(tǒng)中所有文件系統(tǒng),包括文件系統(tǒng)本身和按文件系統(tǒng)分類存放的已掛載點(diǎn),但目前只有 fuse,gfs2 等少數(shù)文件系統(tǒng)支持 sysfs 接口,一些傳統(tǒng)的虛擬文件系統(tǒng)(VFS)層次控制參數(shù)仍然在 sysctl (/proc/sys/fs) 接口中中;
kernel 這里是內(nèi)核所有可調(diào)整參數(shù)的位置,目前只有 uevent_helper, kexec_loaded, mm, 和新式的 slab 分配器等幾項(xiàng)較新的設(shè)計(jì)在使用它,其它內(nèi)核可調(diào)整參數(shù)仍然位于 sysctl (/proc/sys/kernel) 接口中 ;
module 這里有系統(tǒng)中所有模塊的信息,不論這些模塊是以內(nèi)聯(lián)(inlined)方式編譯到內(nèi)核映像文件(vmlinuz)中還是編譯為外部模塊(ko文件),都可能會出現(xiàn)在?/sys/module?中:編譯為外部模塊(ko文件)在加載后會出現(xiàn)對應(yīng)的/sys/module/<module_name>/, 并且在這個目錄下會出現(xiàn)一些屬性文件和屬性目錄來表示此外部模塊的一些信息,如版本號、加載狀態(tài)、所提供的驅(qū)動程序等;編譯為內(nèi)聯(lián)方式的模塊則只在當(dāng)它有非0屬性的模塊參數(shù)時會出現(xiàn)對應(yīng)的 /sys/module/<module_name>, 這些模塊的可用參數(shù)會出現(xiàn)在?/sys/modules/<modname>/parameters/<param_name>?中,如 /sys/module/printk/parameters/time 這個可讀寫參數(shù)控制著內(nèi)聯(lián)模塊 printk 在打印內(nèi)核消息時是否加上時間前綴;所有內(nèi)聯(lián)模塊的參數(shù)也可以由 "<module_name>.<param_name>=<value>" 的形式寫在內(nèi)核啟動參數(shù)上,如啟動內(nèi)核時加上參數(shù) "printk.time=1" 與 向 "/sys/module/printk/parameters/time" 寫入1的效果相同;沒有非0屬性參數(shù)的內(nèi)聯(lián)模塊不會出現(xiàn)于此。
power 這里是系統(tǒng)中電源選項(xiàng),這個目錄下有幾個屬性文件可以用于控制整個機(jī)器的電源狀態(tài),如可以向其中寫入控制命令讓機(jī)器關(guān)機(jī)、重啟等。
slab (對應(yīng) 2.6.23 內(nèi)核,在 2.6.24 以后移至 /sys/kernel/slab) 從2.6.23 開始可以選擇 SLAB 內(nèi)存分配器的實(shí)現(xiàn),并且新的 SLUB(Unqueued Slab Allocator)被設(shè)置為缺省值;如果編譯了此選項(xiàng),在 /sys 下就會出現(xiàn) /sys/slab ,里面有每一個 kmem_cache 結(jié)構(gòu)體的可調(diào)整參數(shù)。對應(yīng)于舊的 SLAB 內(nèi)存分配器下的 /proc/slabinfo 動態(tài)調(diào)整接口,新式的 /sys/kernel/slab/<slab_name> 接口中的各項(xiàng)信息和可調(diào)整項(xiàng)顯得更為清晰。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI