走入系統命令

一、inode節點號

        在linux中,每一個文件都有唯一的inode號,inode號也是系統識別的唯一編碼,而文件名僅僅是為了使用者區分辨認, inode (index node )表中包含文件系統所有文件列表 一個節點(索引節點)是在一個表項,包含有關文件的信息(元數據 ),包括:

              文件類型,權限,UID ,GID
              鏈接數(指向這個文件名路徑名稱個數)
              該文件的大小和不同的時間戳
              指向磁盤上文件的數據塊指針

              有關文件的其他數據

        目錄的數據內容就是目錄里面的文件列表,目錄引用的是inode號,也就是目錄下的文件名和文件inode號之間的映射

        ls -i 查看文件的節點編號

        走入系統命令

走入系統命令
        節點編號是由分區分配的,不是由磁盤分配,在同一個分區中,不會存在相同的節點編號,
        節點編號是唯一的。但在不同的分區中,節點編號可以相同
        在centos7中,根上的目錄文件的節點號都是64開始,centos6中,跟上的目錄文件的節點號為2/sys、/proc文件在內存中,節點編號為1,節點編號是有限的
/ 上的節點編號都是64
走入系統命令
         走入系統命令                  走入系統命令

       df -i 查看磁盤分區上的可用節點號

         走入系統命令

走入系統命令
         whatch -n1 每秒掃描一次

         創建大量節點號

         走入系統命令

走入系統命令

        每秒掃描一次觀察df節點號的變化

        走入系統命令

        走入系統命令

走入系統命令
走入系統命令

        當系統節點數被占用完時,再創建新文件會提示報錯,節點編號是可以耗盡的

       走入系統命令

走入系統命令
走入系統命令

       走入系統命令

       ls file* 會因為參數過多無法顯示報錯,故使用ls命令即可

       走入系統命令

走入系統命令

        xargs 逐一的傳遞參數,從而解決參數過多的問題,將ls列出的參數逐一的傳遞給rm從而刪除

        走入系統命令

走入系統命令
       cp和inode號
        分配一個空閑的inode號,在inode表中生成新條目,在目錄中創建一個目錄項,將目錄與inode編號關聯拷貝數據生成新的文件
在同分區移動文件時,僅移動目錄的數據塊信息,如果不是在同一個分區,則需要同事將節點編號和原數據同時移動。
刪除文件時,僅僅是先刪除inode節點號,數據并不會刪除,但在其他文件寫入時,可能會覆蓋占用被刪除節點的數據空間
        rm和inode
          使用rm 命令:
                鏈接數遞減,從而釋放的inode 號可以被重用
                把數據塊放在空閑列表中
                刪除目錄項
                數據實際上不會馬上被刪除,但當另一個文件使用數據塊時將被覆蓋。
        mv和inode
          如果mv 命令的目標和源在相同的文件系統,使用mv 命令
                用新的文件名創建對應新的目錄項
                刪除舊目錄條目對應的舊的文件名
                不影響inode 表(除時間戳)或磁盤上的數據位置:沒有數據被移動!

         如果目標和源在一個不同的文件系統, mv相當于cp 和rm

2、shred:文件粉碎工具(覆蓋原文件)

          徹底刪除文件

                  shred -u file

          shred會用一些隨機內容覆蓋文件所在的節點和數據塊,并刪除文件(-u參數)。

          假如想清除的更徹底一點可以也可使用-z 參數,意思是先用隨機數據填充,最后一次再用0填充。

                   shred -u -z file

另外shred還可以清除整個分區或磁盤,如果想徹底清除/dev/sdb1分區的內容可以這樣:

         shred /dev/sdb1 (但是不能加-u參數)

還有一些其他參數如下:

-f, –force 更改權限允許寫入(如有必要)

-n, –iterations=N 重寫N次,默認為3次

–random-source=FILE 從指定文件讀取數據

-s, –size=N 將文件粉碎為固定大小 (可使用后綴如K、M、C等)

-u, –remove 重寫后截短并移除

-v, –verbose 顯示進度

-z, –zero – add 用0覆蓋數據

–help 顯示幫助

–version 顯示版本信息

走入系統命令

3、復制

             cp 復制文件

                   -i:覆蓋前提示 是否覆蓋

                   –n: 不覆蓋原文件 -i、-n最后的生效

                     走入系統命令      

走入系統命令

-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 如果原文件不能打開,則刪除原文件后再次重新寫入,屬性發生改變

                   走入系統命令

備份配置文件-a,文件屬性信息完全復制,等同于備份)

cp -a /etc/passwd{,.bak}

cp -a /etc/passwd /etc/passwd.bak

 走入系統命令

            mknod 創建復制設備文件                

                    cp不能復制設備文件,復制設備文件用mknod

                    創建設備文件/app/sda

                    mknod /app/sda b 8 0 b表示設備文件,8表示設備的主設備號,0表示設備的次設備號

                    創建設備文件時,應制定文件類型b,以及主設備和次設備號                                  

                   走入系統命令

                   創建空設備文件

                   走入系統命令

4、rename 批量更改文件名

        rename ‘.txt’ ‘.txt.bak’ *.txt 將txt后綴名更改為txt.bak
        rename ‘.txt.bak’ ” *.txt 將txt.bak后綴名清除

       走入系統命令                                                        

       走入系統命令

5、tree 顯示目錄樹

            -d:只顯示目錄

             -L level:指定顯示的層級數目

             -P pattern:只顯示由指定pattern匹配到的路徑

            走入系統命令                      走入系統命令                

          走入系統命令          走入系統命令

6、mkdir 創建目錄

           -p: 遞歸創建目錄

           -v: 顯示詳細信息

           -m MODE: 創建目錄時直接指定權限 eg:-m 644

        走入系統命令                 走入系統命令

       走入系統命令

7、tr:轉換刪除字符

          tr [OPTION]… SET1 [SET2]

          選項:

                   -c –C –complement:取字符集的補集    

                   -d –delete:刪除所有屬于第一字符集的字符

                   -s –squeeze-repeats:把連續重復的字符以單獨一個字符表示

                   -t –truncate-set1:將第一個字符集對應字符轉化為第二字符集

走入系統命令         走入系統命令

替換重定向到另一文件,或則>>追加重定向

走入系統命令

走入系統命令

 s 重復字符壓縮

          走入系統命令         

         走入系統命令

          走入系統命令

原創文章,作者:danran,如若轉載,請注明出處:http://www.www58058.com/76936

(0)
danrandanran
上一篇 2017-05-25 17:47
下一篇 2017-05-26 09:45

相關推薦

  • vsftpd

    練習:完成vsftpd配置 (1) 禁錮系統用戶于家目錄 [root@node3 ~]# yum -y install vsftpd [root@node3 ~]# vim /etc/vsftpd/vsftpd.conf chroot_local_user=YES &n…

    Linux干貨 2016-10-16
  • 企業實時同步方案—-Rsync+Sersync

    原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://nolinux.blog.51cto.com/4824967/1433623     在博文企業實時同步方案—-Sersync介紹中我們詳細介紹了Sersync的原理,設計架構以及…

    Linux干貨 2015-03-30
  • 馬哥教育網絡班21期第六周作業

    詳細總結VIM編輯器的使用并完成以下練習題 1、復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以至少一個空白字符開頭的行的行首加# cp /etc/rc.d/rc.sysinit /tmp vim /tmp/rc.sysinit :%s/^[[:space:]]\+/#/…

    Linux干貨 2016-08-22
  • 第三周作業

    1.列出當前系統上所有已經登錄的用戶名,同一個用戶登錄多次,只顯示一次 [root@localhost ~]# who |awk '{print $1}'|sort -u root 2.取出最后登錄到當前系統的用戶的相關信息 [root@localhost ~]#&nb…

    Linux干貨 2016-12-13
  • 使用haproxy代理LAMP、LNMP 實現WordPress發布

    haproxy簡介 HAProxy是專業的反向代理軟件,它可以支持4層和7層代理服務。其配置包含一下幾個配置段: global:全局設置,通常與操作系統有關 defaults:配置默認參數,可以被frontend、backend、listen組件利用 frontend:接收親請求的前虛擬節點 backend:后端服務集群的配置,一個backend可以對應多個…

    2017-05-17
  • MBR詳解

    前言:     話說,現在買電腦如果預裝win8以上的系統,基本上都是GPT。想當年博主買的電腦預裝的win8磁盤分區樣式就是GPT,而且貌似如果想把win8換win7就得把GPT改成MPR。雖然會在最后提到GPT,不過本文還是主要講解MBR,并通過實驗驗證。 機械硬盤: 主引導記錄(Master Boot Record,縮寫:MBR),…

    Linux干貨 2016-11-14
欧美性久久久久