欢迎来到电脑知识学习网,专业的电脑知识大全学习平台!

手机版

win7删除软连接-(软连接 删除)

网络知识 发布时间:2022-12-18 20:54:03
win7删除软连接 (软连接 删除)

Linux下的软连接和硬链接


在 Linux 操作系统中链接会分两种,一种被称为硬链接,另一种被称为符号链接,即软链接。而默认情况下,ln 命令产生的是硬链接。

Linux 软硬链接1. 如何查看inode

关于inode是什么,可以看这篇文章:Inode 详解

bash

# 电脑 查看文件和文件夹的inode号$ ll -di /boot / /app# 查看挂载点文件夹的inode号$ df -i2. 做inode增长实验

文件粉碎工具shred:shred -uzvn10 FILE重复随机写入 10 次覆盖源文件,然后最后删除此文件。


# 创建60万个文件的方法1(效率不高)$ for i in {1..600000}; do touch file$1; echo file$i is created;done# 创建60万个文件的方法2(效率高)$ echo file{1..600000} | xargs touch# 删除前20万个文件$ echo file{1..200000} | xargs rm# 在创建的过程中,可以另开一个窗口,用下面命令,每隔1秒运行df -hi命令,可以查看inode的增长情况$ watch -n1 df -hi3. 硬链接、软链接

软链接

就相当于 Windows 的快捷方式,删掉源文件,快捷方式就失效了,软链接就找不到源文件了。

硬链接

相当于多个链接指向同一份数据存储区域,每多一个硬链接,硬链接数+1,如果一个文件,有 n 个硬链接,删除 n-1 个硬链接,源文件还在,直到删除所有硬链接,才会删除源文件。

1. 电脑 复制(cp)

复制过程中,复制软连接相当于复制了快捷方式,速度很快,而且可以跨分区。在复制过程中,复制硬链接分为两种情形:在同一分区复制,相当于多创建一个链接指向原数据存储位置,速度很快。在不同分区复制,相当于把原来分区的数据拷贝过去存储,同时创建一个指向新数据区域的指针,速度比较慢。

2. 删除(rm)

删除过程中,删除软连接相当于删除了快捷方式,源文件还在。在删除过程中,删除硬连接相当于删除了一个到数据块的指针,除非删除所有硬链接文件,源文件才删除。

3. 移动(mv)

移动过程中,移动软连接相当于移动了快捷方式而已。在移动过程中,移动硬连接分为两种情形:在同一分区移动,相当于创建了一个新 inode,指向数据块,并把原来的 inode 删掉在不同分区移动,要把数据块复制到新分区,然后在新分区创建新的 inode 号指向新的数据块,并且把原来分区的 inode 号和数据块都删掉。

4. 软连接支持对目录创建,硬链接不支持

【问题 1】:当我们看到一个磁盘,使用空间没满,但是却提示”no space left on device”

那可能是inode用完了

【问题 2】:如何删除数量很多的文件(比如前面做实验创建的 60 万个文件)

技巧是使用管道|和xargs,管道|后面会讲,管道是指的是前面命令的输出作为后面命令的输入。xargs,前面命令多个输出,可以用xargs一个个的传给后面的命令,而不是已下载全传给后面命令,可以解决参数太长的情况ls | xargs rm


# 创建不成功ln dir1 dir2# 创建成功ln /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/ens33

5. 如何写软连接相对路径

软连接写相对路径,要根据软连接文件的路径来写。


# 例如要在把/etc/issue 软连接到/app/d1/d2/d3/ilinkln -s ../../../../../etc/issue /app/d1/d1/d3/ilink

6. 如何软链接设备文件

设备文件比较特殊,如果要创建设备文件的链接,需要用到mknod命令:


[root@centos7 etc]# ll /dev/sdabrw-rw----. 1 root disk 8, 0 May 22 09:06 /dev/sda #得到主设备号和复设备号。mknod /app/sda b 8 0ll -i /dev/sda /app/sda

软链接练习


# 1. 创建一个目录tomcat-8.5.23,创建一个软连接tomcat到这个目录;在创建一个目录tomcat-9.0.1, 把tomcat的软连接指向新的tomcat-9.0.1目录。ln -sv tomcat-8.5.23 tomcatrm -rf tomcatln -sv tomcat-9.0.1 tomcat# 2. 创建一个目录/mnt/lfs/tools, 然后创建/mnt/lfs/tools的软连接/tools,一般有这样的命令:ln -sv /mnt/lfs/tools /tools,如何可以更短?mkdir -v /mnt/lfs/toolsln -sv /mnt/lfs/tools /4. file 命令的使用

常用选项

-b 列出文件辨识结果时,不显示文件名称-f 列出文件中文件名的文件类型-F 使用指定分隔符号替换输出文件名后默认的”:”分隔符-L 查看对应软链接对应文件的文件类型--help 显示命令在线帮助

注意事项

file命令就是查看的文件头部的信息,可以用hexdump查看源文件源码信息 (也可以用xxd命令看)。如果是二进制文件,会显示二进制的头信息。如果是文本文件,就直接是文本。


[root@centos7 ~]# hexdump -C -n 100 /bin/ls00000000 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 |.ELF............|00000010 02 00 3e 00 01 00 00 00 48 4b 40 00 00 00 00 00 |..>.....HK@.....|00000020 40 00 00 00 00 00 00 00 18 c4 01 00 00 00 00 00 |@...............|00000030 00 00 00 00 40 00 38 00 09 00 40 00 1e 00 1d 00 |....@.8...@.....|00000040 06 00 00 00 05 00 00 00 40 00 00 00 00 00 00 00 |........@.......|00000050 40 00 40 00 00 00 00 00 40 00 40 00 00 00 00 00 |@.@.....@.@.....|00000060 f8 01 00 00 |....|00000064[root@centos7 ~]# hexdump -C -n 100 /etc/issue00000000 5c 53 0a 4b 65 72 6e 65 6c 20 5c 72 20 6f 6e 20 |\S.Kernel \r on |00000010 61 6e 20 5c 6d 0a |an \m.|000000165. readlink 命令读取软连接指向的真实路径


[root@centos7 ~]$ readlink /etc/redhat-releasecentos-release

文章作者: Escape

文章链接: https://www.escapelife.site/posts/1b853b12.html

版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Escape !


电脑
责任编辑:电脑知识学习网