首页 > 代码库 > 第十四单元 linux中的设备访问

第十四单元 linux中的设备访问

第十四单元

 

linux中的设备访问

 

设备访问

1 设备识别

/dev/xdxn:硬盘设备/dev/sda1

/dev/cdrom:光驱

/dev/mapper/*:虚拟设备

 

2.设备的使用

查看设备:

fdisk -l:查看真实存在的设备

技术分享

cat /proc/partitions:系统能够识别的设备

blkid:系统能够挂载使用的设备id

技术分享

df:查看设备被系统使用的情况

技术分享 

设备挂载:

mount 设备挂载点

mount /dev/sdb1/mnt#把系统中第二块硬盘的第一个分区挂载到/mnt目录上

 

 

设备卸载:

umount    设备|挂载点

技术分享 

 

如出现以下情况:

[root@foundation78 mnt]# umount /mnt/

umount: /mnt: target is busy.

        (In some cases useful info about processes that use

         the device is found by lsof(8) or fuser(1))

解决:

1 fuser -vm 设备|挂载点:-v显示详细信息,-m扫描设备

2 lsof          设备|挂载点

技术分享 

 

格式化u盘:

mkfs.vfat  /dev/sdb

 

软硬链接

1 硬链接:1个节点对应多个数据块。如果我们删除硬链接文件的源文件,硬链接文件仍然存在,而且保留了源文件的内容。

 

2 软链接:多个节点对应一个数据块。软链接可以看成一个文本文件,它的内容是保存目标文件名的路径地址。如果,把源文件删除,软链接文件就不存在了

 

通俗一点可以将硬链接当成原文件的副本,他显示跟原文件一样的大小但事实上却不占任何空间,软链接可以理解成windows的快捷方式

 

ls    -i                                :查看文件节点号


ln    -s   /file  /file1:软链接


ln  /file  /file1:硬链接

 

实验1 硬链接:在/mnt下建立文件westos ,文件内容为westos linux ,查看该文件的节点号,和被系统记录的次数,发现为1,然后建立硬链接,ln   /mnt/westos  /opt/  , 再查看/opt/westos 信息 ,发现被系统记录的次数变成2,rm  -fr  /opt/westos  后又变成1   

技术分享

实验2 软链接:删除源文件,再查看软链接文件是否存在

技术分享 

 

 

文件查找

 

1 locate filename         : 在文件数据库中搜索filename信息

  updatedb                : 更新文件数据库

建立一个新文件后,要用locate 搜索该文件信息,则要先updatedb更新文件数据库

技术分享 

2 find

find 查找位置-条件条件值 -exec 动作 {} \;  :-exec对匹配到的文件进行操作,后面跟随所要执行的命令,{}指匹配到的文件,\; 是格式

 

1:对/mnt下所有其他用户有写权限的修改权限,使其他用户不具有写权限

find  /mnt  -perm  -022  -exec  chmod  o-w  {}  \;

 技术分享

2:将/etc/下所有名字以.conf结尾的都备份到/mnt/下

find  /etc/  -name  *.conf  -exec   cp  {}  /mnt/   \;

 技术分享

3:将/下文件所有组为mail的文件复制到/mnt/mailbackup/,只要正确输出

find  /  -group  mail  -a  -type  f  2> /dev/null  -exec  cp  -p  {}  /mnt/maibackup/  \;

 技术分享

 

-name            :名称

-not条件     

-user            :所有人

-group           :所有组

-size            :大小

-maxdepth        :最大深度

-mindepth        :最小深度

技术分享

-a               :并且

-o               :或者

                -perm            :权限

1:find  /mnt/   -perm  444  :找到/mnt/ 下权限为444的

find  /mnt/  -perm  /444     :找到/mnt/下权限满足其中一个即可

find  /mnt/  -perm  -444     :找到/mnt/下满足u有4,g有4,o有4的

 技术分享      

-typef :文件

d :目录

c :字符设备

b :块设备

s :套节字

l :链接

2:查找/下其他用户有写权限,且类型为不是链接:

find  /  -perm  -002  -a  -not  -type l

 技术分享

3:查找/下文件所有组为mail的文件

find  /  -group  mail  -a  -type  f

若是不想要错误输出:2> /dev/null

 技术分享

 技术分享


find /mnt -user student

find /mnt -group linux

find /mnt -user student -a -group linux

find /mnt -user student -o -group linux

find /mnt -user student -a -group linux

find /mnt -user student

find /mnt -user student -a -not -group linux

技术分享 

/dev/zero是一个特殊的设备文件,它代表一个永远输出0的设备文件,使用它作输入可以得到全为空的文件。因此可用来创建新文件和以覆盖的方式清除旧文件。

使用dd命令将从设备中创建一个10k ,20k ,30k大小(bs决定每次读写1024字节,count定义读写次数为10次),但是内容全为0的文件

 

dd if=/dev/zero of=/mnt/file1 bs=1024 count=10    

dd if=/dev/zero of=/mnt/file2 bs=1024 count=20

dd if=/dev/zero of=/mnt/file3 bs=1024 count=30

技术分享 

find /mnt -size 10k                   :找出/mnt下大小为10k的文件

find /mnt -size -10k                  :找出/mnt下大小小于10k的文件

find /mnt -size +10k                  :找出/mnt下大小大于30k的文件

技术分享 

 

 

 

 

 

 

 


第十四单元 linux中的设备访问