如何仅删除一位用户的消息传递菜单?

det*_*tly 6 messaging-menu

如何在 Ubuntu 11.10 中的 Unity 或 Unity-2D 下为一个特定用户(而不是所有其他用户)删除整个消息菜单?

Sav*_*vic 1

备份您的重要文件。我尝试了下面的建议,结果是它显示“消息”图标,但单击时没有任何子选项。不知道对系统有没有影响。

在此输入图像描述

我的建议是更改此服务的允许用户组。我认为你可以设置谁可以运行命令(indicator-messages-service):

$ ls -l /usr/lib/indicator-messages/indicator-messages-service
-rwxr-xr-x 1 root root 65016 2011-09-29 03:02 /usr/lib/indicator-messages/indicator-messages-service
Run Code Online (Sandbox Code Playgroud)

r = 读取,w = 写入,x = 执行(打开文件夹或运行程序) - rwx rx rx = r/w/x 表示所有者(当前为 root),r/x 表示组“root”,r/x 表示其余组(用户不是 root 且不在组 root 中)

  1. 创建一个群组:

    sudo addgroup msgok
    
    Run Code Online (Sandbox Code Playgroud)
  2. 添加您想要允许消息指示器的用户:

    sudo adduser myuser msgok
    
    Run Code Online (Sandbox Code Playgroud)

    将“myuser”更改为您的用户。对其他用户重复此操作。用户必须注销/登录才能使更改生效。

  3. 更改组:

    sudo chgrp msgok /usr/lib/indicator-messages/indicator-messages-service
    sudo chmod 754 /usr/lib/indicator-messages/indicator-messages-service
    
    Run Code Online (Sandbox Code Playgroud)

“754”基本上允许为用户 root 和组“msgok”中的用户执行消息服务。它还会禁用其他用户执行此服务,而不是 root 用户或“msgok”组中的用户。

要撤消更改:

sudo chmod 755 /usr/lib/indicator-messages/indicator-messages-service
sudo chown root:root /usr/lib/indicator-messages/indicator-messages-service
Run Code Online (Sandbox Code Playgroud)