Chinaunix首页 | 论坛 | 博客
  • 博客访问: 903184
  • 博文数量: 113
  • 博客积分: 3160
  • 博客等级: 少校
  • 技术积分: 1801
  • 用 户 组: 普通用户
  • 注册时间: 2011-08-19 10:09
文章分类

全部博文(113)

分类: LINUX

2012-05-30 16:42:54

1 chomd : 设置文件或者目录的权限

 

 

 

字符设定法chmod [ugoa] [+ | - | =] filename

 

 

u:代表用户;g:同组用户;o:其它用户;a:所有用户

+:表示添加权限;-:表示减少权限;=:设置权限为

 

 

数字设定法

 

 

你查看一个文件的权限时,会发现诸如-rwx-wx--x这种形式来表示文件的权限。

 

 

其中第一个如果为d表示目录,-则为文件;从第二个字符开始连续9个字符分别代表用户,用户组和其他人的权限,每个有三个字符rwx组成,其中r代表读权限,w代表写权限,x代表执行权限。所以,每个数字对应一组用户的权限,该数为八进制,它的二进制表示形式的高位表示读权限,中间位为写权限,低位为执行权限,1表示具有权限,0则没有。因此4表示具有读权限,2表示具有写权限,1表示具有执行权限。

因此设定一个文件对所有人具有读写可执行权限,可用下面的命令:

 

chmod 777 filename

 

 

 

2 dd:复制和转换文件。

 

 

dd主要用在磁带或者全盘驱动器之类的设备之间复制文件。同时,dd可以在不同的操作系统之间传递信息,而其它方法都不行。

 

主要参数

 

if=filename      (input file)filename而非标准输入中读取。也可以用设备名来替换filename,使得从设备上读取文件。

 

of=filename      (output file)写道指定文件或者设备。

 

bs=n (block size)每次读写n个字节,该参数将覆盖ibsobs的设置

 

cbs=n (conversion block size)当进行复制的过程中要数据转换的时候,每次转换n个字节

 

ibs=n      (inputblock size)每次读n个字节

 

obs=n      (output block size)每次写n个字节

 

conv=type[,type...]  按照命令行上types给出的顺序,转换被复制的数据。

 

count=numblocks      将dd要复制的块数限制在numblocks之内。每块大小是由ibs参数指定的字节数。

 

seek=numblocks      开始写以前,跳过输出的numblocks个块,每个块的大小由参数obs指定。

 

skip=numblocks      开始复制以前,跳过输入夫人numblocks个块,每个块的大小由参数ibs指定。

 

type类型

 

notrunc 在写文件之前,不进行截断文件操作

lcase 复制数据的时候,将大写字母转换为小写字母。

ucase 将小写字母转换为大写字母。

noerror 如果发生了一个错误,dd通常会终止。但是该转换允许dd继续处理;当用户希望从坏的介质中读取数据的时候,该转换非常有用。

 

 

 

应用实例:

 

 

粉碎文件

 

可以利用dd/dev/urandom文件读取输入,写道文件中,从而实现粉碎文件。多次写入可以提高安全性。

 

 

第一步,使用ls -l显示文件secret的大小

ls -l secret

-rw-rw-r-- 1 lishuo lishuo 7985  5月 29 19:07 secret

 

 

第二步,使用dd粉碎文件,块大小为1count为文件secret的大小。参数conv=notrunc确保恰好覆盖文件中的数据,而不覆盖磁盘的其它位置。

dd if=/dev/urandom of=secret bs=1 count=7985 conv=notrunc

记录了7985+0 的读入

记录了7985+0 的写出

7985字节(7.9 kB)已复制,0.0297408 秒,267 kB/

 

 

第三步,使用rm删除文件secret(可以在此步之前多次执行覆盖操作,以提高安全性)

rm secret

 

 

复制磁盘

 

使用dd可以将某些文件复制到软盘中。

阅读(2007) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~