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

磁盘管理:

常见的机械硬盘:

U盘,光盘,软盘,硬盘,磁带

硬链接:只能对文件使用。原因:避免循环链接。

不能跨文件系统。

创建硬连接会增加文件被硬链接的次数

符号链接:可应用于目录

可以跨文件系统

不增加被链接次数

其大小为指定的路劲所包含的字符个数

创建硬连接

ln:

-s创建软连接

-v

复制etc/rc.d/rc.sysinit文件到/tmp/abc下

并在qwe目录下创建rc.sysinit文件的硬链接,为sy

[[email protected] ~]# mkdir /tmp/abc

[[email protected] ~]# cp/etc/rc.d/rc.sysinit  /tmp/abc

[[email protected] ~]# cd /tmp/abc

[[email protected] abc]# ls -l

总用量 20

-rwxr-xr-x. 1 root root 19914 6月   9 18:06 rc.sysinit

[[email protected] abc]# mkdir qwe

[[email protected] abc]# ln rc.sysinit  /tmp/abc/qwe/sy

[[email protected] 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

[[email protected] abc]# cd qwe

[[email protected] qwe]# ls -l

总用量 20

-rwxr-xr-x. 2 root root 19914 6月   9 18:06 sy

硬链接的inode号一样

[[email protected] qwe]# ls -i

394321 sy

[[email protected] qwe]# cd ..

[[email protected] abc]# ls -i

394328 qwe 394321 rc.sysinit

[[email protected] abc]#

删除rc.sysinit. 后硬链接sy还在inode号也没变

[[email protected] abc]# rm -rf rc.sysinit

[[email protected] abc]# cd qwe

[[email protected] qwe]# ls -i

394321 sy

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

创建a的软连接为a2

[[email protected] tmp]# touch a

[[email protected] tmp]# mkdir abc

[[email protected] tmp]# ln -sv /tmp/a   /tmp/abc/a2

"/tmp/abc/a2" ->"/tmp/a"

[[email protected] 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

[[email protected] tmp]# cd abc

[[email protected] abc]# ls -il

总用量 0

394321 lrwxrwxrwx. 1 root root 6 6月   9 20:38 a2 -> /tmp/a

软连接inode 不一样,硬链接数不变,在创建软连接的时候最好写绝对路径 ,不然容易出错。

删除源文件后链接失效

[[email protected] abc]# cd ..

[[email protected] tmp]# rm -rf a

[[email protected] tmp]# cd abc

[[email protected] abc]# ls -li

总用量 0

394321 lrwxrwxrwx. 1 root root 6 6月   9 20:38 a2 -> /tmp/a

[[email protected] 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,文件类型为字符设备

[[email protected] ~]# mknod mydev b 66  0

[[email protected] ~]# 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

创建一个块设备文件

[[email protected] ~]# mknod  -m 640 mydev2 c 66  1

[[email protected] ~]# 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

时间: 2024-08-10 02:10:02

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

class_create(),device_create自动创建设备文件结点

class_create(),device_create自动创建设备文件结点 从linux 内核2.6的某个版本之后,devfs不复存在,udev成为devfs的替代.相比devfs,udev有很多优势,在此就不罗嗦了,提醒一 点,udev是应用层的东东,不要试图在内核的配置选项里找到它;加入对udev的支持很简单,以作者所写的一个字符设备驱动为例,在驱动初始化的代码里调用class_create为该设备创建一个class,再为每个设备调用 class_device_create创建对应的设备.

linux文件类型:设备文件、mknod创建设备文件

设备文件: 块设备文件b: 按块为单位,随机访问的设备: 字符设备文件c:按字符为单位,线性设备: 常见的块设备文件b: 硬盘 硬盘设备的设备文件名:    IDE ,ATA: hd    SATA.SCSI.USB:sd          a,b,c,...来区分同一类型下的不同设备 IDE: 第一个IDE口:主.从 /dev/hda, /dev/hdb 第二个IDE口:主.从 /dev/hdc, /dev/hdd SD:  sda, sdb, sdc,... hda: hda1: 第一个主分

国嵌内核驱动进阶班-7-5(自动创建设备文件)

linux 2.6.13 开始,devfs不存在,udev取代devfs. udev(mdev)存在应用层,可以实现设备文件的自动创建和删除. 过程: 驱动代码调用class_create创建一个class,再为每个设备调用class_create创建对应的设备. ※ 自动创建设备文件需要udev的支持 struct class *myclass =  class_create(THIS_MODULE, "mydriver"); device_create(myclass,NULL,

class_create(),device_create自动创建设备文件结点【转】

本文参考来自CSDN博客,转载请标明出处:http://blog.csdn.net/zhenwenxian/archive/2010/03/28/5424434.aspx 本文转自:http://www.cnblogs.com/hnrainll/archive/2011/06/24/2088576.html 从linux 内核2.6的某个版本之后,devfs不复存在,udev成为devfs的替代.相比devfs,udev有很多优势,在此就不罗嗦了,提醒一 点,udev是应用层的东东,不要试图在内

可移动磁盘在磁盘管理中显示没有初始化恢复文件办法

问题描述:磁盘没有初始化是因为分区表损坏了,导致移动硬盘出现磁盘没有初始化.工具/软件:极限数据恢复软件 步骤1:软件打开后,直接双击需要恢复资料的物理盘,磁盘没有初始化需要从磁盘恢复资料.步骤2:等待软件扫描完成一般需要几分钟到半个小时.步骤3:程序会很快将找到的数据,程序会将找到的盘列出来.步骤4:打钩所有需要恢复的资料,然后点右上角的保存,<另存为>按钮,将打钩的文件COPY出来.步骤5:最后一步只需要等软件将文件复制完毕就好了 .注意事项1:想要恢复磁盘没有初始化需要注意,在资料找到之

linux磁盘管理和文件系统创建

1      磁盘管理 1.1    硬盘的构造原理 硬盘分类: 机械式硬盘,固态硬盘 硬盘出厂会进行低级格式化,分磁盘,再分扇区,硬盘的第一个磁道的一个扇区就是MBR 512Bytes Master boot record 446 bytes bootloader 主引导程序 64bytes :主分区存储 16bytes表示一个主分区,最多4个主分区 2bytes:magic number 表示mbr是否有效 硬盘的注意事项: a)                1.硬盘需要绝对的无尘环境,生

使用 udev 高效、动态地管理 Linux 设备文件

概述: Linux 用户常常会很难鉴别同一类型的设备名,比如 eth0, eth1, sda, sdb 等等.通过观察这些设备的内核设备名称,用户通常能知道这些是什么类型的设备,但是不知道哪一个设备是他们想要的.例如,在一个充斥着本地磁盘和光纤磁盘的设备名清单 (/dev/sd*) 中,用户无法找到一个序列号为"35000c50000a7ef67"的磁盘.在这种情况下,udev 就能动态地在 /dev目录里产生自己想要的.标识性强的设备文件或者设备链接,以此帮助用户方便快捷地找到所需的

linux磁盘管理及文件系统介绍

MBR,是硬盘的主引导记录,处于0磁道0扇区,共有512字节,其中前446字节为BootLoader,用于引导系统启动,紧接的64字节用于标识分区,每16字节标识一个分区,故一个硬盘最多有4个主分区,若想使用更多的分区,可创建3个主分区,再创建一个扩展分区,然后在扩展分区上创建逻辑分区:最后的2个字节用于标识MBR是否有效. MBR对于磁盘非常重要,可使用下面命令对MBR进行备份: dd if =/dev/sda of=/mbrbackup bs=512 count=1 当MBR损坏时,可用下面

使用 udev 管理 Linux 设备文件

本文以通俗的方法阐述 udev 及相关术语的概念.udev 的配置文件和规则文件,然后以 Red Hat Enterprise Server 为平台演示一些管理设备文件和查询设备信息的实例.本文会使那些需要高效地.方便地管理 Linux 设备的用户受益匪浅,这些用户包括 Linux 最终用户.设备驱动开发人员.设备测试人员和系统管理员等等. 概述: Linux 用户常常会很难鉴别同一类型的设备名,比如 eth0, eth1, sda, sdb 等等.通过观察这些设备的内核设备名称,用户通常能知道