unix下的softlink和hardlink
Linux中包括两种链接:硬链接(hard link)和软链接(soft link),软链接又称为符号链接(symbolic link)
创建命令:
ln -s softlink destfile/directory #建立软连接
ln hardlink destfile #建立硬连接
inode
在Linux系统中,内核为每一个新创建的文件分配一个Inode,每个文件都有一个惟一的inode号,我们可以将inode简单理解成一个指针,它永远指向本文件的具体存储位置。文件属性保存在inode里,在访问文件时,inode被复制到内存在,从而实现文件的快速访问。系统是通过inode来定位每一个文件。
硬链接(hard link)
硬链接实际上是一个指针,指向源文件的inode,系统并不为它重新分配inode。硬连接不会建产新的inode,硬连接不管有多少个,都指向的是同一个inode节点,只是新建一个hard link会把结点连接数增加,只要结点的连接数不是0,文件就一直存在,不管你删除的是源文件还是连接的文件。只要有一个存在,文件就存在(其实就是引用计数的概念)。当你修改源文件或者连接文件任何一个的时候,其他的文件都会做同步的修改。
软链接(soft link)
软链接最直观的解释:相当于Windows系统的快捷方式,是一个独立文件(拥有独立的inode,与源文件inode无关),该文件的内容是源文件的路径指针,通过该链接可以访问到源文件。所以删除软链接文件对源文件无影响,但是删除源文件,软链接文件就会找不到要指向的文件(可以类比Windows上快捷方式,你点击快捷方式可以访问某个文件,但是删除快捷方式,对源文件无任何影响)。
区别
1. 软链接和源文件操作权限不一样 inode不一样;硬链接与源文件操作权限完全一致(同一个INODE 引用计数++)。
2. 软链接可以跨文件系统(分区);由于inode的限制以及文件系统的可卸载性,硬连接不容许跨文件系统。
3. 软连接可以对一个不存在的文件名进行连接;硬链接不可以。
4. 软连接可以对目录进行连接;硬链接不可以。
unix下的softlink和hardlink相关推荐
- Linux下的softlink和hardlink(转)
Linux中包括两种链接:硬链接(hard link)和软链接(soft link),软链接又称为符号链接(symbolic link) 创建命令: ln -s destfile/directory ...
- Linux下的softlink和hardlink
Linux中包括两种链接:硬链接(hard link)和软链接(soft link),软链接又称为符号链接(symbolic link) 创建命令: ln -s destfile/directory ...
- 学习Unix,可从事什么样的工作(1)《精通Unix下C语言与项目实践》读书笔记(3)...
<精通Unix下C语言编程与项目实践>读书笔记(new) 文章试读 不拘一个遍程序系列:编程序不能一个脑袋钻到底,有时要学会变通,即所谓的曲线救国.一.二.三.四 职场规划:一些杂七杂八的 ...
- Unix下设计动态库的方法《精通Unix下C语言编程与项目实践》(一)
精通Unix下C语言编程与项目实践 之动态库的生成 作者:朱云翔,胡平 3.3 动态库的生成 动态库的生成可分为三个步骤,设计库源码.编译位置无关码(PIC)型.o文件和链接动态库.链接动态库的命令包 ...
- 《精通Unix下C语言与项目实践》读书笔记(16)
<精通Unix下C语言编程与项目实践>读书笔记(new) 文章试读 不拘一个遍程序系列:编程序不能一个脑袋钻到底,有时要学会变通,即所谓的曲线救国.一.二.三.四 职场规划:一些杂七杂八 ...
- Linux/Unix下的任务管理器-top命令
Linux/Unix下的任务管理器-top命令 Posted on 2012-07-11 09:14 fengyv 阅读(15453) 评论(1) 编辑 收藏 Windows下的任务管理器虽然不好用( ...
- 修改linux下全局数据库名,linux/unix下修改oracle数据库实例名的方法
linux/unix下修改oracle数据库实例名的方法 2018年12月10日 | 萬仟网IT编程 | 我要评论 linux/unix下修改oracle实例名的方法 1.检查原来的数据库实例名 $ ...
- 关于unix下使用tar的一些常用技巧
tar是linux/unix下经常要用,包括备份,打包,传输等,是使用频率较高的命令,下面这些技巧,可以大大提高维护人员的效率,现贴出以备查: 1,解压包中文件至指定文件夹: tar -xzvf fi ...
- 文件锁操作《精通Unix下C语言编程与项目实践》之三
文章试读 不拘一个遍程序系列:编程序不能一个脑袋钻到底,有时要学会变通,即所谓的曲线救国.一.二.三.四 职场规划:一些杂七杂八的职场感悟吧.不值钱的软件人才 精力充沛与事业成功 我的诗歌:都是我的打 ...
- 系统安全防护之UNIX下***检测方法
因为UNIX系统经常承当着关键任务,所以它经常是***者***的首选目标.于是检测***.保护系统安全是管理员的最为重要的任务之一.那么,在没有其它工具帮助的情况下,如何去判断系统当前的安全性?如何去 ...
最新文章
- centos7 利用 crontab 执行 定时任务 计划任务
- Google Chrome v48.0.2564.
- 使用JDK 8流在包装对象的集合和包装对象的集合之间转换
- 电脑两边黑边怎么还原_Mac电脑录制的视频有黑边?如何解决
- php 5.4日志文件在哪里,我的错误日志文件在哪里?(Where are my error log files?)
- web前端开发初学者必看的学习路线图课程内容分享
- JAVA常用的工具类
- EtherCAT运动控制卡开发教程之Qt(上):开发环境配置与简单运动控制应用
- SAP 中文小写金额转大写金额 amount in word(支持负数)
- 在本地调试移动设备上的页面——神器weinre介绍
- Linux中正则表达式与文件格式化处理命令(awk/grep/sed)
- 【转载收藏】针对VNPY的软件bugs的修改总结
- Java就业前景如何?
- JAVA之模拟注册登录幸运抽奖
- python+短信宝实现手机短信发送
- 图片文字翻译的软件有哪些?文字翻译软件推荐。
- 解决linux下php命令无法使用,配置环境变量
- ASIO4ALL是什么
- ImageNet数据集应用
- 浅析人体检测技术及应用场景
热门文章
- RINEX3文件中的toc,toe,IODE区分和了解
- 导入(excel)+导出(excel)+国际化(i18n)+
- python一个下划线和两个下划线_python 单下划线/双下划线使用总结
- 大师级思考者是怎么探索事物本质的?
- 果木浪子吉他入门零基础教学(70课时)
- mysql数据库建表的作用_浅谈(SQL Server)数据库中系统表的作用
- hdu 5144 NPY and shot
- RocksDB 笔记
- sip 软电话 java源码,完美的 SIP 软电话
- word自己新建样式,怎么加入目录?