Linux中ln -s命令为什么会失败?

Linux中ln -s命令为什么会失败?,第1张

ln命令的使用方式为:

ln [参数][源文件或目录][目标文件或目录]

加参数-s后也就是软连接,请确认使用格式是否正确,或源文件或目录是否存在。

示例:

ln -s ./license.bea ./license.bea.slink

截图:

什麽是 symbolic links?就其字面而言,其功用在於制作档案或目录的连结(产生捷 )。 symbolic links可以创造一个和原本档案有相同性质的目录(linked file),它不需太多储存空间的原因在於它是一个指向原本档案的连结,而连结如何指向档案是hard link和symbolic link的其中一个不同点。

ln预设产生的连结是hard连结,指向档案的hard连结和原本的档案没什麽差别。不论hard连结的名称和原本档案的名称取得一样或是不一样,对原本档案或对hard连结做的改变都会影响到原本的档案。 hard连结因为没办法对目录做连结,而不能延伸档案系统.。

symbolic连结则包含了要被连过去档案名字,有可能跨越档案系统连结到目录,如果後面接一或二个参数, link会建立一连结到一个存在的档案source_file,如果有给target_file,则连结可以被指定名称(taget_flie 的名称),否则连结会建立在目前所在的目录。只要有目录被指定当 source_file,则连结只会使用source_file的最後一部份当source_file。

建立档案连结的指令为 "ln",以下是所做的范例 :

hard link就是复制原来的档案,但实际只保留一份, 如果改变连结中的ㄧ个档案,其馀连结也跟著改变。 且hard link只局限於同一磁碟分割区中

#ln /usr/lib/libGLU.so.1.3 libGLU.so.3

symbolic link代表ㄧ寻找特定档案的路径,如果原来的档案被移除,该连结就会无法使用。 symbolic link可以连结不同分割区

#ln -s /usr/java/javaplug.lib /usr/mozilla/plugins/

-s, --symbolic

make symbolic links instead of hard links

我这里是这样:$ ls -l /usr/lib/libstdc++.so.6*lrwxrwxrwx 1 root root 19 2010-01-13 08:19 /usr/lib/libstdc++.so.6 ->libstdc++.so.6.0.13-rw-r--r-- 1 root root 962800 2010-01-10 23:53 /usr/lib/libstdc++.so.6.0.13如果你在终端运行这个命令上面的是红色(你的应该是红色的)表示已经断掉了,你仔细看看你那里有没有/usr/lib/libstdc++.so.6.10这个文件你可以直接把这个链接删除,然后重新建一个就行了(注意,需要root权限)方法如下:# ln -s /usr/lib/libstdc++.so.6.10 /usr/lib/libstdc++.so.6然后,你再查看就应该是好的了


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7200825.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-02
下一篇2023-04-02

发表评论

登录后才能评论

评论列表(0条)

    保存