• tigerVNC远程桌面控制

    用VNC可以以桌面的方式,连接到远程电脑进行操作。
    下面描述如何对VNC Server和VNC Client进行配置。
    VNC Server即要远程连到的电脑。

    VNC Server的配置

    1. 安装tigervnc-server

    # yum install tigervnc-server
    

    2. 设置VNC密码

    # vncpasswd
    

    执行这条命令的用户就是vnc的用户名;
    输入两次密码就设置成功了。

    3. 修改vncviewer配置文件

    # vim /etc/sysconfig/vncservers 
    

    里面加上两行

    VNCSERVERS="2:root"
    VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp"
    

    2是Display号,root是用户。

    4. 开放防火墙5900-6000端口,重启vncserver

    # /etc/init.d/vncserver restart
    

    (更多…)

  • GNOME:每隔30秒检测网络连通的脚本

    想实现每隔30秒自动检测网络是否连通,并在桌面弹窗显示结果。

    notify-send

    用notify-send命令可以调出弹窗。
    notify-send [OPTIONS] [body]
    可以这样简单地调用 notify-send “标题” “内容”
    如,

    # notify-send "Network" "Connected."
    

    sleep

    要每30s检测一次,用sleep比较好。(at和cron都不咋靠谱)
    用sleep 30s相当于程序延时30s。
    (更多…)

  • 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
    

    尝试修改为640×480.

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

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

    gdm2

    (更多…)

  • 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
    

    (更多…)

  • 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: 计划任务(cron, at)

    关于计划任务(cron 和 at),鸟哥linux和维基百科都有比较详细的讲解。
    http://linux.vbird.org/linux_basic/0430cron.php
    http://zh.wikipedia.org/wiki/Cron
    所以文本就稍微举例说明一下。

    (更多…)

  • RHEL6: Bash脚本,检测一个网络地址能否ping通

    可能是最简单的Bash脚本。

    基本功能

    1. 程序接受一个参数,IPv4地址或域名;
    2. 如果该地址能ping通,则显示” is pingable.” 否则显示” is not pingable.”.
    (更多…)

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

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

    基本功能

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

    # ./batUserdel 3 testuser
    

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

    (更多…)

  • RHEL6: Bash脚本实现批量添加用户

    Don’t repeat yourself.
    用脚本批量生成用户,就可以自动生成成千上万个用户啦。

    基本功能

    1. 程序接受2个参数,第一个参数是生成用户的数量,第二个参数是用户名的前缀。
    例如,执行

    # ./batUser 3 testuser
    

    会生成 testuser1, testuser2, testuser3 这3个用户。

    2. 用户的默认密码设定为 redhat .

    (更多…)