4.3 linux檔案管理 :檔案系統
1.檔案系統定義
作業系統為了有效的吞吐磁碟,把磁碟的儲存方式按照一定規則統一起來。
這種規則:(就叫做檔案管理系統/磁碟分割槽格式)
規定了檔案怎樣對映進磁碟的分割槽磁軌中
規定了當沒有足夠連續的磁軌儲存大檔案時,怎樣通過不連續的磁軌拼接容納磁軌
2.檔案系統型別
linux支援多種檔案系統 : ext3/ext4/reiserfs/zfs…
也有特殊場景下的特殊檔案系統: 掛載交換目錄(/tmp)的tmpfs 用於網路的nfs
3.目錄樹
檔案和目錄「居住」在磁碟分割槽當中。不能從目錄樹層面察覺到磁碟分割槽的存在。
linux根據目的來分組資料:
把所有的命令放在乙個地方
所有的資料放在乙個地方
所有的文件放在乙個地方
3.1根目錄下的 - 檔案系統
/usr ##/usr檔案系統包含了所有的命令、庫、man、不需要改變的檔案。
這樣允許/usr檔案系統檔案通過網路共享,可以更有效,節約了磁碟空間
易於管理:系統公升級只需要改變主/usr的,無需改變每台機器
/var ##/var檔案系統包含會改變的檔案,(spool資料夾 mail,new,印表機所用),log檔案
/home ##/home檔案系統是系統上的實際資料
3.2 根目錄下的 - 特殊目錄和檔案
/ ## 根目錄. 根目錄一般不存在任何檔案,檔案全部在根目錄的子目錄下;因為根目錄的順壞意味著系統無法引導
/bin ##引導啟動的命令| 普通使用者使用的命令
/sbin ##root使用的命令。 比如 yum -y
/etc ##配置檔案 比如 使用者資訊passwd
/root ##root的家目錄
/lib ##根檔案上程式需要的共享庫
/lib/modules ## 核心可載入模組,特別是恢復損壞系統引導需要的
/dev ##裝置檔案
/tmp ##臨時檔案 (引導程式執行的應該是/var下的tmp)
/boot ##引導載入器使用的檔案。核心映像經常在這裡,不在根目錄
/mnt ##系統管理員臨時mount的安裝點。
/proc /var /usr /home ##其他檔案系統安裝點
3.3 /etc 配置檔案目錄
/etc/rcor , /etc/rc*.d ##啟動、或改變執行時的scripts或者scripts目錄。【rc0.d】
/etc/passwd ##使用者資料庫
/etc/fdprm ##軟盤參數列??
/etc/fstab ##自動mount列表[swap分割槽/ext4分割槽...]
/etc/group ##使用者組資料庫
/etc/initab ##init配置檔案(裡面都是#)
/etc/issue ##getty登陸提示的輸出資訊
/etc/magic ##file的配置檔案??
/etc/motd ##登陸成功的通知資訊,eg:shell登陸成功後的hello
/etc/shadow ##影子口令密碼
/etc/login.defs ##login命令的配置檔案??
/etc/printcap ##針對印表機
/ect/profile , /etc/csh.login , /etc/csh , /etc/cshrc ## 登陸時的執行配置檔案
/etc/securetty ##確認安全終端,就是那個終端允許root登陸(tty1,tty2,tty3)
/etc/shells ##列出可信任的shell(/bin/sh,/bin/bash)
3.4 /usr目錄 - 本地安裝的軟體一般是在/usr/local(更新系統時,無需重新安裝程式)
/usr/bin ##幾乎所有的使用者命令,有些命令在/usr/local/bin中
/usr/sbin ##根系統不需要的系統管理命令,比如多數服務程式
/usr/man , /usr/info ,/usr/doc ##手冊,gun資訊,其他文件??
/usr/include ##c程式語言的標頭檔案(xx.h)
/usr/lib ##程式或子系統不變的資料檔案
/usr/local ##本地安裝程式
3.5 /var目錄 - 執行時改變的資料包含的執行時改變的資料,每個系統是特定的,不共享
/var/local ##安裝程式符可變資料
/var/lock ##鎖定檔案
/var/log ##各種程式的日誌檔案
/var/run ##儲存到下次引導前的關於系統的資訊(/var/run/utmp儲存當前登入資訊)
/var/spool ##列印佇列或者其他佇列的工作目錄,比如/var/spool/mail
/var/tmp ##比/tmp允許更大的且需要更長存在時間的
3.6 /proc - 核心產生的檔案系統是乙個假的檔案系統,不存在於某個磁碟。是由核心產生
除非拷貝到其他地方,否則/proc下的檔案沒有多少佔記憶體
/proc/n/ ##關於程序n的資訊,每個程序都會在/proc下有個目錄
/proc/cpuinfo ##處理器資訊(型別,製造商資訊…)
/proc/devices ##當前執行的核心配置的驅動列表(分為位元組裝置和塊裝置)
/proc/dma ##顯示當前使用的dma通道(4: cascade)
/proc/filesystems ##核心配置的檔案系統
/proc/interrupts ##顯示使用的中斷
/proc/ioports ##當前使用的io埠號
/proc/kcore ##系統物理的核心映像,和物理記憶體一樣(實際不佔多少記憶體)128t
/prov/kmsg ##核心輸出的訊息,被推送到syslog
/proc/ksyms ##核心符號表??
/proc/meminfo ##儲存使用情況,包括物理記憶體和swap
/proc/modules ##當前載入了哪些核心模組
/proc/net ##網路協議狀態
/proc/stat ##系統的不同狀態
/proc/uptime ##系統啟動時間
/proc/version ##系統核心版本
3.7 思維導圖 Linux 檔案系統掛載管理
一 掛載操作 磁碟或者分割槽建立好檔案系統後,需要掛載到乙個目錄才能夠使用。windows或者mac系統會進行自動掛載,一旦建立好檔案系統後會自動掛載到系統上,windows上稱之為c盤 d盤等 linux需要手動進行掛載操作或者配置系統進行自動掛載。舉例 dev sda3 ext4 掛載到 mnt...
Linux檔案系統掛載管理
磁碟或分割槽建立好檔案系統後,需要掛載到乙個目錄才能夠使用 windows或mac系統會自動進行自動掛載,一旦建立好檔案系統後會自動 掛載到系統上,windows上稱為c盤 d盤等 linux需要手工進行掛載操作或配置系統進行自動掛載 例如 dev sdb1 ext4 掛載到 mnt 不強制到此目錄...
linux檔案系統及管理
fdisk fdisk l 檢視裝置檔案 使用虛擬機器工具新建虛擬硬碟,然後重啟,fdisk l 可以看到最下方一條資料是新建的虛擬硬碟 下面對 dev sdb進行分割槽操作,輸入 fdisk dev sdb 然後輸入n 表示new 新建分割槽 然後系統提示穿件擴充套件分割槽 extended 還是...