《linux系統及其程式設計》實驗課記錄(六)

weixin_34377065發表於2014-05-20

實驗 6:Linux 檔案系統

實驗環境:

安裝了 Red Hat Enterprise Linux 6.0 可執行系統,並且是成功驗證系統。有另外一個無特權使用者 student,密碼 student 的賬戶存在。

 

實驗目標:

更好的理解 Linux 檔案系統基礎,包括建立和使用連結;使用 locate 和 find 命令查詢檔案;歸檔和壓縮檔案。

 

實驗背景:

每次啟動的時候,你的系統的主硬碟驅動器都開始發出討厭的噪音。

你懷疑硬碟可能要壽終正了,其中的人資料也要跟著陪葬了。由於你之前沒有進行過資料備份的操作,所以你決定手工備份幾個至關重要的檔案。假設/tmp 目錄所在的分割槽位於另一個驅動器,因此你決定暫時把備份存放在那裡。

 

實驗要求:

1、使用 ln 分別建立軟連線、硬連結

2、使用 dh 檢視磁碟用量

3、使用 tar、gzip、bzip2 備份配置檔案

 

實驗詳解:

1、使用口令 student 登入為使用者 student。如果你使用的是圖形化環境,點選[應用程式(Applications)]->[附件(System Tools)]->[終端(Terminal)]來開啟終端:

 

 

2、使用 cp 命令把 usr/share/dict/word 檔案複製到你的主目錄中:

[student@desktopX ~]$ cp /usr/share/dict/words .

注意:此處’.’表示當前目錄。

 

3、檢視/usr/share/dict/words 的相關資訊:

[student@desktopX ~]$ ls /usr/share/dict/words

-rw-r—r-- 1 root root 409305 Sep 30 21:08 linux.words

lrwxrwxrwx 1 root root 11 Sep 30 21:08 word -> linux.word

這裡的檔案 word 是一個符號連結:檔案模式的第一個字元是代表符號連結的’l’;並且檔名包括了顯示連結目標的”-> linux.word”。

 

 

 

4、在主目錄中建立一個符號連結和一個硬連結,都指向你的主目錄中的 words 檔案:

[student@desktopX ~]$ ln -s word soft

[student@desktopX ~]$ ln word hard

 

5、

測試一下新建的連線是否正確地指向 words 中的資料,

我們使用 head 命令顯示檔案中的前 10 行:

 

[student@desktopX ~]$ head hard soft

我們可以看到,兩者輸出相同,就說明我們的連結建立正確。

 

6、詳細檢視兩個檔案的相關資訊,比較兩種連結的區別:

[student@desktopX ~]$ ls -il hard soft

84040 -rw-r--r-- 2 student student 4950996 Aug 22 14:43 hard

84021 lrwxrwxrwx 1 student student 5 Aug 22 15:18 soft -> words

 

[student@desktopX ~]$ stat hard soft

File: `hard'

Size: 4950996

Blocks: 9712

IO Block: 4096 regular file

Device: fd01h/64769d Inode: 84040

Links: 2

Access: (0644/-rw-r--r--) Uid: ( 500/ student) Gid: ( 500/ student)

Access: 2011-08-22 15:22:48.000000000 +0800

Modify: 2011-08-22 14:43:10.000000000 +0800

Change: 2011-08-22 15:17:55.000000000 +0800

File: `soft' -> `words'

Size: 5

Blocks: 2

IO Block: 4096 symbolic link

Device: fd01h/64769d Inode: 84021

Links: 1

Access: (0777/lrwxrwxrwx) Uid: ( 500/ student) Gid: ( 500/ student)

Access: 2011-08-22 15:36:42.000000000 +0800

Modify: 2011-08-22 15:18:35.000000000 +0800

Change: 2011-08-22 15:18:35.000000000 +0800

 

7、使用 df 命令來判斷每個檔案系統上的空餘空間總量:

[student@desktopX ~]$ dh

[student@desktopX ~]$ dh -h

[student@desktopX ~]$ dh -H

比較這三者輸出的差別。

 

8、使用 tar 命令把/etc 的內容打包,儲存在/tmp 中:

[student@desktopX ~]$ su

[student@desktopX ~]$ tar -cvf /tmp/confbackup.tar /etc

 

9、檢視壓縮檔案的屬性,特別注意 tar 包的大小:

[student@desktopX ~]$ ls -lh /tmp/confbackup.tar

 

10、使用 gzip 命令來壓縮歸檔檔案,注意這個新檔案的大小:

[student@desktopX ~]$ cd /tmp

[student@desktopX tmp]$ gzip -v confbackup.tar

[student@desktopX tmp]$ ls -lh confbackup.tar.gz

 

11、給檔案解壓,用 bzip2 重新壓縮,比較壓縮檔案的大小:

[student@desktopX tmp]$ gunzip confbackup.tar.gz

[student@desktopX tmp]$ bzip2 -v confbackup.tar

[student@desktopX tmp]$ ls -lh confbackup.tar.bz2

 

 

12、登出,清除。

 

SUM:

1、ln命令建立軟連結(符號連結)和硬連結。

ln -s 建立軟連結,ln建立硬連結。

詳情見下:

 Linux/Unix 檔案系統中,有所謂的連結(link),我們可以將其視為檔案的別名,而連結又可分為兩種 : 硬連結(hard link)與軟連結(symbolic link)(符號連線),硬連結的意思是一個檔案可以有多個名稱,而軟連結的方式則是產生一個特殊的檔案,該檔案的內容是指向另一個檔案的位置。硬連結是存在同一個檔 案系統中,而軟連結卻可以跨越不同的檔案系統。

2、head命令,檢視檔案前10行內容。

3、一個打包命令,兩個壓縮命令

打包:tar

壓縮:gzip 和 bzip2

壓縮率:tar<gzip<bzip2。

詳情見下:

[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 來作為附檔名啊~
# 上述指令在執行的時候,會顯示一個警告訊息:

Freecode : www.cnblogs.com/yym2013

相關文章