Linux編程 8 (掛載mount,查看磁盤df du,搜索grep,壓縮zgip,歸檔tar)

一. 掛載存儲媒體

     linux文件系統將全部的磁盤都併入一個虛擬目錄下,當使用新的存儲媒體以前,須要把它放到虛擬目錄下,這項工做稱爲掛載(mounting)mysql

  1.1 mount 命令
    在linux上用來掛載媒體的命令叫作mount. 默認狀況下,mount命令會輸出當前系統上的掛載的設備列表。linux

  1.2 umont
    要除移可移動設備時,不能直接從系統上移除,應該先卸載。使用umont命令(之後在演示)。sql

 

二. 查看磁盤空間

  在linux系統中,監測系統磁盤使用狀況很重要。知道還有多少空間供程序使用。下面介紹磁盤管理經常使用的命令。windows

  2.1 df 命令
    使用df -h參數會輸出系統磁盤空間信息,已易讀形式顯示,以下圖所示:
      app

  2.2 du 命令
    使用du -h命令將顯示當前目錄的磁盤使用狀況,肯定佔用了多少存儲空間,是否有超大文件。以下圖所示,顯示mysql 的數據目錄磁盤佔用狀況。
      工具

 

三 數據處理

  3.1  搜索數據 grep
    在前面章節介紹ps 命令查看進程時有說過grep命令。下面演示在mysql錯誤日誌文件中,找出含有Warning關鍵詞的信息。以下圖所示:
      
    使用grep -c參數顯示匹配數,下面匹配Warning關鍵詞數有50個。以下圖所示 :
      spa

    下面使用grep在整個系統中搜索一某字符串,下面查找my.cnf 的字符串,以下所示:3d

    find .|xargs grep -ri "my.cnf"

    

  3.2  壓縮數據 gzip
    在windows中常常有用壓縮文件,好比zip文件,壓縮成佔用更少空間的小文件。在linux中壓縮工具包括:bzip1擴展名爲.bz2; compress擴展名爲.Z; gzip擴展名爲.gz; zip擴展名爲.zip。經常使用的壓縮工具是gzip工具。
    gzip:用來壓縮文件,gzcat:用來查看壓縮過的文本文件內容。gunzip:用來解壓文件。
    下面使用gzip壓縮mariadb.log文件, 注意壓縮完後,原文件不存在了,以下圖所示:
      
    下面使用gunzip解壓mariadb.log.gz包,以下圖所示:
      日誌

    面對比壓縮前和壓縮後的字節佔用狀況,以下圖所示:
      code

   3.3 歸檔數據 tar
    上面介紹的 zip命令能夠很好地將數據壓縮和歸檔進單個文件,但在linux中有最普遍使用的歸檔工具是tar命令。

    下面來看下tar命令的格式:
    tar function [options] object1 object2 ..

    在tar命令中包括功能參數和選項參數二部份。在使用時,一般是功能參數和選項參數一塊兒使用。

功能

描述

-A  --concatenate

將一個已有的tar歸檔文件追加到另外一個已有tar歸檔文件

-c  --create

建立一個新的tar歸檔文件

-d  --delete

從已有的tar歸檔文件中刪除

-r  --append

追加文件到已有tar歸檔文件末尾

-t  --list

列出已有tar歸檔文件的內容

-u  --update

將比tar歸檔文件中已有的同名文件新的文件追加到該tar歸檔文件中

-x  --extract

從已有tar歸檔文件中提取文件

選項

描述

-C   dir

切換到指定目錄

-f   file

輸出結果到文件

-j  

將輸出重定向給bzip2命令來壓縮內容

-p

保留全部文件權限

-v

在處理文件時顯示文件

-z

將輸出重定向給gzip命令來壓縮內容

    下面來演示tar命令以及參數(功能和選項)的組合,以/var/log/mariadb下的mariadb.log和mariadb.log2爲例。

    (1) 使用 tar -cvf 組合建立一個名爲mariadb.tar的歸檔空文件包,將mariadb2.log文件添加到mariadb.tar中,以下圖所示:
      
    (2) 使用tar -tf命令來查看歸檔文件包中的內容,以下圖所示:
      
    (3) 使用tar -xvf命令來提取歸檔文件包中的內容,下面演示先將mariadb2.log刪除,再從mariadb.tar中取出到當前目錄下(注意若是歸檔的不是文件,而是一個目錄時,提取將是把歸根的目錄,在當前目錄下從新建立)。
      
      下面在列出當前目錄文件,能夠看到mariadb2.log從歸檔中提取出來了。
      

    (4) 使用tar -zxvf來解壓提取文件名以.tgz結尾的文件(下載了開源軟件,通常都是以.tgz結尾的文件)。好比咱們下載的mysql二進制包就是tar.gz文件,它是通過gzip壓縮過的tar文件。以下圖所示:
      

       通常都使用tar -zxvf命令來解壓並提取文件
        [root@hsr tool]# tar -zxvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gzcf 

    總結:對於tar的功能和選項還有不少組合,例如上面能夠再將mariadb.log也歸檔到mariadb.tar中,這樣mariadb.tar文件中就包含了mariadb.log和mariadb2.log。例如使用-d功能參數從tar歸檔包中刪除一個文件。 使用tar能夠輕鬆將整個目錄都歸檔到單個tar文件包中,方便把數據遷移到另外一個系統上。

相關文章
相關標籤/搜索