GDM:修改桌面登录界面的分辨率

修改桌面登录界面的分辨率,而不修改用户的分辨率。比如,登录界面的分辨率是800*600,而用户登录后,分辨率还是用户自己设定的分辨率。

GDM(GNOME Display Manager)是专门管理图形登录界面的,修改它的分辨率即可。

方法1:修改gdm配置文件

修改/var/lib/gdm/.config/monitors.xml这个配置文件,可以改变登录界面的分辨率。
/var/lib/gdm/.config/monitors.xml这个文件默认是不存在的,我们可以通过用图形化的DISPLAY配置程序来生成一个。
进入桌面,System->Preference->Display,出现以下界面,点Apply。
gdm1
于是,用户的家目录会生成这个文件 ~/.config/monitors.xml。
将文件复制到GDM的配置目录中,并把所有者改为gdm。

# cp ~/.config/monitors.xml /var/lib/gdm/.config/monitors.xml
# chown gdm.gdm /var/lib/gdm/.config/monitors.xml

修改这个文件里面的分辨率。

# vim /var/lib/gdm/.config/monitors.xml

尝试修改为640x480.


  
      no
      
          ???
          0x0000
          0x00000000
          640
          480
          60
          0
          0
          normal
          no
          no
          no
      
  
     

重启图形,即可看到登录界面分辨率变成了640x480,而登录进去还是用户原来配置的分辨率。

gdm2

继续阅读“GDM:修改桌面登录界面的分辨率”

xorg.conf:修改屏幕分辨率

通过修改xorg.conf可以修改系统全局的分辨率。
实验环境: RHEL 6.5

获得默认的xorg.conf文件

# Xorg -configure :1

然后它会自动生成一个xorg.conf文件放在/root/xorg.conf.new
复制一份到xorg的配置目录下

# cp /root/xorg.conf.new /etc/X11/xorg.conf.d/xorg.conf

用gtf计算参数

我需要800*600的分辨率,刷新频率60Hz,我可以这么用gtf计算。

# gtf 800 600 60

得到结果.

  # 800x600 @ 60.00 Hz (GTF) hsync: 37.32 kHz; pclk: 38.22 MHz
  Modeline "800x600_60.00"  38.22  800 832 912 1024  600 601 604 622  -HSync +Vsync

继续阅读“xorg.conf:修改屏幕分辨率”

Gnome2/3: 命令行修改背景墙纸

GNOME2中,可以通过gconf-editor图形化界面来修改gnome2的配置,以修改其背景;
GNOME3中,可以通过dconf-editor图形界面来修改gnome3的配置,从而修改背景;
下面给出通过命令行修改背景的方法。
执行之前,先准备一张图片放在桌面上。我的路径是:

/home/feichashao/Desktop/feichashao.jpg

Gnome2

用以下命令可查看当前背景

$ gconftool-2 --get /desktop/gnome/background/picture_filename

用以下命令可设置当前背景

$ gconftool-2 --set --type string /desktop/gnome/background/picture_filename '/home/feichashao/Desktop/feichashao.jpg'

Gnome3

用以下命令可查看当前背景

$ gsettings get org.gnome.desktop.background picture-uri

用以下命令可修改当前背景

$ gsettings set org.gnome.desktop.background picture-uri 'file:///home/feichashao/Desktop/feichashao.jpg'

注:
1. 如果通过ssh执行上面的设置命令,会出现报错。
2. 要更改用户A的背景,应该用A用户执行上述命令。

(process:10123): dconf-WARNING **: failed to commit changes to dconf: Error spawning command line `dbus-launch --autolaunch=d954c83dff5ff4d8570c01048fa36b50 --binary-syntax --close-stderr': Child process exited with code 1

RHEL6: 执行远程X应用(Remote X to Linux)

X Window System

X Window System 的架构可以支持网络,也就是说,在remote端的机器,只需要有X Window相关运行库,不需要有显示器键盘鼠标,就可以在另一台机器(workstation端)上进行图形化交互。换句话说,程序可以在remote端跑,绘图以及响应鼠标键盘部分可以在workstation端进行。

将remote端的X forward到workstation端有多种方法,这里举例两种方法:一是用SSH,二是直接用X11 Remote Connection.

继续阅读“RHEL6: 执行远程X应用(Remote X to Linux)”

RHEL6: Bash脚本实现批量删除用户

前面用bash脚本批量生成了用户 https://feichashao.com/rhel6-bash-batuser/ ,现在问题来了: 如果我要批量删掉它们呢?

基本功能

1. 程序接受两个参数,第一个是删除用户的数量,第二个是待删除用户的前缀。
例如,

# ./batUserdel 3 testuser

那么 testuser1, testuser2, testuser3 都会被删除。

继续阅读“RHEL6: Bash脚本实现批量删除用户”