A. tar壓縮,日誌,FTP
老師筆記
命令詳解
1、目前計算機系統中都是用bytes(位元組)單位來計量
2、事實上計算機最小的計量單位是bits(位)
3、1byte=8 bits
4、假設byte可以看成底下到模樣
5、8個空格就是8個位,而每個空格可以是0或1,現在假設我們只存入了一個1,那會剩餘到7個空位,默認情況下這7個空位無法在寫入數據。
6、但壓縮技術就是把這些沒用到到空間提出來,以讓檔案佔用到空間變小
重點!
linux 系統不以擴展名為文件類型識別的依據,這里的擴展名只是讓用戶易於分辨。
常見命令工具
gzip, bzip2 以及 xz ,這些都只能對單個文件進行壓縮,不能操作目錄。
tar 可以對一個到多個文件或者一個目錄進行打包成一個單一的文件,但單獨使用 tar 命令時,只是打包,不壓縮。
後來, GNU 計劃 中,將整個 tar 與壓縮的功能結合在一起,如此一來提供使用者更方便並且更強大的壓縮與打包功能!
示例: 備份系統的配置文件,並且保留源文件的許可權和屬性信息
查看
打包壓縮的時候可以排除一個或者多個文件或者目錄
老師筆記
記錄系統活動信息有幾個文件,他們分別記錄了不同的信息。
例如:何時、何地 (來源 IP)、何人 (賬戶或者服務名稱)、做了什麼動作 。
換句話說就是:記錄系統在什麼時候由哪個程序做了什麼樣的行為時,發生了何種的事件等等
其實,不止系統有日誌,在系統上運行的很多應用程序(軟體) 都有自己的日誌記錄。比如 MySQL 默認的日誌是 /var/log/mysqld.log
這些日誌是我們排除的首要入手點,假如系統或者服務出現了錯誤,要第一時間分析日誌中的報錯信息。而不是去到網上搜索報錯信息。因為大部分時候,一個報錯信息,有可能會有多種情況導致,所以要結合自己的系統環境分析具體的情況。
CentOS 使用 rsyslog.service 這個服務來統一管理這些系統日誌文件。
既然是服務,就會有配置文件.
配置文件用於設置
比如:
Linux 核心的 syslog 認識的服務類型主要有下面這些:
Linux 核心的 syslog 定義的日誌級別:
編輯 /etc/rsyslog.conf 文件
保存退出後
重啟服務
通過配置 /etc/rsyslog.conf 可以把一個 Linux 主機配置成一台 日誌伺服器,這樣其他 Linux 主機的日誌,除了記錄在自己的本地外,還會發送的這台日誌到伺服器上一份。
編輯 /etc/rsyslog.conf
重啟服務
檢查監聽埠
編輯 /etc/rsyslog.conf
什麼是日誌輪轉,為什麼要輪轉
日誌輪轉也叫日誌的切割,通俗來講就是對日誌文件進行大小的控制。
Linux 系統通常會長時間的不停機運行,這樣就會產生好多信息記錄到不同的日誌中。隨著時間的推移,日誌的容量自然會越來越大,那問題就來了,硬碟的空間是有限的,那為了控制日誌文件的大小,就需要對日誌文件進行控制。
同時是把目前的日誌文件改名,緊接著創建一個新的日誌文件,名稱和原來的一樣,重啟服務進程,讓其向新的日誌文件中寫日誌。
logrotate 負責對系統日誌的輪轉。
通過定時任務每天都會執行一次。
logrotate 的主要功能就是將舊的日誌文件改成舊文件, 並且重新創建一個新的空的文件來記錄。
如下圖:
/etc/logrotate.conf 的默認值
假如,想對某個日誌文件實現輪轉,建議在 /etc/logrotate.d/ 目錄中添加子配置文件
比如
在 目錄下編輯一個文件
可以使用 logrotate 命令測試
老師筆記
B. linux下tar的打包和解壓如何操作
tar是在Linux中使用得非常廣泛的文檔打包格式。它的好處就是它只消耗非常少的CPU以及時間去打包文件,但它僅僅只是一個打包工具。
下面是如何解包的命令:
1# tar -xvf archive_name.tar.gz
上面這個解包命令將會將笑碰文檔解開在當前目錄下面。當然,你也可以用這個命令來更改解包的路徑:
1# tar -xvf archive_name.tar -C /tmp/extract_here/
tar.gz
這種格式是我使用得最多的壓縮格式。它在壓縮時不會佔用太多CPU的,而且可以得到一個非常理想的壓縮率。可以使用下面的命令去壓縮一個目錄:
1# tar -zcvf archive_name.tar.gz directory_to_compress
解壓縮:
1# tar -zxvf archive_name.tar.gz
上面這個解包命令將會將文檔解壓在當前目錄下面。當然碰春談,你也可以用這個命令來更改解包的路森滾徑:
# tar -zxvf archive_name.tar.gz -C /tmp/extract_here/
C. tar命令中參數的區別
首先區分 .tar.gz是一答租個壓縮包,啟舉禪.tar只是打包而沒有壓縮。
然後
tar -cvf 123.tar etc/ 打包一個tar
tar -xvf 123.tar 解開一個tar
tar -zcvf 123.tar.gz etc/ 打包壓縮一個悄塵 tar.gz
tar -zxvf 123.tar.gz 解壓一個tar.gz
加不加橫杠影響不是很大
D. linux下tar打包的壓縮率問題
1、只打包不壓縮
tar cvf a.tar *
2、gzip演算法
tar zcf a.gz *
3、bzip2演算法
tar jcf a.bz2 *
4、也可以用rar
rar a all *
E. linux打包不壓縮的格式
linux打包不壓縮的格式是文件夾格式。根據相關資料顯示,linux打包不壓縮只有一種就是攔氏打包到文件夾,並且可以在不壓縮的情燃衡野況下存皮喊儲文件。
F. linux系統下常見的軟體包格式中,打包不壓縮的格式為
rar:Windows 環境下用的比較多的壓縮,比較著名的GUI工具是winrar等。linux系統下中裂悔常見的軟體包格式中,打包不壓縮的格式為:rar:Windows環境下用的比較多的壓縮,比較著名的GUI工具是winrar。tar:Linux系統下的打包工具,只打包,不壓縮。gz:即gzip,通常只能壓縮一個文件。與tar結合起來就可以實現先打源談包,再壓縮。tgz:即gz。先用tar打包,然後再用gz壓縮得到的文賣正件。
G. linux下的tar.gz和tar.bz2包有什麼區別
tar是打包軟體,不壓縮。
.gz是用tar打包的同時用gzip壓縮,比如tar zcvf test.tgz /帆和清禪var
.bz2是用tar打包的同時用bunzip2壓縮:tar jcvf test.tbz2 /var
bz2的壓縮比要比態正盯gzip的壓縮比高出一倍以上。
H. linux下tar的打包使用
分析如下:
一、Linux下的tar命令詳解
1、tar -c:建立壓縮檔案
2、tar -x:解壓
3、tar -t:查看內容
4、tar -r:向壓縮歸檔文件末尾追加文件
5、tar -u:更新原壓縮包中的文件
二、壓縮
1、tar -cvf jpg.tar *.jpg// 將目錄里所有jpg文件打包成jpg.tar
2、tar -czf jpg.tar.gz *.jpg// 將目錄里所有jpg文件打包成jpg.tar後,並且將其用gzip壓縮,生成一個gzip壓縮過的包,命名為jpg.tar.gz
3、tar -cjf jpg.tar.bz2 *.jpg// 將目錄里所有jpg文件打包成jpg.tar後,並且將其用bzip2壓縮,生成一個bzip2壓縮過的包,命名為jpg.tar.bz2
4、tar -cZf jpg.tar.Z *.jpg// 將目錄里所有jpg文件打包成jpg.tar後,並且將其用compress壓縮,生成一個umcompress壓縮過的包,命名為jpg.tar.Z
5、rar a jpg.rar *.jpg// rar格式的壓縮,需要先下載rar for linux
6、zip jpg.zip *.jpg// zip格式的壓縮,需要先下載zip for linux
三、解壓
1、tar -xvf file.tar// 解壓 tar包
2、tar -xzvf file.tar.gz// 解壓tar.gz
3、tar -xjvf file.tar.bz2// 解壓 tar.bz2
4、tar -xZvf file.tar.Z// 解壓tar.Z
5、unrar e file.rar// 解壓rar
6、unzip file.zip// 解壓zip
四、具體操作方法:
1、如圖看到的示例,用tar命令來打包這些文件以及目錄。(文件目錄以自己實際情況為准,這里用做參考用例)
I. linux tar打包、解包命令
解壓
語法:tar [主選項+輔選項] 文件或者目錄
使用該命令時,主選項是必須要有的,它告訴tar要做什麼事情,輔選項是輔助使用的,可以選用。
主選項:
c 創建新的檔案文件。如果用戶想備份一個目錄或是一些文件,就要選擇這個選項。相當於打包。
x 從檔案文件中釋放文件。相當於拆包。
t 列出檔案文件的內容,查看已經備份了哪些文件。
特別注意,在參數的下達中, c/x/t 僅能存在一個!不可同時存在!因為不可能同時壓縮與解壓縮。
輔助選項:
-z :是否同時具有 gzip 的屬性?亦即是否需要用 gzip 壓縮或解壓? 一般格式為xx.tar.gz或xx. tgz
-j :是否同時具有 bzip2 的屬性?亦即是否需要用 bzip2 壓縮或解壓?一般格式為xx.tar.bz2
-v :壓縮的過程中顯示文件!這個常用
-f :使用檔名,請留意,在 f 之後要立即接檔名喔!不要再加其他參數!
-p :使用原文件的原來屬性(屬性不會依據使用者而變)
--exclude FILE:在壓縮的過程中,不要將 FILE 打包!
範例:
範例一:將整個 /etc 目錄下的文件全部打包成為 /tmp/etc.tar
[root@linux ~]# tar -cvf /tmp/etc.tar /etc<==僅打包,不壓縮!
[root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc<==打包後,以 gzip 壓縮
[root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc<==打包後,以 bzip2 壓縮
特別注意,在參數 f 之後的文件檔名是自己取的,我們習慣上都用 .tar 來作為辨識。
如果加 z 參數,則以 .tar.gz 或 .tgz 來代表 gzip 壓縮過的 tar file ~
如果加 j 參數,則以 .tar.bz2 來作為附檔名啊~
上述指令在執行的時候,會顯示一個警告訊息:
『tar: Removing leading `/" from member names』那是關於絕對路徑的特殊設定。
範例二:查閱上述 /tmp/etc.tar.gz 文件內有哪些文件?
[root@linux ~]# tar -ztvf /tmp/etc.tar.gz
由於我們使用 gzip 壓縮,所以要查閱該 tar file 內的文件時,
就得要加上 z 這個參數了!這很重要的!
範例三:將 /tmp/etc.tar.gz 文件解壓縮在 /usr/local/src 底下
[root@linux ~]# cd /usr/local/src
[root@linux src]# tar -zxvf /tmp/etc.tar.gz
在預設的情況下,我們可以將壓縮檔在任何地方解開的!以這個範例來說
我先將工作目錄變換到 /usr/local/src 底下,並且解開 /tmp/etc.tar.gz
則解開的目錄會在 /usr/local/src/etc ,另外,如果您進入 /usr/local/src/etc
則會發現,該目錄下的文件屬性與 /etc/ 可能會有所不同喔!
範例四:在 /tmp 底下,我只想要將 /tmp/etc.tar.gz 內的 etc/passwd 解開而已
[root@linux ~]# cd /tmp
[root@linux tmp]# tar -zxvf /tmp/etc.tar.gz etc/passwd
我可以透過 tar -ztvf 來查閱 tarfile 內的文件名稱,如果單只要一個文件,
就可以透過這個方式來下達!注意到! etc.tar.gz 內的根目錄 / 是被拿掉了!
範例五:我要備份 /home, /etc ,但不要 /home/dmtsai
[root@linux ~]# tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc
另外:tar命令的C參數
$ tar -cvf file2.tar /home/usr2/file2
tar: Removing leading '/' from members names
home/usr2/file2
該命令可以將/home/usr2/file2文件打包到當前目錄下的file2.tar中,需要注意的是:
使用絕對路徑標識的源文件,在用tar命令壓縮後,文件名連同絕對路徑(這里是home/usr2/,根目錄'/'被自動去掉了)一並被壓縮進來
。使用tar命令解壓縮後會出現以下情況:
$ tar -xvf file2.tar
$ ls
…… …… home …… ……
解壓縮後的文件名不是想像中的file2,而是home/usr2/file2。
$ tar -cvf file2.tar -C /home/usr2 file2 該命令中的-C dir參數,將tar的工作目錄從當前目錄改為/home/usr2,將file2文件(不帶絕對路徑)壓縮到file2.tar中。注意
:-C dir參數的作用在於改變工作目錄,其有效期為該命令中下一次-C dir參數之前
。
使用tar的-C dir參數,同樣可以做到在當前目錄/home/usr1下將文件解壓縮到其他目錄,例如:
$ tar -xvf file2.tar -C /home/usr2
而tar不用-C dir參數時是無法做到的:
$ tar -xvf file2.tar /home/usr2
tar: /tmp/file: Not found in archive
tar: Error exit delayed from previous errors
J. linux中打包和壓縮有什麼區別
打包就是把若干文件或文件夾放到一個tar文件中,但是不會壓縮文件大小。
壓縮就是在打包的基礎上壓縮文件的大小。