.desktop ext 的权限

.desktop ext 的权限

创建.desktop文件失败。usr/share/applications用户拥有 r+w 权限。我需要更改为 rwx 才能创建可行文件吗.desktop

sudo chmod u+x因为我的用户无法工作(‘u+x’之后缺少操作数)。

尝试过 Freedesktop,但它似乎没有涵盖这方面...

权限不是我的强项,而且我是新手......非常沮丧。

[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=Foo
Comment=FooApp
Exec=/usr/share/applications/simi1.py
Icon=/usr/share/icons/hicolor/48x48/apps/pic.png
Terminal=true
StartupNotify=false

我知道这是怎么可能的...我的文件显然在目录中

错误和文件 ls 信息的屏幕截图

答案1

首先,你需要有 root 权限才能执行此操作。其次,你需要对 中的文件具有可执行权限。在我自己的机器上的目录上进行/usr/share/applications简单查看,结果显示如下:ls -l

$ ls -l
total 2864
-rw-r--r-- 1 root root  5511 Dec 19 08:14 alacarte.desktop
-rw-r--r-- 1 root root  3417 Dec 17 15:21 assistant-qt5.desktop
-rw-r--r-- 1 root root 14329 Jan 23 13:37 bamf-2.index
-rw-r--r-- 1 root root   296 Nov  2  2015 bastet.desktop
-rw-r--r-- 1 root root  6305 Jan 16  2017 bleachbit.desktop
-rw-r--r-- 1 root root  6333 Aug 30 13:38 bleachbit-root.desktop
...

请注意,以上文件都不是可执行文件;换句话说,应用程序目录中的文件(例如/usr/share/applications或)~/.local/share/applications是不可执行的,因为没有人会执行它们。桌面文件夹中的文件是可执行文件,因此您可以执行它们,但没有人会进入/usr/share/applications运行应用程序。

我们来解决第一个问题:

您可以通过运行sudo -i并输入用户密码来成为 root 用户。成为 root 用户后,您可以使用以下任一方式创建桌面文件

# gedit /usr/share/applications/[file].desktop

或者

# nano /usr/share/applications/[file].desktop

现在您可以根据需要输入文件的内容。

答案2

默认情况下,root 应该是 /usr/share/applications 目录的所有者。

您可以使用 sudo 来创建和编辑该文件吗?

在控制台上:

sudo nano /usr/share/applications/myApp.desktop

或者可能 :

sudo gedit

然后写入文件并保存到目录中。

最佳做法是使用 sudo 以 root 权限创建/编辑目录中的文件,而不是更改这些权限。

或者,您可以将文件写入主目录,然后使用 sudo 将其复制到 /usr/share/applications

sudo cp myApp.desktop /usr/share/applications/

最后,如果您想将此 myApp.desktop 文件用作桌面上的快捷方式,只需:

cp /usr/share/applications/myApp.desktop ~/Desktop/

相关内容