![有什么理由不将 AppImage 文件存储在 /usr/local/bin 中?](https://linux22.com/image/952090/%E6%9C%89%E4%BB%80%E4%B9%88%E7%90%86%E7%94%B1%E4%B8%8D%E5%B0%86%20AppImage%20%E6%96%87%E4%BB%B6%E5%AD%98%E5%82%A8%E5%9C%A8%20%2Fusr%2Flocal%2Fbin%20%E4%B8%AD%EF%BC%9F.png)
我在一些地方看到建议将 AppImage 文件存储在 ~/.local/bin 中。
我一直将本地可执行文件存储在 /usr/local/bin 中。我应该以不同的方式对待 AppImage 吗?例如,将 AppImage 停放在 /usr/local/bin 中是否会阻止提供商对其进行更新,或者导致 /usr/local/bin 需要 sudo 才能访问的问题?
答案1
Appimages 可以在文件系统的任何地方正常运行。当它们被放置在 目录中时PATH
,例如/usr/local/bin
,只需在终端上输入文件名即可运行它们。
除了您自己指出的情况外,不会有任何副作用:/usr/local/bin
是一个系统目录,因此自动更新应用程序映像的工具将无法执行更新。
尽管如此,没有理由将你的应用图像放在那里,除非你将 appimage 重命名为一个可以方便地从命令行输入的简单名称。但这样文件名中的版本信息就消失了。
更好的做法
将您的 appimages 放在任何位置的专用目录中。
然后将 appimage 链接到路径中的目录。将链接重命名为简单名称:
- 如果您是唯一需要运行 appimage 的人,请将其链接到
~/.local/bin
。 - 如果所有用户都应该有访问权限,请将其放在系统目录中并将其链接到
/usr/local/bin
。
例如,如果Joplin-2.9.17.AppImage
在中~/.appimage
,以下命令将以/usr/local/bin
更简单的名称将其链接到。
sudo ln -s ~/.appimage/Joplin-2.9.17.AppImage /usr/local/bin/joplin
- 您无需键入
Joplin-2.9.17.AppImage
,只需键入joplin
即可启动程序 - 您仍然可以轻松查看正在运行哪个版本
- 如果您升级到
Joplin-2.9.18
,则可以用指向新版本的链接替换符号链接。您可以保留旧的 appimage 一段时间,以防新版本出现问题。