1、Linux的文件系統
Linux的文件系統是根文件系統(root filesystem)linux
各個文件夾:
- /boot:引導文件存放目錄,內核文件(vmlinuz)、引導加載器(bootloader, grub)都存放於此目錄;
- /bin:供全部用戶使用的基本命令;不能關聯至獨立分區,OS啓動即會用到的程序;
- /sbin:管理類的基本命令;不能關聯至獨立分區,OS啓動即會用到的程序;
- /lib:基本共享庫文件,以及內核模塊文件(/lib/modules);
- /lib64:專用於x86_64系統上的輔助共享庫文件存放位置;
- /etc:配置文件目錄(純文本文件);
- /home/USERNAME:普通用戶家目錄;
- /root:管理員的家目錄;
- /media:便攜式移動設備掛載點;
- cdrom
- usb
- /mnt:臨時文件系統掛載點;
- /dev:設備文件及特殊文件存儲位置;
- b: block device,隨機訪問
- c: character device,線性訪問
- /opt:第三方應用程序的安裝位置;
- /srv:系統上運行的服務用到的數據;
- /tmp:臨時文件存儲位置;
- /usr: universal shared, read-only data;
- bin: 保證系統擁有完整功能而提供的應用程序;
- sbin:
- lib:
- lib64:
- include: C程序的頭文件(header files);
- share:結構化獨立的數據,例如doc, man等;
- local:第三方應用程序的安裝位置;
- bin, sbin, lib, lib64, etc, share
- /var: variable data files
- cache: 應用程序緩存數據目錄;
- lib: 應用程序狀態信息數據;
- local:專用於爲/usr/local下的應用程序存儲可變數據;
- lock: 鎖文件
- log: 日誌目錄及文件;
- opt: 專用於爲/opt下的應用程序存儲可變數據;
- run: 運行中的進程相關的數據;一般用於存儲進程的pid文件;
- spool: 應用程序數據池;
- tmp: 保存系統兩次重啓之間產生的臨時數據;
- /proc: 用於輸出內核與進程信息相關的虛擬文件系統;
- /sys:用於輸出當前系統上硬件設備相關信息的虛擬文件系統;
- /selinux: security enhanced Linux,selinux相關的安全策略等信息的存儲位置;
Linux上的應用程序的組成部分:
- 二進制程序:/bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin
- 庫文件:/lib, /lib64, /usr/lib, /usr/lib64, /usr/local/lib, /usr/local/lib64
- 配置文件:/etc, /etc/DIRECTORY, /usr/local/etc
- 幫助文件:/usr/share/man, /usr/share/doc, /usr/local/share/man, /usr/local/share/doc
2、文件管理
一、文件類型:
- - (f):普通文件;
- d: 目錄文件;
- b: 塊設備;
- c: 字符設備;
- l: 符號連接文件;
- p: 管道文件;
- s: 套接字文件;socket;
二、文件時間戳管理工具
1)stat命令緩存
查看文件狀態安全
命令格式:stat /PATH/TO/SOMEFILE # 獲取指定文件的元數據,會顯示3個時間戳socket
三個時間戳:工具
- access time:訪問時間,簡寫爲atime,讀取文件內容
- modify time: 修改時間, 簡寫爲mtime,改變文件內容(數據)
- change time: 改變時間, 簡寫爲ctime,元數據發生改變
2)touch命令spa
建立文件和修改文件的時間戳日誌
命令格式:touch [OPTION]... FILE...blog
選項:遞歸
- -a: only atime
- -m: only mtime
- -t STAMP:
- STAMP = [[CC]YY]MMDDhhmm[.ss] # 年月日時分.秒
- -c: 若是文件不存在,不建立
三、各類命令
1)cp命令進程
命令格式:cp [OPTION]... [-T] SOURCE DEST;cp [OPTION]... SOURCE... DIRECTORY;cp [OPTION]... -t DIRECTORY SOURCE...
a.cp SRC DEST
SRC是文件:
- 若是目標不存在:新建DEST,並將SRC中內容填充至DEST中;
- 若是目錄存在:
- 若是DEST是文件:
- 將SRC中的內容覆蓋至DEST中(此時建議爲cp命令使用-i交互式選項)
- 若是DEST是目錄:
- 在DEST下新建與原文件同名的文件,並將SRC中內容填充至新文件中;
SRC是目錄:此時使用-r選項,遞歸的cp目錄
- 若是DEST不存在:則建立指定目錄,複製SRC目錄中全部文件至DEST中;
- 若是DEST存在:
- 若是DEST是文件:報錯
- 若是DEST是目錄:將SRC目錄下的文件,所有copy到DEST目錄下
b.cp SRC... DEST # SRC...:多個文件
DEST必須存在,且爲目錄,其它情形均會出錯;
經常使用選項:
- -i:交互式
- -r, -R: 遞歸複製目錄及內部的全部內容;
- -a: 歸檔,至關於-dR --preserv=all
- -d:--no-dereference --preserv=links
- --preserv[=ATTR_LIST]
- mode: 權限
- ownership: 屬主屬組
- timestamp:
- links
- xattr
- context
- all
- -p: --preserv=mode,ownership,timestamp,複製權限,屬組,時間戳
- -v: --verbose,顯示進度條
- -f: --force,強制複製(不會提示)
2)mv命令
move,移動文件
指令格式:mv [OPTION]... [-T] SOURCE DEST;mv [OPTION]... SOURCE... DIRECTORY;mv [OPTION]... -t DIRECTORY SOURCE...
選項:
3)rm命令
remove,刪除
指令格式:rm [OPTION]... FILE...
經常使用選項:
- -i: 交互式
- -f: 強制刪除
- -r: 遞歸
- -rf:能夠遞歸的刪除文件夾