
Linux软硬连接
1.软硬连接之间的区别
inode 索引节点 index node 空间 存放文件按的属性信息:大小 硬链接数 权限 不存放文件名 Block 数据块 空间 存放文件的内容 存放数据 在同一个分区中,如果俩个文件的inode号码相同了,那么这俩个文件互为硬链接。inode
1.创建一个非空文件就要占用一个inode或至少1个block
2.inode空间,大小Centos6且分区>500M 256字节
3.在同一个分区,如果俩个文件的inode号码相同了,那么这俩个文件就互为硬链接
block
1.存放数据的地方
2.大小Centos6.x且分区>500M 4k
3.如果大文件占用多个block,如果小文件1k block剩余空间无法使用
4.磁盘读取数据是按block为单位读取的
5.每读取一次block就会消耗一次IOdumpe2fs /dev/sda3 | grep “inode size” 看某一个大小 df -i 看inode总数 df -h 看block du -sh 查看当前目录总大小
2.软硬链接
1.硬链接相当于文件的入口 在同一个文件或者分区系统中inode号码相同
2.软链接相当于快捷方式 --指向原文件 --存放原文件的位置
3.ln oldboy.txt /data/oldboy.txt.hard
4.ln -s oldboy.txt /data/oldboy.txt.hard
5.彻底删除一个文件 硬链接为0 rm
6.lsof |grep oldboy.txt 显示系统中所有被占用的文件,以及被谁占用
7.对目录不能创建硬链接,但是可以创建软链接.
8.进程占用文件时,删除不掉文件 -- tail -f 显示文件的实时更新
9.进程调用数为0 才能正在删除
5.描述一下linux下软链接和硬链接之间的区别软链接
Linux里的软链接文件类似于Windows系统中的 ”快捷键方式“ 里面具体存放的是源文件的路径,并指向源文件实体,因此通过访问这个 ”快捷方式“ 可迅速访问到源文件。软链接文件类型是l
我们只需要执行命令ln -s源文件 目标软链接文件完成软链接创建。
注意:软链接和源文件是不同类型的文件,所以inode也不同。//文件软链接示例
touch /root/file
ln -s /root/file /tmp/file_bak
ll /tmp/file_bak //root下file链接到/tmp下并重命名为file_bak//目录软链接示例
mkdir /soft/nginx1.1 -p
ln -s /soft/nginx1.1/ /soft/nginx
ll /soft/nginx //查看链接指向生产软链接作用
1.软件升级
2.企业代码发布
3.不方便目录移动硬链接
Linux文件系统中, 多个文件名指向同一个索引节点Inode是正常且允许的(文件的多个有效的入口),这种情况的文件称为硬链接。
通过执行ln 源文件 硬链接文件给文件设置硬链接,来防止重要文件被误删。注意:目录不能创建硬链接,硬链接文件可以用rm命令删除
//文件硬链接示例 ln /root/file /tmp/file_hard ll /tmp/file_hard软硬链接区别
Linux下软链接和硬链接的区别1)ln命令创建硬链接,ln -s命令创建软链接。 2)目录不能创建硬链接,并且硬链接不可以跨越分区系统。 3)目录软链接特别常用,并且软链接支持跨越分区系统。 4)硬链接文件与源文件的inode相同,软链接文件与源文件inode不同。 5)删除软链接文件,对源文件及硬链接文件无任何影响。 6)删除文件的硬链接文件,对源文件及链接文件无任何影响。 7)删除链接文件的源文件,对硬链接无影响,会导致软链接失效。 8)删除源文件及其硬链接文件,整个文件会被真正的删除。
3.创建和删除
默认不带参数情况下,ln命令创建的是硬链接,带-s创建的是软连接
含义:
在同一分区硬链接文件与源文件的inode节点号一样,而软链接文件相当于windows下面的快捷方式
特点:a.不能对目录创建硬链接,但可以创建软链接,对目录的软链接会经常被用到
b.软链接可以跨文件系统,硬链接不可以跨文件系统删除方式
a.删除软链接对源文件及硬链接无任何影响
b.删除文件的硬链接文件,对源文件及软连接文件无任何影响
c.删除链接文件的源文件,对硬链接文件无影响,会导致其软链接失败.(红底白字闪烁)
d.同时删除源文件及其硬链接文件,整个文件才会被正真的删除.
4.Linux系统文件类型
通过颜色或者后缀判断文件类型不一定准确.
ls -l 文件名 //看第一个字符 格式 说明 - 普通文件(文本, 二进制, 压缩, 图片, 日志等) d 目录文件 b 设备文件(块设备)存储设备硬盘 /dev/sda1, /dev/sda2 c 设备文件(字符设备)打印机,终端 /dev/tty1, /dev/zero s 套接字文件, 进程间通信(socket) p 管道文件 l 链接文件