Linux入门基础 #2 GNOME的配置与基本操作

GNOME项目使用最新的科技,为用户从头打造了全新的现代桌面——GNOME 3。它有以下特性:

  • 提供了一个现代化的默认视觉主题和字体
  • 能让您轻松访问所有窗口和程序的活动视图
  • 内置整合的桌面消息服务
  • 集成改进的Nautilus文件管理器
  • 综合系统通知服务
  • 新的系统设置程序
  • 快速的活动搜索功能
  • 还有更多特色:窗口平铺

简介

GNOME 3提供了2种用户界面:Gnome Shell(新的标准布局)和备用模式(Fallback Mode)。GNOME会话会自动检测您的计算机是否适合运行GNOME Shell,若不适合则会自动选择备用模式。

备用模式(在您使用gnome-panel和 Metacity来取代GNOME Shell和Mutter时)非常类似GNOME 2布局。

您仍然可以在使用备用模式时将Metacity更换为您喜欢的窗口管理器。

(转载者注:小伽同学一直觉得GNOME3没有开始菜单,而把程序快捷方式放在活动面板的做法,很不明智,因为随着用户安装程序的增加,活动面板将变得非常混乱,而没有办法进行文件夹方式的分类管理。于是,一直准备将界面转为GNOME2或KDE,可是就在转界面的前夕,偶然发现FALLBACK MODE这个设置,结果界面变得跟GNOME2差不多,于是喜出望外。)

在新系统上安装

GNOME 3在[extra]软件库中。 gnome 包包括基本桌面环境和软件,gnome-extra包包括剩下的。假如您不想安装GNOME全部的软件包,在安装他的时候注意看软件包描述(或者你可以先安装再删除他们)。

举例:

# pacman -Syu gnome
# pacman -S gnome-extra

D-BUS守护进程

GNOME桌面依赖 D-Bus 守护进程以正确运行,参照dbus 来设置。

运行GNOME

为了更好地整合桌面推荐使用GDM登录管理器。其它登录管理器,如SLiM也能运作。参阅 Display_Manager_(简体中文) 来了解桌面环境的启动。

登陆管理器为系统提供一个有限的控制,全局系统控制请参考 PolicyKit wiki article 。

# pacman -S gdm

如果您更喜欢从控制台下启动GNOME,把下面一行添加到您的~/.xinitrc文件中。确保它是唯一的一行(把标准~/.xinitrc中的for 段删除,它有可能导致出错),并且是唯一以exec开头的一行(参阅xinitrc_(简体中文)):

#ONLY THIS LINE
exec ck-launch-session gnome-session

现在GNOME将在您使用以下命令时启动:

$ startx

使用 GNOME shell

GNOME 小抄

GNOME 网站 GNOME Shell cheat sheet 讲解了怎么切换任务,使用键盘,窗口控制,使用面板,预览模式等。

重启 GNOME shell

当修改过界面之后你可能需要重启 GNOME shell。你可以重登陆,不过有一个简单快捷的方法。 按 Alt + F2 再输入 r 再 Enter

GNOME Shell 崩溃

一些特定的微调或者经常性重启 Shell 会导致 shell 在将要重启的时候崩溃。这个时候你必须做好心理准备,然后强制注销。有一些修改,例如在GNOME Shell 和fallback mode, 之间切换,不能简单地使用r重启;必须重登陆来应用这个效果。

丑话说在前面,在重启shell前提前把有用的文档保存(或者关闭)。虽然这不是必要的,因为窗口和文档在重启了shell之后应该还在。

定制 GNOME 外观

外观概览

GNOME 3 是重新设计的,但是像大多数大型软件项目一样,他是很多不同时间的部分组装起来的。他没有一个 无所不包 的配置工具。新的系统设置 比以前的控制面板有很大的改进。系统设置 组织得很好,但是你可能想要更深层次地改变外观。

以前你所熟悉的配置工具现在有的好用,有的不好用了。有些设置选项隐藏着,不太容易找到。许多设置将会迁移到新的工具,或者随着时间的迁移暴露在大家面前,扩展最新的GNOME桌面。

Gsettings
gsettings 是一个命令行工具,他把设置文件存储为二进制格式,而不是像以前一样使用XML。在 Customizing the GNOME Shell 有个展现gsettings威力的好教程。
使用gnome-tweak-tool

这个工具可以定制字体,主题, 标题栏和其它一些实用的设置。

# pacman -S gnome-tweak-tool

3.0.3之后的版本只有在gnome-shell安装的时候才工作(假如你使用fallback mode,你一样要安装shell,这是一个bug)。Bugzilla bug report here.

通过修改settings.ini改变GTK3主题

就像用 ~/.gtkrc-2.0 配置GTK2主题一样,我们用${XDG_CONFIG_HOME}/gtk-3.0/settings.ini 来配置GTK3主题。

$XDG_CONFIG_HOME 变量一般设置为 ~/.config

GNOME3默认主题为Adwaita,,他是 gnome-themes-standard. 的一部分。别主题可以在这里找到Deviantart web site.举例:

 [Settings]
 gtk-theme-name = Adwaita
 gtk-fallback-icon-theme = gnome
 # next option is applicable only if selected theme supports it
 gtk-application-prefer-dark-theme = true
 # set font name and dimension
 gtk-font-name = Sans 10

重启 GNOME shell 来应用设置。更多的GTK选项可以在这里找到GNOME developer documentation.

图标主题

使用gnome-tweak-tool v. 3.0.3及之后的版本设置,把你想要设置的图标主题放在 ~/.icons

通常,GNOME3的图标主题和GNOME2的兼容,你不必为默认图标锁住。把你钟爱的图标主题文件夹放在 ~/.icons 里面。例如:

$ cp -R /home/user/Desktop/my_icon_theme ~/.icons

你可以在 gnome-tweak-tool 的 interface.' 里面应用新的鼠标主题my_icon_theme 。

或者,你可以选择不使用gnome-tweak-tool直接修改配置文件。添加GTK图标主题到 ${XDG_CONFIG_HOME}/gtk-3.0/settings.ini

${XDG_CONFIG_HOME}/gtk-3.0/settings.ini
... previous lines ...

gtk-icon-theme-name = my_new_icon_theme

Nautilus

移除侧边栏计算机中的文件夹

显示的文件夹在 ~/.config/user-dirs.dirs 里配置,他可以被任何编辑器直接修改。运行 xdg-user-dirs-update 来应用修改。但是建议设置文件权限为只读。

地址栏显示文本路径

标准的Nautilus工具栏用按钮来显示路径。你可以用快捷键来使他显示文本路径。按 Ctrl + L

假如你想让他始终显示为文本路径,用gsettings如下所示。 注意:这样修改之后,你不能回到按钮路径。只有在设置为 false 的情况下,可以通过快捷键来使两种模式都可用。

gsettings set org.gnome.nautilus.preferences always-use-location-entry true

GNOME面板

在时间栏显示日期

默认GNOME在顶栏只显示星期和时间。可以通过下面的命令修改,修改立即生效。

# gsettings set org.gnome.shell.clock show-date true
隐藏辅助功能图标

在 $HOME/.local/share/gnome-shell/extensions 里面新建文件夹noa11y.icon@panel.ui ,建立两个新文件:

~/.local/share/gnome-shell/extensions/noa11y.icon@panel.ui/extension.js
const Panel = imports.ui.panel;

function main() {
  Panel.STANDARD_TRAY_ICON_SHELL_IMPLEMENTATION['a11y'] = '';
}
~/.local/share/gnome-shell/extensions/noa11y.icon@panel.ui/metadata.json
{
  "shell-version": ["3.0"],
  "uuid": "noa11y.icon@panel.ui",
  "name": "na11y",
  "description": "Turn off the ally icon in the panel"
}

重启 GNOME shell, 辅助功能图标就隐藏了。如果这个扩展将来没有效果,修改metadata.json.里面的 shell version 。

或者你想全局禁用辅助功能图标。打开 /usr/share/gnome-shell/js/ui/panel.js ,找到下面一行,注释或者删除之,重启shell。

'a11y': imports.ui.status.accessibility.ATIndicator,
隐藏蓝牙图标

假如你想完全关闭蓝牙服务,参照登录GNOME 3后自动启动程序

在 ~/.local/share/gnome-shell/extensions 里面新建文件夹nobluetooth.icon@panel.ui ,建立两个文件:

~/.local/share/gnome-shell/extensions/nobluetooth.icon@panel.ui/extension.js
const Panel = imports.ui.panel;

function main() {
  Panel.STANDARD_TRAY_ICON_SHELL_IMPLEMENTATION['bluetooth'] = '';
}
~/.local/share/gnome-shell/extensions/nobluetooth.icon@panel.ui/metadata.json
{
  "shell-version": ["3.0"],
  "uuid": "nobluetooth.icon@panel.ui",
  "name": "nbluetooth",
  "description": "Turn off the bluetooth icon in the panel"
}

重启 GNOME shell, 图标就隐藏了。如果这个扩展将来没有效果,修改metadata.json.里面的 shell version 。

显示电池图标

安装 gnome-power-manager.

# pacman -S gnome-power-manager
在状态菜单禁用休眠

一个快速的方法是修改 /usr/share/gnome-shell/js/ui/statusMenu.js 第153行来全局禁用他。下次启动GNOME shell生效。

// this._haveSuspend = this._upClient.get_can_suspend();  //  注释掉这行
this._haveSuspend = false;                                //  使用这行

然而这个效果升级一次GNOME shell就失效了。一个有效的做法是安装 gnome-shell-extension-alternative-status-menu

# pacman -S gnome-shell-extension-alternative-status-menu
去掉注销的延迟

用下面的修改来省掉注销的确认和60秒的的延迟。

这个对话框一般出现在你用状态菜单注销的时候。这个修改对于 关机 也生效。这个不是全局修改,只对使用该命令的用户生效。使用该命令立即生效。

$ gsettings set org.gnome.SessionManager logout-prompt 'false'

活动视图

从应用程序视图移除应用程序项目

GNOME3用.desktop文件来填充应用程序视图。这些文件在/usr/share/applications。Nautilus不把他们识别为纯文本文件,你不能直接编辑他们。使用终端显示他们

$ ls /usr/share/applications

要想系统全局修改,直接编辑他们。要想只对自己生效,把他们复制到home文件夹:

$ cp /usr/share/applications/* ~/.local/share/applications/

你可以按照你的想法编辑.desktop文件。注意,删除一个.desktop文件并不卸载软件,只是删除他的桌面特性(如文件关联,快捷键等)。添加下列选项到.desktop文件来使foo不再显示在应用程序视图:

$ echo "NoDisplay=true" >> foo.desktop
怎样改变应用程序图标大小

对于很多人来说,一个很怪异的事情就是GNOME3的图标大小。当遇到一个小屏幕加很多程序的时候很痛苦。很高兴这里有一个方法能改变这中情况,修改GNOME shell主题。直接修改系统文件夹(别忘了备份)或者复制到你的用户文件夹。

默认主题:

/usr/share/gnome-shell/theme/gnome-shell.css

自定义主题:

/usr/share/themes/<UserTheme>/gnome-shell/gnome-shell.css

修改 gnome-shell.css ,用下面的值替换:

.icon-grid {
    spacing: 18px;
    -shell-grid-item-size: 82px;
}

.icon-grid .overview-icon {
    icon-size: 48px;
}

重启 shell (ALT+F2 按 'r'). 如果崩溃了, 重新登陆。

默认主题的小图标版在AUR上提供。

禁止鼠标接触 hot corner(左上角)切换活动视图

要禁用这一功能,编辑/usr/share/gnome-shell/js/ui/layout.js(Gnome 3.0.x中是panel.js)文件的这一段:

layout.js
 this._corner = new Clutter.Rectangle({ name: 'hot-corner',
                                       width: 1,
                                       height: 1,
                                       opacity: 0,
                                       reactive: true });icon-size: 48px;
 }

reactive的值true修改为false,重启Gnome Shell即可。

标题栏

减少标题栏高度
# sed -i '/title_vertical_pad/s|value="[0-9]\{1,2\}"|value="0"|g' /usr/share/themes/Adwaita/metacity-1/metacity-theme-3.xml

重启 GNOME shell, 垂直间距从14到0,给你更时尚的外观。

恢复默认值:

sudo pacman -S gnome-themes-standard
标题栏按钮重新排序

目前只能通过 gconf-editor 来修改。

举个例子,把关闭和最小化按钮移大左边。打开 gconf-editor ,找到 desktop.gnome.shell.windows.button_layout 键,修改他的值为close,minimize: (冒号就是左边与右边之间的空格)。修改为你需要的按钮,但是一个按钮不能出现两次。同时,一些按钮已经被抛弃了。重启 GNOME shell 看看效果。

当最大化时隐藏标题栏
# sed -i -r 's|(<frame_geometry name="max")|\1 has_title="false"|' /usr/share/themes/Adwaita/metacity-1/metacity-theme-3.xml

重启 GNOME shell, 这样修改之后你会发现你很难去离开最大化状态。

用合适的按键组合, Alt + F5Alt + F10 或 Alt + Space 解决这个问题。

为了防止 metacity-theme-3.xml 在每次 "gnome-themes-standard" 升级的时候都被覆盖,添加文件名和NoUpgrade/etc/pacman.conf

/etc/pacman.conf
... previous lines ...

# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
# IgnorePkg   =
# IgnoreGroup =

NoUpgrade = usr/share/themes/Adwaita/metacity-1/metacity-theme-3.xml    # Do not add a leading slash to the path

... more lines ...

恢复默认主题设置:

# pacman -S gnome-themes-standard

登录管理器

想要修改登录管理器(GDM)的特性,你需要运行下面几行。第一个命令允许所有用户,包括 "gdm",访问X设置(临时的)。这个方法使系统临时脆弱,因此被推荐使用。第二个命令打开用户 "gdm" 的bash会话。注意: 通常 gdm 的用户提示符是$,实际上,就像-bash-4.2$一样。

# xhost +
# su - gdm -s /bin/bash
$ dbus-launch

第三个命令输出 DBUS_SESSION_BUS_ADDRESS 和 DBUS_SESSION_BUS_PID。我们必须export这些变量。

$ export DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-Jb433gMQHS,guid=fc14d4bf3d000e38276a5a2200000d38
$ export DBUS_SESSION_BUS_PID=4283

下面的命令组合了 dbus-launch and export 。(dbus-launch有命令行参数,避免了sed 的管道;这种方法看来只export了第一个变量。)

$ `dbus-launch | sed "s/^/export /"`

你必须用prep-gdm-vars export变量才能使用复制和粘贴。第二个脚本是设置GDM背景用的。把这些文件放在一个合适的位置,用chmod加上运行的权限。如下例所示:

/usr/local/bin/prep-gdm-vars
#  This script must be run using '.' or 'source'
`dbus-launch | sed "s/^/export /"`
/usr/local/bin/show-avail-gdm-bkgd
#!/bin/bash
#  Usage:  show-avail-gdm-bkgd  [folder]
#  Specify any folder within /usr/share/backgrounds.
#  If you omit the folder, you'll be shown available choices.
file_part="/usr/share/backgrounds/"
if ! [ $1 ]; then
  echo -en \\n  Please specify one of these directories:\\n\\n\\040
  ls $file_part; echo; exit 1; fi
ls ${file_part}/$1
/usr/local/bin/revise-gdm-bkgd
#!/bin/bash
#  Usage:  revise-gdm-bkgd gnome/filename.jpg
#  Specify any file path within /usr/share/backgrounds.
org_part="org.gnome.desktop.background picture-uri"
file_full="/usr/share/backgrounds/$1"
# Trap when argument is: missing, a mere directory, a bad filename.
if ( ! [ $1 ] || [ -d $file_full ] ); then
  echo -en \\n Specify a file.  Use this example:
  echo -e \ \ revise-gdm-bkgd \ gnome/TwoWings.jpg\\n; exit 1; fi
if ! [ -r $file_full ]; then
  echo -e \\n Specifed file does not exist or is not readable.\\n; exit 2; fi
GSETTINGS_BACKEND=dconf gsettings set $org_part "file://${file_full}"

确认dconf-service是否在运行,如果没有运行,运行之

$ /usr/lib/dconf/dconf-service &
登录管理器壁纸

在会话变量被如上设置之后,你就可以发出命令检索或者设置GDM项目。下列命令检索和设置GDM壁纸。

$  GSETTINGS_BACKEND=dconf gsettings get org.gnome.desktop.background picture-uri
 $  GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.background picture-uri 'file:///usr/share/backgrounds/gnome/SundownDunes.jpg'
 
 $  GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.background picture-options 'zoom'
 ## Possible values: centered, none, scaled, spanned, stretched, wallpaper, zoom

你必须指定一个 "gdm" 有读权限的文件,GDM不能读你的home文件夹。

下面是一个用户用上面的脚本设置GDM壁纸的会话过程。以一个普通用户的终端开始,假设他能以root身份打开一个bash。root用户再以 "gdm" 身份打开一个会话来换壁纸。

$ su -
Password: 

# xhost +
access control disabled, clients can connect from any host
# su - gdm -s /bin/bash

-bash-4.2$ . prep-gdm-vars   #  Must use . to execute this script!
access control disabled, clients can connect from any host

-bash-4.2$ show-avail-gdm-bkgd gnome
Aqua.jpg            FreshFlower.jpg  Spaceflare-nova.jpg       Terraform-green.jpg   YellowFlower.jpg
Blinds.jpg          Garden.jpg       Spaceflare-supernova.jpg  Terraform-orange.jpg
BlueMarbleWest.jpg  GreenMeadow.jpg  SundownDunes.jpg          TwoWings.jpg
FootFall.png        Spaceflare.jpg   Terraform-blue.jpg        Wood.jpg

-bash-4.2$ revise-gdm-bkgd gnome/GreenMeadow.jpg

-bash-4.2$ logout

# logout
$

revise-gdm-bkgd 脚本也可以用命令的方式来修改你的普通用户壁纸。诚然,假如你如此做的话,这个命令和名称很不相符。

登录界面大字体

这个修改用scaling factor放大你的登陆界面字体。就像在桌面上你使用辅助功能一样。

在做这个修改之前,你必须 export GDM会话变量

$ GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.interface text-scaling-factor '1.25'
关闭声音

这个调整让你在登录界面通过快捷键禁用声音反馈。你必须首先 export GDM会话变量

$ GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.sound event-sounds 'false'
按电源键启用交互界面

默认安装设置电源键功能是休眠。关机显示会话或许会更好一点。你必须首先export GDM会话变量

 $ GSETTINGS_BACKEND=dconf gsettings set org.gnome.settings-daemon.plugins.power button-power 'interactive'
 $ GSETTINGS_BACKEND=dconf gsettings set org.gnome.settings-daemon.plugins.power button-hibernate 'interactive'
 $ gsettings list-recursively org.gnome.settings-daemon.plugins.power
改变GDM的键盘布局

由于GDM 3无视您的GNOME键盘设置,您得在Xorg配置文件中设置您的键盘布局。参阅此处: Beginner's Guide.

其他技巧

参见:GNOME Tips (简体中文)

杂项设置

登录GNOME 3后自动启动程序

您可以使用gnome-session-properties工具来指定登录后自动启动的程序。它是gnome-session包的一部分。

$ gnome-session-properties
登录GNOME 3后启用numlock

从 [community]软件库中安装numlockx。然后添加一个自动启动命令运行numlockx。

# pacman -S numlockx
$ gnome-session-properties

上面的命令打开启动应用程序首选项。点击 添加 ,输入以下内容:

Name:Numlockx
Command:/usr/bin/numlockx on
Comment:Turns on numlock.

这个不是系统全局的改变,为你的每个用户重复上述步骤。

移动对话窗口

对话窗口默认配置为不可移动,某些情况下很不方便。可以使用gconf-editor更改这一配置。修改以下配置:

/desktop/gnome/shell/windows/attach_modal_dialogs

修改后重启 GNOME Shell 即可。

GNOME shell扩展

GNOME Shell可以使用第三方扩展来定制。这些扩展提供了一些额外的功能,如:让您拥有一个可以一直显示的Dock,并让您可以更换Shell的主题。更多有关目前可用的扩展功能的信息可以在这里 找到。最新的关于扩展的文章你可以通过这个链接搜索到。

[extras]软件库有一些可以单独安装的扩展。(最新版本的扩展你可以用他的代码snapshot)列表在这里

 $ pacman -Ss gnome-shell-extension

你可以在AUR里面找到一些别的有用的扩展。一些值得一提的是:

在安装完一个扩展之后重启 GNOME shell, 。故障排除信息参照安装扩展导致GNOME停止工作

通过控制台设定默认虚拟终端

gsettings在 GNOME 3 中代替了gconftool-2。它可以被用来手动设置如默认终端。这一设定与nautilus-open-terminal相关。

使urxvt作为进程运行的命令如下:

$ gsettings set org.gnome.desktop.default-applications.terminal exec urxvtc
$ gsettings set org.gnome.desktop.default-applications.terminal exec-arg "'-e'"
Note: 对于  nautilus-open-terminal,你需要设置一个参数(如  -e),这样他就能自动 cd到你所在的文件夹。

中键模拟

GNOME3禁止中键模拟功能,无论你Xorg怎么设置(Emulate3Buttons)。用下列命令打开他:

gsettings set org.gnome.settings-daemon.peripherals.mouse middle-button-enabled true

Xmonad

Xmonad 是一个平铺窗口管理器。

升级到GNOME3会让你的xmonad设置失效。启用备用模式,添加两个文件是它生效

/usr/share/gnome-session/sessions/xmonad.session
[GNOME Session]
Name=Xmonad session
RequiredComponents=gnome-panel;gnome-settings-daemon;
RequiredProviders=windowmanager;notifications;
DefaultProvider-windowmanager=xmonad
DefaultProvider-notifications=notification-daemon
/usr/share/xsessions/xmonad-gnome-session.desktop
[Desktop Entry]
Name=Xmonad GNOME
Comment=Tiling window manager
TryExec=/usr/bin/gnome-session
Exec=gnome-session --session=xmonad
Type=XSession

下次你登录,你可以选择 Xmonad GNOME 作为你的会话。

启用隐藏特性

GNOME 3隐藏了许多实用的选项,您可以使用dconf-editor去定制它们。您可以使用gconf-editor定制尚未迁移到dconf的选项。

改变热键

dconf-editor中,启用org.gnome.desktop.interface "can-change-accels"。

一个改变移动文件到回收站的快捷键的例子:Nautilus默认设置是 Ctrl + Delete

  • 打开Nautilus,选择任意文件,点击菜单栏的 编辑
  • 鼠标悬停在 移动到回收站 菜单项上。
  • 悬停时,按下 Delete ,默认快捷键会被重置。
  • 现在按下您想设作快捷键的按键。
  • 再次按下 Delete ,快捷键会变为 Delete 。

确认您已经选中一个文件,否则"移动到回收站"菜单项会是灰色不可用的。您应当在此之后禁用 "can-change-accels" 以防止意外的快捷键改变。

如何通过状态栏菜单关机

现在用户点击右上角的状态栏菜单时会发现,关机选项似乎被隐藏了起来。如果您想通过状态栏菜单关闭您的系统,点击它,然后按下Alt。"待机"选项将立刻变为"关机...",它将使您能正确地关闭您的系统。

如果你全局禁用了休眠在 此文档别的地方,你不需要做这个步骤。

您也可以安装"Alternative Status Menu"扩展。这将在通常状态菜单中的"挂起"选项下新增一个常驻的"关机..."选项。

启用集成的消息(Empathy)

Empathy是集成消息系统背后的引擎。所有基于您的消息账户的系统设置将不会出现,除非 telepathy 组的软件包或至少其中一个后端(例如:telepathy-gabbletelepathy-haze)被安装。

这些软件包没有被默认的Arch GNOME安装所包括,Empathy 也没有给出很好的错误信息提示,它没能默默地开始运作。您可以通过以下命令安装它们:

# pacman -S telepathy

没有telepathy,empathy就不能打开账户管理并且停留在这个状态。就算你把empathy干净地退出,/usr/bin/empathy-accounts还会继续运行,在你新建账户之前,你必须杀掉他。

Freedesktop.org Telepathy Wiki查阅telepathy组件。

启用备用模式

如果gnome-shell不存在或您的显卡不支持混成特效的话,您的会话将自动以备用模式启动。

如果您想在安装了gnome-shell的情况下启用备用模式(Fallback Mode)的话,打开系统设置。打开系统信息>图形。把强制使用备用模式调为开启

你也可以选择用gsettings命令来选择会话类型。

$ gsettings set org.gnome.desktop.session session-name 'gnome-fallback'

重新登录应用设置。禁用备用模式,用'gnome' 代替 'gnome-fallback'。

疑难解答

GNOME登录需要花很长的时间

paprefs察看你是否启用PulseAudio Network 。只要有任何音频设置启用了,在启动后gnome挂起大约一分钟。

一个方案是新建一个用户,用新建的用户登录。另一个方案是移动~/.gconf~/.gconfd 和~/.conf/dconf文件夹到别的地方。重登录看问题是否还在。

如果不再延迟,一个个尝试你的设置,看看是哪个导致的错误。

安装扩展导致GNOME停止工作

如果安装这些扩展导致GNOME停止工作,那您必须首先将 user-theme 和 auto-move-windows扩展从它们的安装文件夹中移除。

安装目录可能是~/.local/share/gnome‑shell/extensions,/usr/share/gnome‑shell/extensions, 或 /usr/local/share/gnome‑shell/extensions中的一个。删除这两个扩展文件夹可能解决问题。如果不能,逐个扩展尝试。

移除或添加扩展到这些文件夹会将它们从系统移除或安装。更多有关GNOME Shell扩展的信息可以在这里 找到。

扩展在GNOME3升级后不工作了

找到扩展的安装目录,可能是~/.local/share/gnome-shell/extensions 或/usr/share/gnome-shell/extensions.

编辑扩展子文件夹中的每一个 metadata.json

Insert:"shell-version": ["3.0"]
Instead of (for example):"shell-version": ["3.0.1"]
You might instead use:"shell-version": ["3.0.0", "3.0.1", "3.0.2"]


"3.0" 是最好的选择,这个表示扩展能在所有 3.0.x GNOME Shell版本下工作。

从休眠恢复后屏幕没有锁

只有从GNOME状态菜单睡眠,菜单才会锁定。如果你用电源键睡眠或者休眠,在恢复后屏幕不会锁定。这是一个dconf的配置文件错误。

打开dconf-editor ,找到 org.gnome.power-manager.,去掉 lock-use-screensaver 的对勾。

# gsettings set org.gnome.power-manager lock-use-screensaver 'false'

现在你用状态菜单,电源键或者快捷键休眠,睡眠,恢复的时候你的屏幕应该被锁定了。Bug report: Screen gets no more locked after suspend #Comment 8

只有 conky 运行时键盘快捷方式不工作

gnome-shell 键盘快捷方式(如 Alt+F2,Alt+F1 和多媒体键快捷方式)当只有 conky 运行时不会工作。然而如果另一个程序(例如 gedit)在运行,键盘快捷方式就可以工作了。

解决方式:编辑 .conkyrc

own_window yes
own_window_transparent yes
own_window_argb_visual yes
own_window_type dock
own_window_class Conky
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager

GTK 2+应用程序显示段错误无法启动

此错误往往在安装了oxygen-gtk的情况下发生。这个主题与GNOME 3或GTK 3的某一设置冲突,当它被设置成GTK 2主题时,GTK 2程序会出现类似下面的段错误:

(firefox-bin:14345): GLib-GObject-WARNING **: invalid (NULL) pointer instance

(firefox-bin:14345): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed

(firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_screen_get_default_colormap: assertion `GDK_IS_SCREEN (screen)' failed

(firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_colormap_get_visual: assertion `GDK_IS_COLORMAP (colormap)' failed

(firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_screen_get_default_colormap: assertion `GDK_IS_SCREEN (screen)' failed

(firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed

(firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed

(firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed
Segmentation fault

目前的"解决方法"是把oxygen-gtk从系统中完全移除并为您的应用程序设置另一个主题。

ATI Catalyst驱动在使用GNOME Shell的时候遭遇到了毛刺和伪影

目前不推荐使用Catalyst运行GNOME Shell。开源的ATI驱动(xf86-video-ati)似乎是能正确地运行 GNOME 3 混合桌面。

注意: 有望在 Catalyst 11.9 中修复。参见  http://ati.cchtml.com/show_bug.cgi?id=99

多台显示器和dock扩展

如果你有多台显示器,并且用Nvidia Twinview配置,你的dock扩展可能会夹在显示器的中间。编辑扩展的源文件来重定位dock。

编辑 /usr/share/gnome-shell/extensions/dock@gnome-shell-extensions.gnome.org/extension.js,在代码中找到这行:

this.actor.set_position(primary.width-this._item_size-this._spacing-2, (primary.height-height)/2);

第一个参数是dock的X方向位置,从2改成15,dock在我的主显示器上到了正确的位置。你可以尝试几个X,Y的值来让他到合理位置。

this.actor.set_position(primary.width-this._item_size-this._spacing-15, (primary.height-height)/2);

Empathy和其他程序没有环境音

如果你正在使用 OSS, 你需要安装AUR上的libcanberra-oss

必须安装sound-theme-freedesktop包以获取默认环境声:

 # pacman -S sound-theme-freedesktop

通过can-change-accels编辑快捷键失败

也可以通过accel map手动设置快捷键。在哪里找到这些文件取决于应用软件,例如,Thuner在~/.config/Thunar/accels.scm,Nautilus在~/.gnome2/accels/nautilus。文件含有一系列快捷键,还未更改的快捷键用 ";" 注释,去掉注释以启用。

在备用模式右键点击面板停止响应

打开gconf-editor找到/apps/metacity/general/mouse_button_modifier,面板和applets也在使用快捷键 (<Alt>, <Super> 等)。

"显示桌面"快捷键无效

GNOME开发者认为他是一个bug(察看 https://bugzilla.gnome.org/show_bug.cgi?id=643609 ),因为最小化被抛弃了。定义ALT+STRG+D为下列设置:

系统设置 --> 键盘 --> 快捷键 --> 导航 --> 隐藏所有正常窗口

Nautilus不启动

打开 gnome-tweak-tool -> File Manager -> Have file manager handle the desktop -> Off

Epiphany不能播放flash video

Epiphany现在使用gtk3, 但是Adobe's Flash Player仍然依赖于gtk2。察看Epiphany#Flash里面用nspluginwrapper解决的方法。

不能保存显示器配置文件

如果你遇到这样的问题,尝试禁用 xrandr gnome-settings-daemon 插件:

dconf write /org/gnome/settings-daemon/plugins/xrandr/active false 

按触摸板锁定键不能重新启用触摸板

有一些笔记本有触摸板锁定键,这样你可以在打字的时候禁用他,不用担心碰到触摸板。但是GNOME可以正确地锁定他,却不能启用。如果触摸板已经被禁用,按下面操作解锁:

  1. 按ALT+F2 , 输入gnome-terminal,回车
  2. 输入以下命令
xinput set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 1

在Nautilus里面CTRL+V粘贴路径而不是文件

如果你被这个问题困扰,编辑 ~/.gnome2/accels/nautilus你可以发现两个 CTRL+V :

(gtk_accel_path "<Actions>/DirViewActions/Paste" "<Control>v")
...
(gtk_accel_path "<Actions>/ClipboardActions/Paste" "<Control>v")

问题在于第二项,删除他可以好过一阵子,我可能还要再去修改他。另一个方法是修改快捷键。

不能连接到加密Wi-Fi

如果你可以看到wifi连接,但是点击加密网络却不能打开输入密码对话,你可能需要安装network-manager-applet。察看Gnome NetworkManager setup.

“Mutter 命令 33 尚未定义。”

当你使用print screen截屏的时候,出现“Mutter 命令 33 尚未定义。”。mutter还用着metacity的配置文件。

$ sudo pacman -S metacity
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值