linux 磁盘管理命令dd
分区:fdisk
主分区
扩展分区(最多一个)
逻辑分区:扩展分区分出来的
只有主分区和逻辑分区可格式化
格式化:mke2fs --mke2fs -j -L MYDATA /dev/hda5
-L:label 给分区标签
-j:日志
-b:blk_SIZE,1K,2K,4;默认为4K
-i:inode数量,不能小于block的数量
查看或者修改分区的标签:e2label /dev/hda5 [newlabel]
mount:挂载到目录树上,以某个目录作为进口。原来的数据会被隐藏
mount /dev/hda5 /mnt
挂载光盘:mkdir /media/cdrom
mount /dev/cdrom /media/cdrom
unmout:解除挂载。
umount /dev/hda5或者umount /mnt
光盘卸载后才能取出:umount /dev/cdrom
fuser:如果在使用中,不能卸除挂载,查哪个线程在使用:
fuser /mnt
fuser -km /mnt
dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。
if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file >
of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >
ibs=bytes:指定一个输入块block大小为bytes个字节。
obs=bytes:指定一个输出块block大小为bytes个字节。
bs=bytes:同时设置读入/输出的块block大小为bytes个字节。
cbs=bytes:一次转换bytes个字节,即指定转换缓冲区大小。
skip=blocks:从输入文件开头跳过blocks个块后再开始复制。
seek=blocks:从输出文件开头跳过blocks个块后再开始复制。
注意:通常只用当输出文件是磁盘或磁带时才有效,即备份到磁盘或磁带时才有效。
count=blocks:仅拷贝blocks个块,块大小等于ibs,obs,bs指定的字节数。不指定相当于复制全部
1.将本地的/dev/hdb整盘备份到/dev/hdd
dd if=/dev/hdb of=/dev/hdd
3.将备份文件恢复到指定盘
dd if=/root/image of=/dev/hdb
4.备份/dev/hdb全盘数据,并利用gzip工具进行压缩,保存到指定路径
dd if=/dev/hdb | gzip > /root/image.gz
5.将压缩的备份文件恢复到指定盘
gzip -dc /root/image.gz | dd of=/dev/hdb
6.生成一个大小为5G的空文件
$ dd if=/dev/zero of=tmp.5G bs=1G count=5
7.将file.in的前1M追加到file.out的末尾
$ file_out_size=`du -b file.out | awk '{print $1}'`
$ dd if=./file.in ibs=1M count=1 of=./file.out seek=1 obs=$file_out_size