想实现每隔30秒自动检测网络是否连通,并在桌面弹窗显示结果。
notify-send
用notify-send命令可以调出弹窗。
notify-send [OPTIONS] [body]
可以这样简单地调用 notify-send “标题” “内容”
如,
# notify-send "Network" "Connected."
sleep
要每30s检测一次,用sleep比较好。(at和cron都不咋靠谱)
用sleep 30s相当于程序延时30s。
(更多…)
Linux, RHEL, CentOS, etc.
想实现每隔30秒自动检测网络是否连通,并在桌面弹窗显示结果。
用notify-send命令可以调出弹窗。
notify-send [OPTIONS] [body]
可以这样简单地调用 notify-send “标题” “内容”
如,
# notify-send "Network" "Connected."
要每30s检测一次,用sleep比较好。(at和cron都不咋靠谱)
用sleep 30s相当于程序延时30s。
(更多…)
修改桌面登录界面的分辨率,而不修改用户的分辨率。比如,登录界面的分辨率是800*600,而用户登录后,分辨率还是用户自己设定的分辨率。
GDM(GNOME Display Manager)是专门管理图形登录界面的,修改它的分辨率即可。
修改/var/lib/gdm/.config/monitors.xml这个配置文件,可以改变登录界面的分辨率。
/var/lib/gdm/.config/monitors.xml这个文件默认是不存在的,我们可以通过用图形化的DISPLAY配置程序来生成一个。
进入桌面,System->Preference->Display,出现以下界面,点Apply。

于是,用户的家目录会生成这个文件 ~/.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
重启图形,即可看到登录界面分辨率变成了640×480,而登录进去还是用户原来配置的分辨率。
通过修改xorg.conf可以修改系统全局的分辨率。
实验环境: RHEL 6.5
# Xorg -configure :1
然后它会自动生成一个xorg.conf文件放在/root/xorg.conf.new
复制一份到xorg的配置目录下
# cp /root/xorg.conf.new /etc/X11/xorg.conf.d/xorg.conf
我需要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中,可以通过gconf-editor图形化界面来修改gnome2的配置,以修改其背景;
GNOME3中,可以通过dconf-editor图形界面来修改gnome3的配置,从而修改背景;
下面给出通过命令行修改背景的方法。
执行之前,先准备一张图片放在桌面上。我的路径是:
/home/feichashao/Desktop/feichashao.jpg
用以下命令可查看当前背景
$ gconftool-2 --get /desktop/gnome/background/picture_filename
用以下命令可设置当前背景
$ gconftool-2 --set --type string /desktop/gnome/background/picture_filename '/home/feichashao/Desktop/feichashao.jpg'
用以下命令可查看当前背景
$ 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
X Window System 的架构可以支持网络,也就是说,在remote端的机器,只需要有X Window相关运行库,不需要有显示器键盘鼠标,就可以在另一台机器(workstation端)上进行图形化交互。换句话说,程序可以在remote端跑,绘图以及响应鼠标键盘部分可以在workstation端进行。
将remote端的X forward到workstation端有多种方法,这里举例两种方法:一是用SSH,二是直接用X11 Remote Connection.
(更多…)
关于计划任务(cron 和 at),鸟哥linux和维基百科都有比较详细的讲解。
http://linux.vbird.org/linux_basic/0430cron.php
http://zh.wikipedia.org/wiki/Cron
所以文本就稍微举例说明一下。
(更多…)
可能是最简单的Bash脚本。
1. 程序接受一个参数,IPv4地址或域名;
2. 如果该地址能ping通,则显示”
(更多…)
前面用bash脚本批量生成了用户 https://feichashao.com/rhel6-bash-batuser/ ,现在问题来了: 如果我要批量删掉它们呢?
1. 程序接受两个参数,第一个是删除用户的数量,第二个是待删除用户的前缀。
例如,
# ./batUserdel 3 testuser
那么 testuser1, testuser2, testuser3 都会被删除。
Don’t repeat yourself.
用脚本批量生成用户,就可以自动生成成千上万个用户啦。
1. 程序接受2个参数,第一个参数是生成用户的数量,第二个参数是用户名的前缀。
例如,执行
# ./batUser 3 testuser
会生成 testuser1, testuser2, testuser3 这3个用户。
2. 用户的默认密码设定为 redhat .
机器启动时,用户可以通过修改GRUB的启动选项,启用单用户模式,或者干些更加丧心病狂的事情。
设置GRUB密码,用户如果要在GRUB引导时编辑引导信息,就要先输入GRUB密码。
# grub-md5-crypt
回车,输入密码,再次输入密码。
会自动生成一串密码,如,
$1$/xxxxx$xxxxxxxxxxxxx
上面以$作为分隔,第一个参数表示加密方式,1是MD5,第二个参数是加密的Salt,最后一长串是密文。
将上面整串东西加到 /boot/grub/grub.conf 中。
# vim /boot/grub/grub.conf password --md5 $1$/xxxxx$xxxxxxxxxxxxx
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/sda3
# initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
password --md5 $1$/xxxxx$xxxxxxxxxxxxx
hiddenmenu
title Red Hat Enterprise Linux (2.6.32-431.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-431.el6.x86_64 ro root=UUID=8f8608d3-c941-4092-a9c5-b5aa9221515f rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-431.el6.x86_64.img
重启,进入GRUB菜单,嗯,现在需要先按p输入密码之后才能按e编辑选项了。