天天看點

02_02 Linux根檔案系統詳解

file指令及其用法

Windows:pe

Linux:ELF

檔案系統:

rootfs:根檔案系統

FHS:Linux

ls / 檢視根目錄

/boot: 系統啟動相關的檔案,如核心,initrd 以及grub(bootloader)

/dev: 裝置檔案

        塊裝置:随機通路的裝置 資料塊  硬碟

        字元裝置:線性通路 按字元通路 鍵盤 滑鼠 顯示器

        裝置号:主裝置号(major)和次裝置号(minor)

/etc: 配置檔案

/home: 使用者的家目錄,預設為home下一個與使用者名同名的目錄 /home/USERNANE

/root:管理者的家目錄

/lib:庫檔案和核心子產品檔案

    /lib/modules:核心子產品檔案 沒有程式的執行入口 隻能通路 不能執行

    靜态庫  .a

    動态庫 .dll, so(shared object)

 /media: 挂載點目錄,移動裝置

/mnt: 額外的臨時檔案系統  

其實上面2者都通用的 隻是規定

/opt:可選目錄 第三方程式的安裝目錄 早期用來安裝第三方軟體

/proc:僞檔案系統 沒有檔案 核心映射檔案 斷電為空

/sys:僞檔案系統,跟硬體裝置相關的屬性映射檔案 比如磁盤I/O隊列  斷電為空

/tmp:臨時檔案 一個月定期清除 每個人自己建立 但是 隻能删除自己的 

/var/temp

/var:可變化的檔案: 日志 郵件 緩存 run程序id号

/bin:可執行檔案 使用者指令

/sbin:管理指令

/usr:shared,read-only 全局的共享的隻讀檔案

    /usr/bin

    /usr/sbin

    /usr/lib

系統啟動後運作的功能所需要的庫等

/usr/local:

    /usr/local/bin

    /usr/local/lib

命名規則:

1.長度不能超過255字元

2.不能使用/當檔案名

3.嚴格區分大小寫

相對路徑 

絕對路徑

檔案管理

目錄管理

ls

cd

pwd

mkdir: 建立空目錄

/root/x/y/z

mkdir x

mkdir x/y

mkdir x/y/z

tree:檢視目錄樹

mkdir:

    -p   如果沒有父目錄 會建立

    -v 顯示結果

mkdir -p /root/x/y/z 如果沒有父目錄 會建立

mkdir -pv /root/x/y/z 顯示建立過程

mkdir -pv /root/x/{y/m,z} 花括号展開

或者

mkdir -pv /root/x/y/m /root/x/z

建立 /mnt/test2/下的 a_b,a_c,d_b,d_c

{a,d}_{b,c}

mkdir -pv /mnt/test2/{a,d}_{b,c}

删除目錄:

rmdir /mnt/test 删除空目錄

rmdir:

    -p 删除非空目錄

檔案建立和删除

touch a 建立一個a的空檔案

file a 檢視檔案

touch 主要用來修改時間戳

    -c 不建立 檢視時間戳 如果不存在 也不 建立

    -a 修改通路時間    

    -m -t 201212121212 file 修改到某一個時間戳

stat a 檢視a檔案的時間戳狀态 

stat

建立檔案,可以使用檔案編輯器

ASCII:

    128不同的字元:

        二進制:

                2^6 =0,63

                2^7=0,127

  GB19030 GBK GB2312 unicode

nano 簡單文本編輯器

nano text

Ctrl+O 儲存退出

删除檔案:rm hello

\ls 去除顔色

rm

     -i 删除前确認

    -f 強行删除

    -r 遞歸删除目錄裡的檔案和目錄

    -rf 強行删除  遞歸删除目錄裡的檔案和目錄

rm -rf /mnt/test2

複制和移動檔案

cp: copy

    -R 遞歸

    -r 遞歸

    -i 互動 警告

    -f 強行覆寫

    -p 保留屬性 屬組 屬主 ###

    -a  保持連接配接 遞歸複制 歸檔複制 常用備份

cp SRC DEST 源檔案 目标檔案

cp file1 file2 file3 最後一個是目标  無法實作2個檔案到一個檔案

cp /etc/passwd /tmp/   目标是目錄 并且存在 把檔案放進去

cp /etc/passwd /tmp/test 不存在 則複制為test 如果存在 則覆寫

cp file1 file2 dirctory 多個源檔案 最後一個必須是目錄

cp /etc/init.d/ /tmp 預設複制目錄裡面的檔案 不複制目錄本身

cp -r /etc/init.d/  /tem/hello/ 整個複制到hello目錄

cp -f 如果目标存在 強行覆寫

cp -i 提示警告資訊

cp /etc/{password,inittab} /tmp

 mv move 移動檔案

mv SRC DEST

同一個目錄下 就是重命名

mv /tmp/hello/ /var/tmp/abc 如果複制目錄 目标不是目錄 無法移動 如果是目錄 儲存到目錄 

mv -t DEST SRC ===mv SRC DEST

複制檔案并指定屬性 相似與cp

install:

    -d DIRECTORY....    建立目錄

    -m 指定權限

    -o 指定屬主

FHS