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

第十四单元

linux中的设备访问

一 设备访问

1 设备识别

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

/dev/cdrom:光驱

/dev/mapper/*:虚拟设备

2.设备的使用

查看设备:

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

5029a2cb9693ef9338d59c0c450bbc27.png

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

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

cbfe0cee106ed91be137b69a8d0516f6.png

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

399fff484262e437590978bd905719aa.png

设备挂载:

mount设备挂载点

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

设备卸载:

umount    设备|挂载点

01f4773ac0fb1b143a69e228951db85b.png

如出现以下情况:

[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          设备|挂载点

87642cd9d045c3864f4a846b5bd65d9a.png

格式化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

1888bf3b330d41605b2bab11607f90fd.png

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

a2fb886efa6b70675df8f956b0394597.png

三 文件查找

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

updatedb                : 更新文件数据库

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

bfa556e3f0974234ae1b264b713185ef.png

2 find

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

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

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

45c024da274b3a78a93322ec1298533c.png

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

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

daea1a39355ed233af407cd1582dc4d1.png

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

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

375c33d46afe7ece19bab7f913d00f30.png

-name            :名称

-not条件

-user            :所有人

-group           :所有组

-size            :大小

-maxdepth        :最大深度

-mindepth        :最小深度

8bb8e745a3a8e1089c1f12aaa65325e6.png

-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的

3e5a0e6dca28ddffafc0acb098d2b710.png

-typef:文件

d:目录

c:字符设备

b:块设备

s:套节字

l:链接

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

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

9ac802a1d0bae82a138ff532f25c4715.png

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

find  /  -group  mail  -a  -type  f

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

9827a204211699b47b4ad3073fda464e.png

f27ce4f41880482d7cfc59fd28db6002.png

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

0b546767594666821fa906fb08b40557.png

/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

8b2f94424926e658dcb0dd309b1218ca.png

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

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

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

71dc942495533cfc611a91d7289f9823.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值