查看软/硬连接

1
2
3
4
5
6
7
8
9
10
11
12
[root@k3s-node4 bin]# ls -l
total 25844
-rwxr-xr-x 1 root root 26451968 Mar 29 02:23 docker-compose
lrwxrwxrwx 1 root root 26 Apr 6 02:16 node -> /usr/local/nodejs/bin/node
-rwxr-xr-x 1 root root 3506 Apr 14 09:27 node-gyp
lrwxrwxrwx 1 root root 25 Apr 6 02:16 npm -> /usr/local/nodejs/bin/npm
-rwxr-xr-x 1 root root 177 Apr 14 09:27 npx
-rw-r--r-- 1 root root 27 Apr 14 09:28 package-lock.json
lrwxrwxrwx 1 root root 25 Apr 14 09:37 pm2 -> /usr/local/nodejs/bin/pm2
lrwxrwxrwx 1 root root 29 Apr 14 09:38 pm2-dev -> /usr/local/nodejs/bin/pm2-dev
lrwxrwxrwx 1 root root 32 Apr 14 09:37 pm2-docker -> /usr/local/nodejs/bin/pm2-docker
lrwxrwxrwx 1 root root 33 Apr 14 09:38 pm2-runtime -> /usr/local/nodejs/bin/pm2-runtime

查看那些文件是docker-compose的硬链接

1
find / -inum 26451968

Linux之建立软连接

  • 解决某个目录空间不足问题。(假如/usr/mysql/data/空间不足, 想移到另一个盘下[/home/data])
1
2
3
4
1. 移动原有data目录至新目录下 mv /usr/mysql/data/ /home/data
2. 创建软链接 ln -s /home/data /usr/mysql/data

这样操作后实际上/usr/mysql/data就像是/home/data的一个快捷方式,而真正存储则在/home/data下。这样我们就可以使其他利用到该目录的进程在无感知的情况下解决磁盘目录不足的问题了。
  • 链接文件, 方便管理(例如将node连接到/usr/local/bin下)

Linux之硬连接

  • ln不加-s则为硬链接

目录不能创建硬链接,硬链接文件可以用rm命令删除

硬链接与软链接区别

1
2
3
4
5
6
7
8
1)ln命令创建硬链接,ln -s命令创建软链接。
2)目录不能创建硬链接,并且硬链接不可以跨越分区系统。
3)目录软链接特别常用,并且软链接支持跨越分区系统。
4)硬链接文件与源文件的inode相同,软链接文件与源文件inode不同。
5)删除软链接文件,对源文件及硬链接文件无任何影响。
6)删除文件的硬链接文件,对源文件及链接文件无任何影响。
7)删除链接文件的源文件,对硬链接无影响,会导致软链接失效。
8)删除源文件及其硬链接文件,整个文件会被真正的删除。