5/03/2012

解决unmet dependencies问题

ubuntu 12.04 LTS发布后,顺利升级家里的desktop版本后,手欠升级server版本。登录服务器后do-release-upgrade命令升级,执行到一半突然报错,尼玛,kernel too old(坑爹的服务商,后来提交ticket也不答应升级),无奈,还原回11.10. 手工更新source.list后,执行apt-get update && apt-get upgrade 报错
The following packages have unmet dependencies:

 libc6 : Depends: libc-bin (= 2.13-20ubuntu5.1)
 libnih-dbus1 : Depends: libnih1 (= 1.0.3-4ubuntu9) but 1.0.3-4ubuntu2 is installed

提示apt-get -f install操作,按照要求也是无法通过。原因很明显,部分packages升级了,有些还没来得及升级就中断了,结果检查依赖关系不一致。

曾尝试apt-get install这些package ,无效;Google后,都是什么apt-get -f install 解释,删除/var/cache/apt/archive/* 等等,都不能解决根本问题。

最后灵感一来,下载原版本deb进行手工更新 (packages.ubuntu.com是个好网站)
dpkg -i *.deb 解决问题。

4/02/2012

折腾(二)

连续上了7天班的人伤不起啊,充分利用下小长假休息放松下。休息期间也是可以折腾的。

以前有关注 autoddvpn 这个项目,发现对于崇尚网络自由的人来说,这是个不错的选择。不过有个条件是路由器支持dd-wrt。我家路由是不争气的TP-LINK wr740n v3/v4,当时到dd-wrt的官网查询后,并没有合适的版本可以使用,所以暂时放置。

昨晚又在网络上搜索一番,发现有人已经放出个合适的版本,可以成功刷dd-wrt。
遂下载下来,进行一番尝试。

 网上说刷wr740的流程应该是740n--> 741n(伪DD)-->741(原factory)-->741nv1up_boot-400m-->741n dd

0. 进入TP-LINK管理界面,备份原有固件先(事后证明,貌似也没有什么用,图个心里安慰)
1. 固件升级页面,刷入TP-LINK-WR740N-V3-V4-to-DD-WRT.bin,耐心等待
2. 自动重启,成功进入,可设置新密码,进入管理页面

这个版本的固件是把路由器看作WR741nd,进行升级的,刷出来的版本是DD-WRT v24-sp2 (11/21/10) std - build 15778.


进行完上述步骤,通过文件 tl-wr741nd_v1_v2-webrever.bin 又将其刷回原厂固件,步骤类似,但是没有刷741nv1up_boot-400m 这个固件,这个是超频使用的,跳过了。然后又在官网上下载 factory-to-ddwrt.bin 重新刷入。


以上几个步骤都是采用的有线链接,web方式更新。刷了dd-wrt也可以telnet进入,通过命令mtd进行更新。


-----------autoddvpn-----------


按照项目指导,先是想按照推荐的gracemode设置,但是发现dd-wrt管理页面没有找到jffs选项,无法启用。(telnet进入,可以看到有个jffs文件夹,网上也又命令行设置的方式,没有尝试,不知道是否可行) 

最终采用的是wget + pptp方式进行配置的。验证成功后,又设置了dnsmasq服务,解决一些弊端。

updated: 通过试用,最好在里面启用watchdog,监听某个ip,如果vpn断线可以重启路由。

相关文件下载:

2/21/2012

折腾

最近,想将近来拍摄的视频上传到Picasa (尽管已经改名并整合到G+,还是习惯这个叫法)备份。

最初获取的视频文件是VOB格式的,通过 ffmpeg 命令将其进行转码成mp4格式。
        ffmpeg -i file_name.vob -vcodec mpeg4 -acodec copy out.mp4
为了尽量保持画面质量和音频不变,只设置了基本的参数。通过转换文件大小反而扩大一倍。
同时为了不占用picasa 的免费容量 (这里实现每个视频文件小于1G,同时视频时间小于10分钟),还是通过ffmpeg 将其进行切割。
        ffmpeg -i file_name.mp4 -vcodec copy -acodec copy -ss hh:mm:ss -t hh:mm:ss out.mp4
最终需要上传的文件大约10G左右。

刚开始想使用Picasa专门的软件进行处理,发现Linux下Google已经不再支持维护了。转而使用Windows下的软件进行上传,学习了下,没有研究出如何上传MP4格式,软件没有成功导入视频,最终放弃。

尝试了使用Web端进行上传,一个800M+的文件通过这种方式,速度简直就是让人欲死不能。进度条进度缓慢无法忍受,不直观,遂想其他招。

通过Google果然有相关命令行 googlecl ,基于Google Data API实现的。这种命令行方式省事,且支持多个文件上传。

同时考虑本地网速,使用命令行和Web方式效果基本一样。遂将文件放到国外的服务器上,这样直连google服务器就快很多。因为购买的vps网络环境链接国内效果也不行,使用rsync命令上传发现速度只有10k+.

又继续折腾。想起我那Google Cloud Storage 还可以利用呢。使用gsutil命令进行上传,无法看到网速,继续想招。

Google后又发现iftop命令可以监控到某个进程的网络链接情况,安装使用后,速度直观可见。上传速度提升了5-6倍,这速度知足了。

在购买的服务器端也安装使用gsutil, 下载800M+文件,速度20M/s ,喝口水的功夫。
服务器端使用googlecl 建立album, 上传视频,报错! 仔细看了API说明文档,发现接口方式上传API 限制100MB的文件大小。悲剧!

只能ffmpeg 失真压缩了,小于100MB,满足条件,上传成功。

折腾帝。








12/17/2011

正确的决定

虽然本人做过许多决定,但是这个决定也是正确的-----做个正常的人。


-------------------------------------分割线------------------------------------------------

   党员如果没有正当理由,连续六个月不参加党的组织生活,或不交纳党费,或不做党所分配的工作,就被认为是自行脱党。

10/18/2011

Honeymoon

十月假期后的一周,和老婆去Maldives渡了蜜月。


目的地:Chaaya Reef Ellaidhoo


参与的旅游团自由行六天四晚,价格还算实惠,因为岛的级别不是很高,机票和酒店费用包含
外,还有早晚餐,所以整个行程下来,能花费的地方不多,主要是吃饭和娱乐。


第一天主要在首都Male渡过,到地方差不多是当地时间下午4、5点钟(时差3个小时,东5区),
出来后当地的地接居然会说些中文,再加上同航班有去其他岛的导游,所以接机还算顺利。
这个导游相当友善,与我们通行的四川老人只会说四川话,地接都能和她基本沟通,
可见中文听力不错。入住酒店后,出去逛了一下,已经日落,加上全是各种摩托车
(当时联想到中国的飞车党),所以没有走离太远。来回半个多小时,买了些水。
因为岛上肯定很贵。第二天退房前又去买了水和食物,后来证明买水基本没有派上用场。


花费不到4美金。第一次1美金只买了3瓶500ml的,明显被宰了。第二次去的超市稍微正规些,
汇率是按照国际价格算的。


第二天中午乘坐水上飞机上岛的,风景感觉不错,毕竟只来过一次,没有可比性,所以感觉
不错。整个岛不大,很快就来回逛了一周。在岛上免费的娱乐休闲就是浮潜,晒太阳,拍照。
第一次浮潜,是花费找岛上工作人员带的,后来就是自己瞎扑腾。晒太阳,吹着海风,
确实很舒服,在树荫下看书,感觉很好,再懒懒的睡上一觉。日光浴确实很爽,前后各5分钟,
就受不了了。回到房间都还能闻到身上一股烧焦的味道。


2次坐船(当地叫做多尼船)出海,一次sunset cruise,一次sunset fishing. 欣赏日落和钓鱼。
我只钓上来一条,老婆居然是整个船上成绩最好的,其中有2只同种类最大的。


早晚餐都是自助餐形式,种类也就是那几样,没有什么特别之处。晚餐时饮料居然另外收费,
第一天上当后就改点纯水了,3.5美元1.5L。
第一天晚餐的时候居然来推销买一送一的活动,吃顿海虾大餐送一自助午餐,
经过计算还是比较划算,所以就解决了午餐问题。
当然,如果自带足够的食物,是最经济实惠的。


最后一晚是水上屋,比起之前住的设备和风景都好很多。因为honeymoon优惠,
酒店送了瓶酒和水果外,还特意布置了下床单。
原来说要撒些花瓣什么的,后来也没有看到。


不太好的是因为水上飞机的时间比较晚,退房时间又太早,所以有半天是在岛上无聊度过的。




--------------------------------正文结束,下面是题外话-----------------------------------------


下面内容来自我的twitter:


这次旅行同行的有来自重庆的老人,她们到达岛上就在自己住的宾馆里面放了红歌,很大声的那种功放,很远都能听到。我们开玩笑道她们是带着任务来玩的 #旅行

有一波四川人到了岛上也不出来下水或晒太阳,就躲在屋里斗地主,赌注还不小。有钱人啊,花这么多钱来吹空调玩牌。希望不是公务员。 #旅行

和斗地主同行一起的四川人摘了很多海星,估计想带回去,这是被禁止的。岛上工作人员想告诉他们,但他们听不懂英语,碰巧偶遇告之。当时以为他们事先没有了解规定,还善意告诉她们。结果她们居然回答是知道规定。 #旅行

这次旅行在岛上做了一个全身massage,感觉一般,没什么出彩的地方,就当是体验下吧。毕竟不是靠这个有名的。 #旅行

我的英语水平一般,单词量估计都退化到四级水平,听力就靠看美剧维持。回想下整个旅行,没有闹太大笑话就不错了,居然还充当了2次“翻译”工作。以后还是要坚持学习英语。 #旅行

回来的时候碰到邱淑贞一家子,前面的推有说过。有3个小孩,目测起来老公好像没有她高。认出来的原因之一是早晨5点多,太阳都没出来就在机场里面带着大墨镜。后来在餐厅吃饭,又排在我们前面,还特意找个角落坐着。出于礼貌,还是没有偷拍他们。明星也不容易啊。 #旅行

9/01/2011

生活片段

看到Reader里面文章说 blogger更新了小清新界面,所以登录上来体验下,果然很清爽。
进到后台,发现距离上次发布的博文已经有3个月时间,为了写些什么,所以有了这段文字。

上月底,大运会刚结束,老婆的脚就因为顶到别人的脚上导致骨折了(太衰了)。虽说是小伤,但是伤筋动骨一百天啊,只能在家休息,为了不麻烦家人从老远飞来,我们就自己坚持了下,现在一切还算顺利。

希望老婆早日恢复。



6/21/2011

还原短地址的demo

先感慨下:最近在学习python, 真是利器一枚啊.

最近在浏览blog的时候,阅读了 Google App Engine的官方文章《Getting Started with the Tasks API on Google App Engine》.通过该教程可以学习了解google api和GApp的基本原理.

为了巩固学习效果,决定自己动手写个小demo. 因前段时间练习写了 还原短地址的python脚本,此脚本只能通过命令行执行.因为决定修改下,放到Google App Engine上.

很简单的功能,调用 longurl.org 的api . 应用没有完善,只能满足基本使用。

围观地址  源码

ps:借此机会,学习下传说中强大的Git.