您的位置:首页 > 其它

磁盘管理-软硬链接及创建设备文件

2016-06-10 10:17 211 查看
磁盘管理:
常见的机械硬盘:
U盘,光盘,软盘,硬盘,磁带
硬链接:只能对文件使用。原因:避免循环链接。
不能跨文件系统。
创建硬连接会增加文件被硬链接的次数
符号链接:可应用于目录
可以跨文件系统
不增加被链接次数
其大小为指定的路劲所包含的字符个数

创建硬连接
ln:
-s创建软连接
-v
复制etc/rc.d/rc.sysinit文件到/tmp/abc下
并在qwe目录下创建rc.sysinit文件的硬链接,为sy

[root@localhost ~]# mkdir /tmp/abc
[root@localhost ~]# cp/etc/rc.d/rc.sysinit /tmp/abc
[root@localhost ~]# cd /tmp/abc
[root@localhost abc]# ls -l
总用量 20
-rwxr-xr-x. 1 root root 19914 6月 9 18:06 rc.sysinit
[root@localhost abc]# mkdir qwe
[root@localhost abc]# ln rc.sysinit /tmp/abc/qwe/sy
[root@localhost abc]# ls -l
总用量 24
drwxr-xr-x. 2 root root 4096 6月 9 18:10 qwe
-rwxr-xr-x. 2 root root 19914 6月 9 18:06 rc.sysinit
[root@localhost abc]# cd qwe
[root@localhost qwe]# ls -l
总用量 20
-rwxr-xr-x. 2 root root 19914 6月 9 18:06 sy

硬链接的inode号一样
[root@localhost qwe]# ls -i
394321 sy
[root@localhost qwe]# cd ..
[root@localhost abc]# ls -i
394328 qwe 394321 rc.sysinit
[root@localhost abc]#

删除rc.sysinit. 后硬链接sy还在inode号也没变
[root@localhost abc]# rm -rf rc.sysinit
[root@localhost abc]# cd qwe
[root@localhost qwe]# ls -i
394321 sy

对硬链接来说,只要链接数大于等于1 此文件就还存在

创建a的软连接为a2
[root@localhost tmp]# touch a
[root@localhost tmp]# mkdir abc
[root@localhost tmp]# ln -sv /tmp/a /tmp/abc/a2
"/tmp/abc/a2" ->"/tmp/a"
[root@localhost tmp]# ls -il
总用量 4
393219 -rw-r--r--. 1 root root 0 6月 9 20:38 a
394308 drwxr-xr-x. 2 root root 4096 6月 9 20:38 abc
[root@localhost tmp]# cd abc
[root@localhost abc]# ls -il
总用量 0
394321 lrwxrwxrwx. 1 root root 6 6月 9 20:38 a2 -> /tmp/a
软连接inode 不一样,硬链接数不变,在创建软连接的时候最好写绝对路径 ,不然容易出错。

删除源文件后链接失效
[root@localhost abc]# cd ..
[root@localhost tmp]# rm -rf a
[root@localhost tmp]# cd abc
[root@localhost abc]# ls -li
总用量 0
394321 lrwxrwxrwx. 1 root root 6 6月 9 20:38 a2 -> /tmp/a
[root@localhost abc]#

修改源文件名称或者更改源文件路劲 软链接皆失效

du 显示目录大小
-s 值显示目录大小,不显示子目录大小
-h单位换算

df 显示磁盘块个数

-h 单位换算, 查看磁盘空间大小
-i inode,显示多少inode可以用
-P –i 不换行显示
------------------------------------------------------------------------------------------
设备文件:
b:按块为单位,随机访问的设备:
c:按字符为单位, 线性访问的设备:

b:硬盘
c:键盘

/dev
主设备号 标示设备类型(major number)
次设备号 标示同一种类型中的多个不同设备 (minornumber)

mknod 创建设备文件

mknod [OPTION]... NAME TYPE [MAJOR MINOR]

-m MODE指定设备权限

创建一个设备文件,文件名为mydev主设备号为66 次设备号为0,文件类型为字符设备
[root@localhost ~]# mknod mydev b 66 0
[root@localhost ~]# ls -l
总用量 68
-rw-------. 1 root root 1266 6月 6 17:35 anaconda-ks.cfg
-rw-r--r--. 1 root root 26420 6月 6 17:35 install.log
-rw-r--r--. 1 root root 7572 6月 6 17:34 install.log.syslog
brw-r--r--. 1 root root 66, 0 6月 10 07:58 mydev

创建一个块设备文件
[root@localhost ~]# mknod -m 640 mydev2 c 66 1
[root@localhost ~]# ls -l
总用量 68
-rw-------. 1 root root 1266 6月 6 17:35 anaconda-ks.cfg
-rw-r--r--. 1 root root 26420 6月 6 17:35 install.log
-rw-r--r--. 1 root root 7572 6月 6 17:34 install.log.syslog
brw-r--r--. 1 root root 66, 0 6月 10 07:58 mydev
crw-r-----. 1 root root 66, 1 6月 10 08:01 mydev2

本文出自 “linux运维” 博客,谢绝转载!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: