Linux檔案系統

2021-05-24 22:17:41 字數 2279 閱讀 7412

linux目錄結構:

根目錄"/"

/bin 可執行檔案目錄

/boot 核心引導檔案:vmlinuz,initrd.img等

/dev 裝置檔案儲存目錄,應用程式對這些檔案讀寫和控制可訪問實際裝置

/etc 系統配置和一些伺服器配置檔案的位置,如帳號及密碼配置檔案。

/home 普通使用者目錄

/lib 庫檔案目錄

/lost+found ext2,ext3檔案系統中當系統意外崩潰或意外關機時產生的檔案碎片位置

/mnt 存放掛載的儲存裝置目錄,如cdrom,/etc/fstab中有相關定義

/opt 某些軟體包被安裝在這裡,使用者自己編譯的軟體包也可安裝在此。

/root linux超級許可權使用者root的home目錄

/sbin 存放可執行檔案,大多為系統管理命令,是root使用者可執行命令存放地,它與/usr/sbin , usr/local/sbin相似。

/tmp 使用者運程程式產生的臨時檔案存放處

/usr 系統存放程式的目錄,如命令,幫助文件,linux發行版提供的軟體包大多被安裝在這裡。

/var 此目錄內容經常變動,如/var/log用來儲存系統日誌。

/sys 核心所支援的sysfs檔案系統被對映在此。匯流排,驅動和裝置都可在sysfs檔案系統中找到對應節點,當核心檢測到新裝置,核心會在    sysfs檔案系統中為該新裝置生成一項新的記錄。

/initrd 若啟動時使用了initrd映像作為臨時根檔案系統,則在執行完其上的/linuxrc掛接真正的根檔案系統後,原來初始ram檔案系統被對映到此。

linux中虛擬檔案系統、磁碟檔案及一般裝置檔案與裝置驅動關係.

應用程式->vfs->(特殊檔案|磁碟檔案|裝置檔案)

磁碟檔案->磁碟驅動->磁碟

裝置檔案->其他裝置驅動->其他裝置

對於塊儲存裝置,ext2,fat,jffs2等會實現針對vfs的file_operations成員函式,裝置驅動層將看不到file_operations的存在,裝置驅動重要的結構體 file,inode.

struct file f_u;

struct path  f_path;

#define f_dentry f_path.dentry

#define f_vfsmnt f_path.mnt

const struct file_operations *f_op;

atomic_long_t  f_count;

unsigned int   f_flags;

fmode_t   f_mode;

loff_t   f_pos;

struct fown_struct f_owner;

const struct cred *f_cred;

struct file_ra_state f_ra;

u64   f_version;

#ifdef config_security

void   *f_security;

#endif

/* needed for tty driver, and maybe others */

void   *private_data;

__u32   i_generation;

#ifdef config_dnotify

unsigned long  i_dnotify_mask; /* directory notify events */

struct dnotify_struct *i_dnotify; /* for directory notifications */

#endif

#ifdef config_inotify

struct list_head inotify_watches; /* watches on this inode */

struct mutex  inotify_mutex; /* protects the watches list */

#endif

unsigned long  i_state;

unsigned long  dirtied_when; /* jiffies of first dirtying */

unsigned int  i_flags;

atomic_t  i_writecount;

#ifdef config_security

void   *i_security;

#endif

void   *i_private; /* fs or device private pointer */

};

linux 檔案系統 Linux 檔案系統結構介紹

ubuntu 像所有類unix系統一樣 在分層樹中組織檔案,其中的關係就像父母和孩子一樣。目錄可以包含其他目錄以及常規檔案,它們是樹的 葉子 樹的任何元素都可以通過路徑名引用 絕對路徑以字元 標識根目錄,其中包含所有其他目錄和檔案 開頭,然後列出必須遍歷以到達該元素的每個子目錄,每個子目錄用 符號分...

Linux檔案系統

之前對磁碟分割槽已經有了詳細的描述,這篇主要介紹檔案系統 linux的檔案系統是出了名的 下面就 大概介紹下 可以把檔案系統大概分成 superblock inodeblock datablock 三部分 superblock superblock記錄檔案系統的基本資訊比如每塊資料塊的大小,空閒磁碟...

Linux 檔案系統

一 作業系統通過檔案系統進行管理檔案及資料,磁碟或者分割槽需要建立檔案系統之後才能夠為作業系統使用,建立檔案系統的過程又稱之為格式化。1,沒有檔案系統的裝置又稱之為裸 raw 裝置 2,常見的檔案系統有fat32 ntfs ext2 ext3 ext4 xfs hfs等 3,檔案系統之間的區別 是否...