首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux中软链接、链接:都用在哪些场合?

这个行为有点类似于网盘: 在云存储中有一个文件 hello.txt,然后我有两台电脑 A 和 B,这两台电脑会把云端文件 hello.txt 都创建一个镜像文件在本地,就好像这个文件就在自己盘上一样...链接存在 2 个限制: 不允许用户给目录创建链接,即:用户不可以,操作系统可以(想一下每个目录下 ....这样,当动态库加载器查找动态库文件时,就可以直接在这个缓存文件中进行查找,加快了动态库查找速度。...链接之应用:文件备份 一些小伙伴有定期备份文件、清理文件好习惯。 在备份时候,如果是实实在在拷贝一份,那真的是太浪费磁盘空间,特别是对于我这种只有 256G 硬盘空间笔记本。...很多备份工具利用就是链接功能,包括 git 工具,当克隆本地一个仓库时,执行 clone 指令: git clone --reference git 并不会把仓库中所有文件拷贝到本地

3.2K61

【Linux修炼】14.磁盘结构文件系统软硬链接动静态库

如果一个文件没有被打开,该如何被OS管理呢?...要理解操作系统如何对磁盘上未打开文件进行管理,首先我们需要对磁盘这个设备物理结构、存储结构与逻辑结构进行理解,然后再在此基础上理解操作系统对磁盘管理方法。...这也是为什么在目录下读取文件信息需要 r 权限,在目录下新建文件需要 w 权限原因。...,通过hard_file.link同样可以找到,与此同时存在一个计数器变量也会从1变成2(引用计数,也称链接数)。...五.动静态库加载理解 回顾进程地址空间部分知识: 我们曾经讲过,程序不仅在运行时作为进程地址空间存在,在编译时候就已经以虚拟地址方式把我们程序编译好,即程序在没有加载到内存时候,就已经有了代码区

1.1K00
您找到你想要的搜索结果了吗?
是的
没有找到

理解 Linux 链接(一)

如前所述,在物理磁盘这个级别上,文件和目录之类东西并不真正存在。文件系统是为了方便人类使用,将它们虚构出来。...分区表就像一个索引:当从磁盘加载文件时,操作系统会查找表中条目,分区表会告诉文件在磁盘上起始位置和结束位置。然后磁盘头移动到起点,读取数据,直到它到达终点,您看:这就是你文件。...链接 链接只是分区表中一个条目,它指向磁盘上某个区域,表示该区域已经被分配给文件。换句话说,链接指向已经被另一个条目索引数据。让我们看看它是如何工作。...“inode” 是分区表中信息块,它包含磁盘上文件或目录位置、上次修改时间以及其它数据。如果两个文件使用相同 inode,那么无论它们在目录树中位置如何,它们在实际上都是相同文件。...软链接 软链接,也称为 符号链接(symlink),它与链接是不同:软链接实际上是一个独立文件,它有自己 inode 和它自己在磁盘上小块地方。

1.4K10

LG智能手机爆出两个远程代码执行漏洞

Check Point 研究员发现了 LG(也称为 LGEIME)智能手机两个漏洞,这些漏洞都存在于默认盘上,而且是 LG 设备独有的。...Check Point 研究员在几个月前发现了 LG(也称为 LGEIME)智能手机两个漏洞,这些漏洞都存在于默认盘上,而且是 LG 设备独有的。...当安装新语言或者更新现有语言时,设备会访问一个编码服务器,从中检索被请求语言文件,但是这个下载过程是通过一个不安全 HTTP 连接完成,这使得攻击者可以进行中间人攻击或者其它危害操作。...通过路径遍历机制,文件名称可以作为其位置(目录),也可修改为 LG 键盘沙盒中其它位置。 ? LG 键盘应用假定本地 lib 文件是语言一部分,并授权下载所有文件为.so 可执行文件。...LG 键盘程序加载配置文件中指定 lib 文件到程序重启项中,一旦键盘程序启动,这个流氓 lib 文件就会被加载。完成以上操作后,就只需要等待应用程序重启加载库。 ?

37930

🚀作为前端,怎么让其他同事给你挑大拇哥👍?运维命令简易上手

于我们组运维同学只有一位,前期项目的部署都得靠我自己摸索,慢慢,我就摸索学会了一些和服务器相关知识。...今天分享给大家 服务器命令知识 切换权限 sudo su 权限名称 // 不填时,默认为root // :有的用户名设置了密码,还需要输入密码回车验证 下载第三方 不同服务器操作系统,下载命令不一样...// 将文件1,文件2压缩为command_file.zip压缩 // :zip需要下载第三方才能用,而unzip一般为系统自带命令 unzip a.zip // 解压a.zip文件 // 有时解压文件会提示文件已存在...local_dir work@10.0.0.112.114:/path/filename(本地目录) :如果是目录,可以加参数 -r nginx命令知识 如果你上手是崭新服务器,你还需要下载nginx...// 重新加载配置文件,一般配置文件修改之后需要运行这个命令 nginx -s reload // 关闭nginx服务 nginx -s stop // 优雅关闭,关闭时候有请求就等候请求结束在关闭

16600

linux基础命令大全及使用方法

工作原理: RAID5把数据和相对应奇偶校验信息存储到组成RAID5各个磁盘上,并且奇偶校验信息和相对应数据分别存储于不同盘上,其中任意N-1块磁盘上都存储完整数据,也就是说有相当于一块磁盘容量空间用于存储奇偶校验信息...关闭后没有 inode号 文件类型 文件权限 链接个数 属主 属组 文件或目录大小 时间 文件名目录名 33596923 rw-r--r- 1 root root 41 17:04 2.txt...)多个文件具有相同inode号 则所有文件互为链接 链接相当于给文件增加了一个入口 相当于超市多个入口 创建链接 ln 源文件 目标文件(可改名) 链接作用: 如果修改源文件或者链接文件...空格 代表source 重新加载 加上....如何查看当前用户对某个文件或目录有什么权限 ll /etc/hosts -rw-r--r-- 等信息 2.权限计算 r===4 w===2 x===1 -===0

4.5K10

果断放弃npm切换到pnpm--节约磁盘空间(256G硬盘救星)

对于每个模块每个版本只保留一个副本。如:本地有10个项目依赖相同 vue 版本,如果使用 npm 或 yarn 时本地磁盘需要有 10 个 vue 副本;而 pnpm 只有1个。...如果你用到了某依赖项不同版本,那么只会将有差异文件添加到仓库(公共仓库)。 所有文件都会存储在硬盘上同一位置。...当多个(package)被安装时,所有文件都会从同一位置创建链接,不会占用额外磁盘空间。 这允许跨项目共享同一版本依赖。...pnpm/ 以平铺形式储存着所有的(格式:.pnpm/@/node_modules/)。.pnpm 目录下链到全局仓库中(/Users/ligang/.pnpm-store/v3)。...如果存在这种情况,需要切换成 pnpm 我们应该如何处理?

1.7K10

果断放弃npm切换到pnpm--节约磁盘空间(256G硬盘救星)

对于每个模块每个版本只保留一个副本。如:本地有10个项目依赖相同 vue 版本,如果使用 npm 或 yarn 时本地磁盘需要有 10 个 vue 副本;而 pnpm 只有1个。...如果你用到了某依赖项不同版本,那么只会将有差异文件添加到仓库(公共仓库)。 所有文件都会存储在硬盘上同一位置。...当多个(package)被安装时,所有文件都会从同一位置创建链接,不会占用额外磁盘空间。 这允许跨项目共享同一版本依赖。...pnpm/ 以平铺形式储存着所有的(格式:.pnpm/@/node_modules/)。.pnpm 目录下链到全局仓库中(/Users/ligang/.pnpm-store/v3)。...如果存在这种情况,需要切换成 pnpm 我们应该如何处理?

3.2K20

关于现代包管理器深度思考——为什么现在我更推荐 pnpm 而不是 npmyarn?

高效利用磁盘空间 pnpm 内部使用基于内容寻址文件系统来存储磁盘上所有的文件,这个文件系统出色地方在于: 不会重复安装同一个。...其次,node_modules 内部如何管理依赖。 执行命令后,首先会构建依赖树,然后针对每个节点下,会经历下面四个步骤: - 1. 将依赖版本区间解析为某个具体版本号 - 2....下载对应版本依赖 tar 本地离线镜像 - 3. 将依赖从离线镜像解压到本地缓存 - 4....由于依赖提升存在,npm/yarn 会把 X 放到根目录 node_modules 中,这样 C 在本地是能够跑起来,因为根据 node 加载机制,它能够加载到 monorepo 项目根目录下...举例如下: // 移除 axios pnpm uninstall axios --filter package-a pnpm link 将本地项目连接到另一个项目。注意,使用链接,而不是软链接。

2.8K20

新手请进,全网最全 Linux 命令总结,建议收藏!

罗列一个磁盘架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作系统信息 arch 显示机器处理器架构 uname -m 显示机器处理器架构 uname -r 显示正在使用内核版本...显示一个已经安装rpm提供配置文件列表 rpm -q package_name --whatrequires 显示与一个rpm存在依赖关系列表 rpm -q package_name --whatprovides...磁盘上ext3文件系统完整性 fsck.ext3 /dev/hda1 修复/检查hda1磁盘上ext3文件系统完整性 fsck.vfat /dev/hda1 修复/检查hda1磁盘上fat文件系统完整性...-r参数: 如:cp -r 源文件夹 目标文件夹 2、touch+文件名:当文件不存在时候,创建相应文件;当文件存在时候,修改文件创建时间。.../do 2.链接: ln /usr/share/test hard:创建一个链接文件hard,这时对于test文件对应 存储区域来说,又多了一个文件指向它 26 系统常用命令 1、显示命令 date

55420

600 条最强 Linux 命令总结

罗列一个磁盘架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作系统信息 arch 显示机器处理器架构 uname -m 显示机器处理器架构 uname -r 显示正在使用内核版本...修复/检查hda1磁盘上ext2文件系统完整性 e2fsck /dev/hda1 修复/检查hda1磁盘上ext2文件系统完整性 e2fsck -j /dev/hda1 修复/检查hda1磁盘上ext3...2、touch+文件名:当文件不存在时候,创建相应文件;当文件存在时候,修改文件创建时间。...; touch abc:若abc文件存在,则修改为系统的当前时间;若不存在,则生成一个为当前时间空文件。...创建一个链接文件doc,并指向目录/usr/share/do 2.链接: ln /usr/share/test hard:创建一个链接文件hard,这时对于test文件对应 存储区域来说,又多了一个文件指向它

62540

最新 Linux 命令总结 大全

-31 user1 设置用户口令失效期限 pwck 检查 ‘/etc/passwd’ 文件格式和语法修正以及存在用户 grpck 检查 ‘/etc/passwd’ 文件格式和语法修正以及存在群组...rpm提供配置文件列表 rpm -q package_name --whatrequires 显示与一个rpm存在依赖关系列表 rpm -q package_name --whatprovides...磁盘上ext3文件系统完整性 fsck.ext3 /dev/hda1 修复/检查hda1磁盘上ext3文件系统完整性 fsck.vfat /dev/hda1 修复/检查hda1磁盘上fat文件系统完整性...源文件夹 目标文件夹 2、touch+文件名:当文件不存在时候,创建相应文件;当文件存在时候,修改文件创建时间。.../share/do 2.链接: ln /usr/share/test hard:创建一个链接文件hard,这时对于test文件对应 存储区域来说,又多了一个文件指向它 26.

13910

比较 Windows 上四种不同文件(夹)链接方式(NTFS 链接、目录联接、符号链接,和大家熟知快捷方式)

可能有很多小伙伴已经知道通过 mklink 命令来创建 NTFS 磁盘上各种链接;当然,就算不知道 mklink 链接,快捷方式应该每个人都知道吧。...不过其也能实现链接到另一个文件功能。使用快捷方式程序太多了,几乎每个安装都会考虑往桌面或开始菜单扔几个快捷方式。...快捷方式本质是一个 lnk 后缀文件,这个文件里面指向了如何打开目标文件或文件夹一些参数,于是当在文件资源管理器中打开快捷方式时,就直接打开了目标文件或文件夹(当然,启动一个程序可能是大多数用法)...当原始文件被单独删除后 链接依然能正常访问到文件数据。 目录联接失效,指向不存在目录。 符号链接失效,指向不存在目录。...(链接,软链接/符号链接,目录链接) - walterlv 另外,附我使用目录联接/符号链接一些用途: 通过 mklink 收集本地文件系统所有 NuGet 输出目录来快速调试公共组件代码 -

1.5K30

最新 Linux 命令总结 大全

复制文件目录 1、cp:复制文件和目录 cp源文件(文件夹)目标文件(文件夹) 2、touch+文件名:当文件不存在时候,创建相应文件;当文件存在时候,修改文件创建时间。...rpm提供配置文件列表 rpm -q package_name –whatrequires 显示与一个rpm存在依赖关系列表 rpm -q package_name –whatprovides...磁盘上ext3文件系统完整性 fsck.ext3 /dev/hda1 修复/检查hda1磁盘上ext3文件系统完整性 fsck.vfat /dev/hda1 修复/检查hda1磁盘上fat文件系统完整性...源文件夹 目标文件夹 2、touch+文件名:当文件不存在时候,创建相应文件;当文件存在时候,修改文件创建时间。.../share/do 2.链接: ln /usr/share/test hard:创建一个链接文件hard,这时对于test文件对应 存储区域来说,又多了一个文件指向它 26.

3.7K30

从npm发展历程看pnpm高效

/ˌmänəˈliTHik/ /rəˈpäzəˌtôrē/ 严格 pnpm 创建 node_modules 默认并非扁平结构,因此代码无法对任意软件进行访问 以上是4条优势是官网说明和宣传...npm 帮我们下载对应依赖并解压到本地缓存,然后构造node_modules目录结构,写入依赖文件,对应node_modules内部结构也经历了几个版本变化。...npm v1/v2 嵌套依赖 最开始其实没有注重npm管理,只是简单嵌套依赖,这种方式层级依赖结构清晰 但是随着npm增多,项目的迭代扩展,重复越下载越多,造成了空间浪费,导致前端本地项目node_modules...pnpm 弊端 调试问题 所有项目引用都在全局一个地方,如果想对某个进行调试,其他项目正好引用了,本地运行也会收到影响。...比如,如果符号连接原生模块在依赖树里来自超过一个位置,它们会加载失败。 (Node.js 会将它们视为两个独立模块,且会试图多次加载模块,造成抛出异常。)

1.9K40

我当然理解初学者可以不懂,但是感觉有些底层知识点没必要在微信群提问

每个人都是从初学者走过来,我当然是知道纯粹初学者肯定是没办法凭空去获得如何查看自己r安装在电脑什么目录知识点,但是我觉得这个不应该是在微信交流群里面讨论,只需要简单购买书籍去学习最基础r知识点即可...sessionInfo(): 提供当前R会话信息,包括R版本、操作系统、已加载等。 commandArgs(): 返回启动当前R会话时传递给R命令行参数。...这样,你可以避免将敏感信息编码到你脚本中。 了解你环境:使用sessionInfo()函数可以帮助你了解你R环境,包括你R版本,已加载,以及其他有用信息。这在调试问题时特别有用。...并行和分布式计算:R有一些(如parallel、foreach、future、snow等)可以帮助你在本地计算机上进行并行和分布式计算。...以上就是一些在R中与本地计算机交互常用方法,希望对你有所帮助。

15320

环境变量:熟悉陌生人

系统环境变量最常见用途之一是设置一个PATH变量指向一个全局软件/库,以供系统中所有用户使用。 2. 用户环境变量 用户环境变量是Windows系统中本地用户配置文件变量。...如果我们选择在源代码中编码应用程序配置值,则根据外部条件(如部署环境)替换这些值几乎是不可能。...与密码管理器相比,.env 文件更易于本地设置,访问应用程序密钥时没有网络依赖性。 开源支持 有许多开源可以帮助我们从 env 文件加载和管理应用程序密钥。...这就是为什么在使用 .env 文件时我们需要小心原因。 共享/存储时可能意外泄露密钥 由于 .env 文件是纯文本文件,因此在共享硬盘上存储或通过不安全网络发送时很容易意外暴露。...使用dotenv访问.env文件 dotenv可以帮助我们加载存储在项目根目录中.env文件中环境变量。

12510

linux运维30道面试题(上)

前段时间,我在准备面试时搜到一套Linux运维工程师面试题,感觉比较全面,一直保存在草稿,刚在整理后台时翻了出来,干脆就发出来好了,以备不时之需。...-c | sort -n -r | head -5 8.如何查看二进制文件内容 我们一般通过hexdump命令 来查看二进制文件内容。...若系统掉电或磁盘发生问题,可利用fsck命令对文件系统进行检查,用法: 11.Linux系统开机启动顺序 加载BIOS–>读取MBR–>Boot Loader–>加载内核–>用户层init一句inittab...这样就是找到path这个单词所在位置,文本里可能存在多个,多次查找会显示在不同位置。...使用技巧 linux之抓神器tcpdump linux中13个基本Cat命令示例 linux中vi,vim操作技巧

63020
领券