《linux系统及其编程》实验课记录(六)
实验 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