有什么理由不将 AppImage 文件存储在 /usr/local/bin 中?

有什么理由不将 AppImage 文件存储在 /usr/local/bin 中?

我在一些地方看到建议将 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 一段时间,以防新版本出现问题。

相关内容