恩,作为笔记系列的文章,内容会比较混乱.
这段时间以来,作为Ubuntu双十版的小白鼠,虽然挂彩数次,不过也在 @yegle @tjmao @poplarch @BOYPT @liangsuilong @jimmy_xu_wrk 等等推友的帮助下搞定重生.
以下是这段时间来发现的好东西:
1, @tualatrix 大大的notify脚本(Felix降碳版)
#!/bin/bash
# Copyright: TualatriX GPL v3
# Website: http://imtx.cn/archives/1516.html
# Please add the following line to ~/.bashrc to enable the bash completion support
# complete -o filenames -F _root_command notify
$* && \
notify-send "\"$*\" finished successfully" || \
notify-send "\"$*\" failed"
并在 ~/.bashrc 里加入:
complete -o filenames -F _root_command notify
以适应bash的自动完成功能. 原文在此
这玩意着实好用, 不过本猫发现10.04及以上版本会出现找不到notify-send命令,这时只需要
# apt-get install libnotify-bin
就好.
2, @BOYPT 大大的ssh -D自动登陆脚本…(Felix的死循环版)
#!/bin/bash
auto_smart_ssh () {
expect -c "set timeout -1;
spawn ssh -o StrictHostKeyChecking=no $2 ${@:3};
expect {
*assword:* {send -- $1\r;
expect {
*denied* {exit 2;}
eof
}
}
eof {exit 1;}
}
"
return $?
}
for ((i=1;;i++))
do
auto_smart_ssh "PASSWORD" USERNAME@HOSTADDRESS -N -D 7070 -v
echo -e "\n---Exit Status: $?"
done
来源: http://apt-blog.net/ssh_auto_login_in_shell_script
3, 一个极简的切换IP脚本
#!/bin/bash
ifconfig $1 $2 netmask 255.255.255.0
route add default gw $3
在*某些*情况下用起来会非常方便..这个..自己意会吧….
4, 整一整firefox的数据库…
find ~/.mozilla -type f -name "*.sqlite" -exec sqlite3 {} VACUUM \;
find ~/.mozilla -type f -name "*.sqlite" -exec sqlite3 {} REINDEX \;
5, 在Ubuntu 9.04(比如PhotonVPS)配置PPTP VPN的时候,我一直很悲剧的不能让PPTP被成功拨通..后来找了大量的资料才明白,这是pptpd版本的问题,于是…
~# wget http://archive.ubuntu.com/ubuntu/pool/main/p/pptpd/pptpd_1.3.4-2.1ubuntu1.9.04.2_amd64.deb
~# dpkg -i pptpd_1.3.4-2.1ubuntu1.9.04.2_amd64.deb
真是怨念 = =|||
(具体的错误是某个log模块2.4.4和2.4.5版本的问题)
6, 在VPS上用nginx+php-fastcgi架起一只猫波,在写了rewrite之后,虽然大部分正常工作了,但是回复收藏等图片不出来…纠结了一小会发现原来nginx的默认站点配置文件(/etc/nginx/sites-available/default)里面对images目录做了特别的说明…删掉后一切和谐啦~
下面附上dabr需要的rewrite所在的那一整段= =||||
location / {
root /var/www/nginx-default;
index index.html index.htm index.php;
if (!-e $request_filename) {
rewrite "^/([^\.]*)$" /index.php?q=$1 last;
}
}
7, 查看自己外网IP最简单的方法
$ curl ifconfig.me
原理的话..很简单,你懂的.. 来自: @BOYPT
围观。。。以后肯定有用!记下了!
我这里还有个挂着vpn时候切换默认路由的
#/bin/bash
VPNGW=”/tmp/_vpngw”
OLDGW=”/tmp/openvpn_oldgw”
if [[ ! -f $OLDGW ]]; then exit 1; fi
if [[ -f $VPNGW ]]; then
sudo route del default
sudo route add default gw `cat $VPNGW`
rm $VPNGW
echo “To VPN”
else
route -n|tail -n 1|awk ‘{print $2}’ >$VPNGW
sudo route del default
sudo route add default gw `cat $OLDGW`
echo “To direct gw”
fi
晕,看到那个for ((i=1;;i++))顿觉蛋疼死了,我首页不是有个while true的例子了么~~~
其实,我有些地方是限制成3-5次的,为了修改方便,所以保留了i…
刚刚学习ubuntu,有问题还得多多麻烦Felix了。= =
我喜欢最后一条……
哈哈, 第一次看到我还傻傻的以为这是调用了系统的什么和什么呢…
问一下,在ubuntu下用什么样的视频播放器比较好啊?mplayr好多格式不能播放。
添加 Medibuntu 源, 安装 w32codecs / w64codecs 解码器包…
或者可以尝试一下VLC 🙂
喵的…沙发没了…
话说您怎么在Linux下跑Safari的= =|||
额。晚上我用的手机啊。。Android是linux吧。浏览器是webkit的核。。居然识别成safari了( ̄. ̄)
大囧一下= =|||
虽然装了Ubuntu,但是我基本不用= =
我折腾的频率和这系列文章的发文频率将保持正比关系= =||||
路过….