2010年春节回家首日游

我已经到了阆中了,时间太晚了,
5点灰机到达绵阳南郊机场,取行李墨迹20分钟
然后飞速打车去了平政汽车站,的哥开家50,没有还价,只有一个要求:最快的速度把俺送到平政汽车站,
果然,体验了一把的士时速。5:55到达汽车站,赶上最后一班6:00回南部的车。
21:30到达52队汽车站,等了一会儿,表弟开着车过来接我,半个小时从南部到阆中,
到了酒店20:10的样子,放下包,出去扫街找吃的,时间比较晚
随便找了一个路边小店,吃了一份七星猪脚+加一份炸酱面,
打包的七星猪脚:
七星猪脚
炸酱面:
炸酱面
七星猪脚残骸:
七星猪脚残骸
吃光了七星猪脚的空碗:


我KAO,那叫一个好吃,忍不住堂吃两份份,外加一份打包,
三份: 七星猪脚+炸酱面, 一共36块钱,nnd,那叫一个实惠啊
话说这个酒店真不赖,可以上网,有线的,
趁着机会把手机的蓝牙和笔记本蓝牙配好
回家了也有网上。哇嘎嘎,赶紧睡觉,明天还要忙呢

Del.icio.us : , ,

两个ssh相关的ruby脚本

自从上次存储上面发现一个异常后,禁用不带密码的key。
而且关掉了sudo的nopasswd选项,
这下苦了我们自己,面对成百上千的服务器,需要拷贝个文件啊
或者root权限做个事情啊,那绝对是恶梦。为了拯救自己于恶梦,
利用NET::SSH,写了两个小脚本:

  1. 一个是scp.rb用来拷贝文件的,用法很简单:
    scp.rb hostA:/tmp/afile ./ 或者
    scp.rb afiel hostA:/tmp/afile
  2. 另外一个叫ssh_sudo.rb,看名字就知道,ssh来sudo的,比如:
    ssh_sudo.rb hostA cat /etc/shadow 会在HostA上面执行 cat /etc/shadow

把ssh_sudo.rb中,15行换成:
15 channel.exec(“#{cmd}”) do | ch, success|
就成了普通版的ssh了。这两个可以解决我80%的问题了。剩下20%就根据情况,临阵定夺了

################## scp.rb #####################

#!/usr/local/bin/ruby
require ‘net/scp’
password=”real_password
username=‘real_name’
src=ARGV[0]
dst=ARGV[1]
if ARGV[0] =~ /:/
host,remote_path=ARGV[0].split(“:”)
else
host,remote_path=ARGV[1].split(“:”)
end
Net::SCP.start( host, username, :password => password) do | scp |
if ARGV[0] =~ /:/
scp.download!( remote_path, dst )
else
scp.upload!( src, remote_path )
end
end
################## end scp.rb #####################

######################## ssh_sudo.rb #######################

#!/usr/local/bin/ruby
require ‘net/ssh’
password=”real_password
username=‘real_name’
host=ARGV[0]
cmd=ARGV[1..ARGV.length-1].join(” “)

begin
#Net::SSH.start(host, username, :password=> password, :verbose => :debug ) do | session |
Net::SSH.start(host, username, :password=> password, :timeout=>3 ) do | session |
retry_count=0
session.open_channel do | channel|
channel.request_pty
channel.exec(“sudo #{cmd}”) do | ch, success|
#channel.exec(“echo ‘robert:$xxx.’ | sudo /usr/sbin/chpasswd -e”) do | ch, success|
abort “could not execute command” unless success
channel.on_data do | ch, data |
if data =~ /Password/
retry_count+=1
channel.send_data password+”\n”
else
puts data
end
end
channel.on_extended_data do |ch, type, data|
if data =~ /Password/
retry_count+=1
channel.send_data password+”\n”
end
end
channel.on_close do |ch|
puts “Error for #{host}” if retry_count > 1
end
end
end
end
rescue Exception
$stderr.print “Error: #{$!} on #{host}\n”
end
############# end of ssh_sudo.rb ###################

Del.icio.us : , , , ,

ramfs VS tmpfs

这两种基于内存的文件系统,都可以称为内存盘。只是稍微有些差别:
Mount options for ramfs
Ramfs is a memory based filesystem. Mount it and you have it. Unmount it and it is gone. Present since Linux 2.3.99pre4. There are no
mount options.


Mount options for tmpfs
The following parameters accept a suffix k, m or g for Ki, Mi, Gi (binary kilo, mega and giga) and can be changed on remount.

size=nbytes
Override default maximum size of the filesystem. The size is given in bytes, and rounded down to entire pages. The default is
half of the memory.

nr_blocks=
Set number of blocks.

nr_inodes=
Set number of inodes.

mode= Set initial permissions of the root directory.

从挂载选项中可以看出两者最大的差别: tmpfs有size限制,ramfs没有size限制,换句话说: tmpfs不会耗光内存,因为有大小限制:超过物理
内存的时候会使用swap;而ramfs则有可能耗光物理内存,把机器拖垮,但是好处是会动态增长,适用于无法预估所需内存大小而内存又肯定够用的
情况,比如smarty的template_c;

Del.icio.us : , , ,

Bugzilla书写经验

bugzilla是不错,但是没有WYSIWYG的编辑器,实在寒酸
好在bugzilla的帮助文档中有一个列表,罗列出可链接书写格式的参考。
其中用处最多的就两项,想起了28原则:

comment3 -> comment3

Bug 178148 -> Bug 178148

Issue Linkable References

Linkable References enable the user to automatically link to another issue or comment via signal words. When you enter a linkable reference in the Additional Comments text box, Bugzilla automatically creates a link to that reference in the posted comment. Refer to the following table for the list of linkable entries and their respective signal words.

Note: A word followed by a + sign indicates that multiple words are required. A comma separating words indicates that any of those words work as a signal to Bugzilla. The signal words are not case-sensitive.

Linkable Reference

Single Words (not case sensitive)

Netapp bug

netapp + bug

Netapp case, log or ticket

netapp + case, log, ticket

Netapp Part Number

netapp, newtwork app

Netapp Syslog translator

[A valid syslog output]

CJ Account

ac, cid

FedEx Tracking Number

fedex, tracking

UPS Tracking Number

[A valid UPS tracking number starting with 1Z]

F5 Solution Id

f5 + SOL

RFC

rfc,bcp,std

Cisco Bug Id

[A valid Cisco ID starting with CSC]

Cisco TAC Case

cisco, tac + case,ticket

Cisco RMA

rma

Cisco Error message decoder

[A valid Cisco error message number]

IEEE OUI lookup (mac addresses)

[A valid mac address]

Telnet Command

telnet

Javadocs

[A valid javadoc reference]

Virus Name

[A valid virus name beginning with W32]

Dell Service Tag

[A valid service tag number]

Seagate Part Number

[A valid part number starting with ST]

Mojo Adserver Placement Id

rotation, placement

Del.icio.us : ,

黄百之旅的流水帐

响应老何的号召,期待在浙江第一峰上,就着皑皑白雪,迎接2010年的第一缕阳光
于是乎便有了下面这篇流水帐,时间是根据录音回来整理的,气温及海拔等数据来自
王子的CASIO和老何的GPS校对结果



12月30号晚上


9:45家里出发
10:30火车南站
11:50火车晚点至12:15分

12月31号

7:00 到丽水火车站,晚点半小时,火车站出口对面50m处有3路公交车直达丽水汽车西站,车票1.5
汽车西站以西200m有加油站,可以加到93号汽油,3块钱加了450ml汽油。 早饭18块,
8:10 分出发, 72一张,2快保险。每40分一班,11点左右到庆元
9:45 刚刚过龙泉
11:20 到庆元汽车站,庆元汽车站等到万里林的车,山路弯来弯去,Q胖开始晕车了
12:40 13967074746 到万里林车主电话号码。庆元车站出发到万里林,预计14点到,5人车费45。
每天一班,路上风景不错,逆流而上
14:10 到百山祖万里林(车根村)
14:50 万里林出发,进入百瀑沟,在卧龙瀑处,右侧的小路不通,沿左边走,需要过溪
16:00 走完百瀑沟,到杜鹃谷入口休息,老何的纯水净化坏掉了,
16:05 加入杜鹃谷,
16:15 走完杜鹃谷, 期间王子左脚小腿抽筋一次,海拔1675m,8.6℃
16:20 到百管站
16:35 放下包,开始轻装冲顶,海拔1700m
17:00 到达百山祖冷杉
17:15 登顶百山祖,休息15分,
17:30 开始下撤,气温迅速下降,
17:40 左右天全黑
17:55 下撤只百管站,耗时25分钟
18:30 开始喝老何的红糖姜汤
19:50 油炉开始出问题,修理;准备烧水洗脚、洗脸,月亮很大很圆,三顶帐篷都已经在百管站的水泥地展开,准备睡觉了

2010年1月1号


01:30 来了一帮驴友,吵醒了百管站的鸡还有小黄,它们一唱一和,搞到天亮。想起了柴门闻犬吠,但也想起了周扒皮;实在难以入睡
05:00 王子起床,据称昨晚: 帐内温度-3.6℃。王子帐篷内壁结冰,睡袋温度20℃
05:10 我开始起床,外帐全是水, 开始修油炉
07:55 出发,折腾一个半小时后,开始出发, 百管站的小黄跟着我们一路送到茶木於
09:10 到达茶木於管理站香菇湾入口,此处不容易找路,应该沿着铺满松针的平地的最右侧
09:43 爬完茶木於旁边的坡,电话线和高压线
09:51 茶木於到龙岩、三井溪的三岔路口,继续沿着高压线走,电话线通向三井溪
11:20 到达龙岩村,离龙岩村一里地的时候,有一个岔路口,我们选择了右边的岔路,然后直直的往下
后来证实,这个向下的岔路是通向下溪村的,是条错路。在下溪村打听到:沿着公路就可以直达龙岩村。
12:15 龙岩吴三公祠堂前吃完午饭,准备出发
13:20 溧阳到龙岩三岔口,
13:30 到达牌坊,牌坊到麻连岱2.5km,麻连岱到凤凰湖2.8km
14:40 到麻连岱向导家
15:00 从麻连岱出发,轻装冲刺黄矛尖
16:05 到凤阳湖动物通道
16:20 瓯江源牌坊,沿右侧石阶登顶黄矛尖
17:25 黄矛尖登顶, 5m/s风速
17:36 开始下撤,准备头灯
17:45 天全部黑了,气温-7/8℃
18:10 黄矛尖至凤阳湖的路上,大雾继续弥漫,能见度5m,气温下降比较厉害
18:30 撤到凤阳湖
20:00 撤回麻连岱,老何嚷着要鸡汤,老马嚷着再也别自虐了

2010年1月2号


07:30 离开向导家,从麻连岱向龙泉进发,25/人
10:35 到龙泉车站,下车即可到丽水的班车,40/人,6:30到19:40都有车
12:30 到达丽水车站
11:05 腐败

2010年1月3号


06:45世纪大道呈鸟兽散
07:25到家门口


Del.icio.us :