实验 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

《linux系统及其编程》实验课记录(六)的更多相关文章

  1. Linux系统初学-第三课 Linux网络配置1

    Linux系统初学-第三课 Linux网络配置 1.动态IP配置 配置文件路径 /etc/sysconfig/network-scripts/ ls查看网卡eth0,其中HWADDR值得获取:ifco ...

  2. 《linux系统及其编程》实验课记录(五)

    实验 5:权限的设置和更改 实验环境: 安装了 Red Hat Enterprise Linux 6.0 可运行系统,并且是成功验证系统.有另外一个无特权用户 student,密码 student 的 ...

  3. Linux 系统应用编程——进程基础

    一.Linux下多任务机制的介绍 Linux有一特性是多任务,多任务处理是指用户可以在同一时间内运行多个应用程序,每个正在执行的应用程序被称为一个任务. 多任务操作系统使用某种调度(shedule)策 ...

  4. 云服务器--linux系统操作命令以及安装ngnix记录,以及手动部署本地文件

    1.控制台登陆服务器,需要首先知道服务器ip和密码,,命令是 ssh root@1.1.1.1(服务器IP),然后输入密码登入服务器 2.查看linux 版本的系统命令是 cat /etc/redha ...

  5. linux系统串口编程实例

    在嵌入式开发中一些设备如WiFi.蓝牙......都会通过串口进行主机与从机间通信,串口一般以每次1bit位进行传输,效率相对慢. 在linux系统下串口的编程有如下几个步骤,最主要的是串口初始化! ...

  6. Linux系统shell编程自学_第一章基础

    第一章 基础shell的优势在于处理操作系统底层的业务,Python,php的优势在于开发运维工具,web界面的管理工具以及web业务开发.处理一键安装.优化.报警脚本shell又叫命令解释器,它能识 ...

  7. 《linux系统及其编程》实验课记录(一)

    实验 1:登录和使用基本的 Linux 命令 实验环境: 安装了 Red Hat Enterprise Linux 6.0 可运行系统,并且是成功验证系统. 有另外一个无特权用户 student,密码 ...

  8. 《linux系统及其编程》实验课记录(四)

    实验4:组织目录和文件 实验目标: 熟悉几个基本的操作系统文件和目录的命令的功能.语法和用法, 整理出一个更有条理的主目录,每个文件都位于恰当的子目录. 实验背景: 你的主目录中已经积压了一些文件,你 ...

  9. 《linux系统及其编程》实验课记录(二)

    实验 2:获取对使用命令的帮助 实验环境: 安装了 Red Hat Enterprise Linux 6.0 可运行系统,并且是成功验证系统.有另外一个无特权用户 student,密码 student ...

随机推荐

  1. Struts2 Action 动态传参数

    Struts2的两个Action之间传参的问题. 需求功能是这样:Action1 获取数据库配置内容,得到相应Model的 动态URL ,这里的URL 有的是Action有的是JSP页面. 1.使用r ...

  2. AJAX 页面数据传递

    $.ajax({ //一个Ajax过程 type: "post", //以post方式与后台沟通 url: "personstockajax.php", //与 ...

  3. java对txt文件内容追加

    package com.test; import java.io.FileOutputStream; /** * 对txt文件在文本追加内容 * @author Wdnncey * */ public ...

  4. nginx配置多域名映射方法(本地hosts)

    本地测试网站的时候如果不想用localhost/xxxx的形式访问,可能就需要修改hosts文件来映射了,但是一个网站还好,假如有多个网站的话就不行了. 这时就需要配置多域名映射 比如hosts中配置 ...

  5. 使用socket方式连接Nginx优化php-fpm性能

    Nginx连接fastcgi的方式有2种:TCP和unix domain socket 什么是Unix domain socket?-- 维基百科 Unix domain socket 或者 IPC ...

  6. ubuntu14.04 archive sources.list

    deb http://archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse deb http://archive. ...

  7. C#值数值类型转换

    1.十进制转16进制 string result=number.ToString("X2"); >>0A //X2表示大写2位 2.字符串转数值类型 "); ...

  8. ls常用选项总结

    参考: http://billie66.github.io/TLCL/book/index.html ls - List directory contents 选项 长选项 描述 -a --all 列 ...

  9. 算法手记 之 数据结构(堆)(POJ 2051)

    一篇读书笔记 书籍简评:<ACM/ICPC 算法训练教程>这本书是余立功主编的,代码来自南京理工大学ACM集训队代码库,所以小编看过之后发现确实很实用,适合集训的时候刷题啊~~,当时是听了 ...

  10. 6.nodejs权威指南--进程

    1. 进程 var net = require('net'); var cluster = require('cluster'); cluster.setupMaster({ exec:'child. ...