linux dd

上一篇 / 下一篇  2012-07-10 19:15:15 / 个人分类:Linux

公司所有的服务器都是通过烧dd的方式进行装机的,不是通过安装盘,以前都是生产部门进行烧制,但作为测试了我必须了解产品系统,因此对所谓的烧dd的方式做了研究,在这个过程中了解了linux下的磁盘分区、文件系统、挂载的概念,以及dd的命令和lsof的命令使用,现记录如下备忘
 
1、linux的磁盘分区
   磁盘分区分为主分区和扩展分区;一个系统最多可有4个主分区,扩展分区可以被划分为多个逻辑磁盘分区;一般主分区是用来存放操作系统启动所必须的文件和数据磁盘分区;扩展分区:存放数据和应用程序文件;linux下除了存放文件的分区,还需一个swap--交换分区:用来充当虚拟内存;swap分区的作用:介于内存和磁盘之间的数据,linux暂时存储数据的交换分区,主要用于保留物理内存中暂时不用的数据,在需要时再调进内存,同linux下的虚拟内存。
2、文件系统:linux下的文件结构是单个树状结构,可以用tree命令进行展示;
        linux下的所有设备都必须映射为对应的目录(也就是所谓的挂载),才能 对设备中的文件进行读写操作;磁盘分区是将磁盘物理上分区,而目录是将文件逻辑上进行分区:
1、目录是逻辑分区,磁盘分区是物理上的分区
2、物理分区必须与某个目录映射也就是挂载,这样才能在磁盘上进行文件的读写操作;
3、根目录是所有linux的文件和目录所在的地方,需要挂载上一个磁盘分区。

以下是我们可能存在的一种目录和分区关系:



 
1:目录和分区关系

Q:如何查看分区和目录及使用情况?

–      fdisk查看硬盘分区表

–      df:查看分区使用情况

–      du:查看文件占用空间情况

Q: 为什么要分区,如何分区?

–     可以把不同资料,分别放入不同分区中管理,降低风险。

–     大硬盘搜索范围大,效率低

–     磁盘配合只能对分区做设定

–      /home /var /usr/local经常是单独分区,因为经常会操作,容易产生碎片

 

 

 

3、挂载mount与解除挂载umount

 

外部设备可以通过/dev下查看,通常这个下面的设备会很多,但是常用的设备不多:b开头属性的设备为块设备(有缓冲可以随机存取);c开头属性的设备为字符设备(无缓冲只能顺序读取);还有socket文件等;

 

设备可以手工mount到对应的目录,也可以自动mount,也就是开机自动加载/etc/fstab中的mount项目;解除挂载,可以手工解除挂载umount,也可以自动解除挂载,就是解除/etc/mtab里面的项目

 

网络存储(NFS和SAMBA也是通过mount挂载的设备)

 

4、文件系统的存储:

 

Linux正统的文件系统(ext2ext3)一个文件由目录项、inode和数据块组成

目录项:包括文件名和inode节点号

Inode又称文件索引节点,是文件基本信息的存放地和数据块指针存放地

数据块文件的具体内容存放地。

 

 

Linux正统的文件系统(ext23)将硬盘分区时会划分出目录块、inode Table区块和data block数据区域。一个文件由一个目录项、inode和数据区域块组成。Inode包含文件的属性(如读写属性、owner等,以及指向数据块的指针),数据区域块则是文件内容。当查看某个文件时,会先从inode table中查出文件属性及数据存放点,再从数据块中读取数据。

 

站在2w英尺视图,文件存储结构大概如下:


3:文件存储结构2w英尺视图

 

其中目录项的结构如下(每个文件的目录项存储在改文件所属目录的文件内容里)



 
4:目录项结构 

 

其中文件的inode结构如下(inode里所包含的文件信息可以通过stat filename查看得到):

 


5inode结构

 

以上只反映大体的结构,linux文件系统本身在不断发展。但是以上概念基本是不变的。且如ext2ext3ext4文件系统也存在很大差别,如果要了解可以查看专门的文件系统介绍。

5.软连接、硬链接

软链接和硬链接是我们常见的两种概念:

硬连接:是给文件一个副本,同时建立两者之间的连接关系。修改其中一个,与其连接的文件同时被修改。如果删除其中[color=red]任意一个[/color]其余的文件将不受影响。

软连接:也叫符号连接,他只是对源文件在新的位置建立一个快捷(借用一下wondows常用词),所以,当源文件删除时,符号连接的文件将成为无源之水->仅仅剩下个文件名了,当然删除这个连接,也不会影响到源文件,但对连接文件的使用、引用都是直接调用源文件的。

具体关系可以看下图:

 


5:软链接和硬链接

 

从图上可以看出硬链接和软链接的区别:

1:硬链接原文件和新文件的inode编号一致。而软链接不一样。

2:对原文件删除,会导致软链接不可用,而硬链接不受影响。

3:对原文件的修改,软、硬链接文件内容也一样的修改,因为都是指向同一个文件内容的。

 

 

 

因此删除文件后可以进行通过lsof命令进行恢复;因为有些程序运行时将部分文件加载到了内存里面,在/proc中对应的进程里面存在相应的文件,有时删除仅仅是删除了到inode的链接,因此可以通过lsof命令恢复文件,具体可查询lsof的命令;

 

4、备份命令dd

   dd if=源 f=备份文件;

 

5、losf 文件名或者进程名,可以查看进程打开的文件

 


TAG:

 

评分:0

我来说两句

日历

« 2024-04-16  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 56770
  • 日志数: 25
  • 建立时间: 2012-04-15
  • 更新时间: 2012-08-31

RSS订阅

Open Toolbar