linux连接教程视频,[原创]linux视频教程之连接

这次说一下ln的相关原理和用法

在开始介绍连接( Link ) 之前,我们得先来了解一下什么是inode 这个东西?

说实在的,这个东西真的很重要,不了解它的时候,很容易搞错很多的东西

什么是inodes ?

要提到inode 之前,我们得先来了解一下硬盘的整体构造才行!硬盘里面有多个硬盘盘片组合在一起

而一个硬盘盘片为圆形的,其中,每一个硬盘盘片上面都有个可以读写的磁头( Head ),

而当这个磁头固定住,让硬盘盘片转一圈,那么那一个圆形的就是磁道( Track ),而在硬盘内的几个

硬盘盘片同半径的那一圈的磁道总和称为磁柱( Cylinder ),而由圆心向外画出直线,那就是硬盘的

最小储存物理量,我们称为扇区( setctor ),一个扇区的物理量大约是512 bytes ( 约0.5K )。

磁头( Head ) :可擦写的金属磁盘;

磁道( Track ) :读写头转一圈( 同心圆的一圈) 的量;

扇区( Sector ) :最小的物理储存量。

知道了大体的硬盘构造之后,再来谈一谈怎么硬盘分割( partition ) 我们在进行硬盘分割的时候,

最小都是以磁柱为单位进行分割的,那么分割完成之后自然就是格式化( format ),在Linux 里面

我们在进行格式化的时候必须要考虑到Block 与inode 的信息,这个block 还好理解,他是我们磁

盘可以记录的最小单位,是由数个sector 所组成的,所以他的大小通常为n*512 bytes ,例如4K 。

那么inode 是什么? Block 是记录『文件内容数据』的地区,而inode 则是记录『该文件的属性、

及该文件放置在哪一个Block 之内』的信息!所以,每个文件都会占用到至少一个inode 。而当我

们Linux 系统要找到这个文件时,他会先去搜寻inode table 找到这个文件的属性及数据放置的地区

然后再到数据去找到数据存放的Block 进而将数据取出利用。这个inode 数目在一开始就会被设定好

他的设定方式通常是利用( 硬盘大小/ 一个容量),这个容量至少应该比Block 要大一些较佳,例如

刚刚的Block 订为4K ,那么inode 可以订为8K 左右。所以,一个1GB 的硬盘,如果以8K 来规划他的

inode 数时,他的inode 就会有131072 个inode !而一个inode的大小为128 bytes 这么大!这么一来

的话,我们就可以清楚的知道了,那就是一个partition 格式化为一个filesystem 之后,基本上,

他一定会有inode table 与data area 两个区块,一个用来记录文件的信息与该文件放置的block 区块

一个用来记录文件的内容!

由于我们Linux 在读取数据的时候,是先查询inode table 以得到数据是放在那个Block 里面,然后再

去该Block 里面读取真正的数据内容!然后,那个block 是我们在格式化硬盘的时候规定出来的一个值

这个block 是由2 的n 次方个sector 所集结而成的!所以,他是0.5K 的倍数!假设我们block 规划为

4KBytes 好了,那么由于一个inode 与一个block 最多均只纪录一个文件,所以,如果你的一个文件有

0.1 K bytes 这么大时,你要晓得的是,由于你的block为4K bytes ,因此,你就会有3.9 Kbytes 的空

间『浪费掉』 !所以,当你在格式化硬盘的时候,请千万注意到你的系统未来的使用方向 !

当block 越小( 最小为0.5K ) 、inodes 越多,可利用空间越多,但是大文件写入效率较差

适合文件数量多但是文件容量小的系统,例如BBS 或者新闻群组news 这方面的服务之系统

当block 越大( 最大可到16 * 0.5K 以上) 、inodes 数越少,大文件写入效率较佳,但浪费的空间

较多适合档案容量大的系统。

以上内容一定要看会

简单的说

inode 是记录 Block 的信息

Block 是记录 数 据 的地区

ln

知道了什么是inode 与他的功能之后,接着下来就要来介绍link!说到link 其实也没有什么大不了的,

说穿了,就真的有点像是Windows 的『快捷方式』一样,不过, link 的功能要好的多 Link 又分为

hard link 与symbolic link 两种

Hard Links

刚刚说过,当系统要读取某一个文件的时候,就会先去读inode table ,然后再根据inode 的信息到

block area 去将数据取出来利用!而hard link 就是直接再建立一个inode 连结到文件放置的block

区块。也就是说,进行hardlink 的时候,实际上,你的文件内容不会改变,只是你在查询的时候,利用

原来的inode 与后来的inode 均可被指定到该文件放置的地点,因此两个文件的内容会是一样的!所以

读取任何一个inode 的结果都是存取在同一个文件的内容就是了。不过,这样一来就有个问题 ,因为

inode 是会连结到block 区域去的,而『目录』本身仅消耗inode 而已,那么一来的话, hard link 不

就不能link 目录 ?对的!没错! Hard link 有两个最大的限制

1. 不能跨filesystem ,因为不同的filesystem 有不同的inode table

2. 不能link 目录!

Symbolic Links:

相对于hard link , Symbolic link 可就好理解多了,基本上,他就是在建立一个独立的文件,而这个

文件会让数据读取指向他link 的那个文件内容!由于只是利用文件来做为指向的动作,所以,当来源档

被删除之后,symbolic link 的文件用不了了

看样子,似乎hard link 比较安全,因为即使某一个inode 被删掉了,只要有任何一个inode 存在,

那么该文件就不会不见!不过,由于Hard Link 的限制太多了,包括无法做『目录』的link ,所以

在用途上面是比较受限的!反而是Symbolic Link 的使用方向较广

简单的说

Hard Links 就是直接再建立一个inode 连接

Symbolic Links 就是在建立一个独立的文件,指向它link 的那个文件内容

如果不加任何参数的话,那么就是Hard Link !

看到了吧,这个1变成2了,这就是占用掉的inodes的数值

-s 就表示是 Symbolic Links

跟cp 也不一样!因为虽然Hard Link 的文件看起来是有容量的,但是基本上还是指向原来的

文件,所以 ,整体容量是没有增大的 !

加了一个Hard Link后,还是没变

但加了一个Symbolic Links 整体和容量就变大了

而如果这个时候删掉passwd 会发生什么事情呢?

passwd-hard的内容还是会跟原来passwd 相同,但是passwd-sym 就会找不到该文件 !

就是因为这两种连接连的东西不一样

虽然使用-s 的参数时,就做成差不多是Windows 底下的『快捷方式』的意思(Symbolic Link)不过

需要特别注意的是, Linux 的link 与Windows 的快捷方式是不一样的东西!举个例子说,当你在

Windows 建立一个快捷方式时,你可以在这个快捷方式内修改任何数据,而你的原始数据并不会跟着变!

不过,当你修改Linux 下的link 文件时,则更动的其实是『原始文件』,所以不论你的这个原始档被

连结到哪里去,只要你修改了连结档原始文件就跟着变 !

如果你做了底下这样的连结

ln –s /bin /root/bin

那么如果你进入/root/bin 这个目录下,『请注意!该目录其实是/bin 这个目录,因为你做了连结了』

所以,如果你进入/root/bin 这个刚刚建立的连结目录,并且将其中的数据删掉时,/bin 里面的数据

就通通不见了!这点请千万注意!并不是/root 底下的资料都是root 的!还需要注意一下该属性才行!

看,以a开头的那些文件没了 现在在/root/bin下

我们去/bin下去看看

看,也是一样

所以,文件的属性要多意思一下

删文件也是

上面有很多文字的东西,要看明白

成功!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

附件下载:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/302162.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

读《中台架构与实现》

最早是在极客时间知道欧创新老师的,我也是他的课程《DDD实战课》的订阅者,后来欧老师基于这门课程做更多的实践与思考,完成了《中台架构与实现:基于 DDD 和微服务》这本书的写作,最近刚好读完了这本书。中台、微服务、…

fedora17的gnome3桌面美化

使用fedora已经有一段时间了,感觉还可以. 今天配置一下gnome的桌面吧. 首先要安装一款工具,这个可以说很必要了,当然,好多的博客里也都提到过,这就是 gnome-tweak-tool yum install gnome-tweak-tool 之后呢, 就可以打开这个软件,在附件里, 中文名字叫做高级设置,英文名字叫做…

全球高智商俱乐部门萨出品,最强大脑达人推荐,让孩子挑战脑力极限,玩出高智商思维!...

我们经常听到“脑力体操”(Mind Gymnastic),可能大家都不太懂得是什么。通俗地讲,就是时不时,给大脑来点小体操。可以灵活运用大脑,确保头脑是清醒的。门萨试题作为全球公认的“脑力体操”,它不是数学题,对…

linux关机开机命令详解,Linux关机与重启的命令详解

Linux有如下的关机和重启命令:shutdown, reboot, halt, poweroff,那么它们有什么区别呢?shutdown - 建议使用的命令shutdown是最常用也是最安全的关机和重启命令,它会在关机之前调用fsck检查磁盘,其中-h和-r是最常用的参数&#x…

Microsoft Build 2021大会开始后,Develop Blog一系列更新

.NET BLOG发布.NET 6预览版4https://devblogs.microsoft.com/dotnet/announcing-net-6-preview-4/发布**.NET MAUI**预览版4https://devblogs.microsoft.com/dotnet/announcing-net-maui-preview-4/介绍运行时.NET热重载时编辑代码的体验https://devblogs.microsoft.com/dotnet…

网络管理员面试时常用的问题及答案

大家可以了解一下,以便以后面试时备用。 以下是附件正文内容第一部分1.请写出568A与568B的线序 2.按照数据访问速度排序:硬盘、CPU、光驱、内存 3.请写出下列服务使用的默认端口POP3、SMTP、FTP 4.网卡MAC是由6组什么组成的 5.ISO/OSI 7层模型是什么 6.C…

数学无用论??我们欠孩子真正的数学阅读

说到数学,我想起了13年一场轰动行业各界的“数学无用论”!那时微博上有个话题叫做#让数学滚出高考#,超过7成网友都表示支持,这可怕的比例就能说明在中国由于数学差导致命运被洗牌的真不在少数……甚至大部分人举起了“数学无用论”…

Android获取Linux图像信息,Android系统信息获取 之十三:Linux内核版本信息获取

Android系统信息获取 之十三:Linux内核版本信息获取Android系统是基于Linux的,各个Android版本对应的Linux版本不尽相同,我们这里不去追究各个Android对应的Linux版本是什么,而是通过工具或者使用代码的方法去获取我们使用的Andro…

让Dapper在一个项目中支持多种库

如果想在一个项目中,用DapperPlus支持多种数据库该怎么做?在《让Dapper支持Mock》中我们定义了DapperPlus,可以基于这个类,实现两个子类:MySqlDapperPlus,MsSqlDapperPls,在这两个子类的构造中适…

一些积累

为什么80%的码农都做不了架构师?>>> 查看某文件属于哪个RPM包。 我一直使用的是ubuntu,用的是apt-get所以。。,答案是-qf,没有环境没法实验,也不想装rpm在我的ubuntu里。 run level 这个不同的linux发行版…

数据庞大繁杂,如何精简挖掘?

从数据中抽取信息从信息中挖掘知识随着大数据时代的到来,数据挖掘的重要性越发显著。可谓是兵马未至,数据先行。所谓数据挖掘,一般是指从大型数据库中将隐藏的预测信息抽取出来的过程,而更为精确的解释就是“从数据中挖掘知识”。…

xps13安装linux系统,[操作系统]Dell XPS 13 (9360)安装配置 ubuntu 16.04 实现 win10 Linux双系统...

[操作系统]Dell XPS 13 (9360)安装配置 ubuntu 16.04 实现 win10 Linux双系统0 2017-07-17 12:00:18博主今日投身于SLAM的研究事业,放弃了以往win10下各种IDE的开发环境,选择了在自己的xps13上装上ubuntu16.04,投身于更为方便的linux进行学习…

Magicodes.IE之总体教程

简介Magicodes.IE,导入导出通用库,支持Dto导入导出、模板导出、花式导出以及动态导出,支持Excel、Csv、Word、Pdf和Html。内容合集Magicodes.IE.AspNetCore之一行代码多格式导出Excel模板导出之动态导出 Magicodes.IE Excel合并行数据导入教程…

关于VC6.0 MSDEV.EXE-应用程序错误0x5003eaed指令引用的0x000...

2019独角兽企业重金招聘Python工程师标准>>> 错误现象:VC6.0中,点击add source file或是add header file,add file to project等菜单,将会出现MSDEV.EXE-应用程序错误,并引起VC6.0的自动关闭。 错误原因:可…

pixelbook安装linux系统,谷歌Pixelbook可以运行Fuchsia操作系统 正测试

【PConline资讯】早在2016年就有消息称,谷歌正在开发一款独立于Android和Chrome OS之外的操作系统 “Fuchsia”。尽管迄今为止谷歌根本没有详细说明这个操作系统,但最新文档指出,谷歌Pixelbook 笔记本可以运行Fuchsia系统。据报道&#xff0c…

AlphaGo Zero又上《Science》封面!谷歌的人工智能又干翻人类了!

全世界只有3.14 % 的人关注了数据与算法之美卢sir在回顾2018年的时候,发现居然遗漏了一个“知识点”——在2018年的最后一个月, AlphaGo Zero登上了世界顶级学术期刊《科学》杂志的封面。Google设计了AlphaGo(围棋机器人)的事早已…

【译】.NET 6 Preview 4 Released

.NET 6 Preview 4 Released我们很高兴地发布 .NET 6 Preview 4。现在,我们到 .NET 6 正式发布尚有一半。现在是再次浏览.NET 6 全部内容的好时机,就像第一篇预览文章一样。许多功能处于最终形式,而其他功能也将很快发布,因为已经为…

在终端(Terminal)中用颜色显示不同类型文件

2019独角兽企业重金招聘Python工程师标准>>> 对于从Unix/Linux平台转到Mac的同学来说,“终端”是经常要使用的一个工具。不过可能有很多人已经发现了,当我们使用ls命令来显示目录内容的时候,“终端”对于目录、可执行文件等特殊类…

马斯克要干翻人工智能,“神经蕾丝”能让每个人都能当钢铁侠

全世界只有3.14 % 的人关注了数据与算法之美爱因斯坦曾说过,“在一个崇高的目标支持下,不停地工作,即使慢,也一定会获得成功。”这不2019年刚到来,“硅谷钢铁侠”马斯克就定好了“小目标”了——“给我10年时间&#x…

都 2021 年了,竟然有人搞大数据时忽略 JSON 而去研究用 C# 把 XML 转换为 XML 的技术...

在大数据项目开发过程中,ETL(Extract-Transform-Load)是必不可少。即便目前 JSON 非常流行,开发人员也有必定会有对远古系统的挑战,而 XML 格式的数据源作为经典存在浑身上下散发着浓浓 old money 的味道。因为有 Newt…