• 批量删除软链接

    find -type l -delete [PATH]

    上面这条命令就可以将[PATH]路径下的所有软链接都删除掉。

    用的是find这个Linux下非常实用的命令,type参数限定了文件类型为l(links),加上-delete删除参数就可以实现找出所有软链接并删除。

    如果是要删除失效的软链接,需要加上一个-L参数,表示追踪软链接:

    find -L [PATH] -type l -delete

    我只所以需要删除全部的软链接是因为现在制作W22PRO的ROM遇到一个小麻烦,因为没有Bootloader和内核源代码,所以不能make otapackage生成zip刷机包,只好直接拿编译出来的system目录操作,但是这个目录下包含了太多软链接了,直接拿来压缩会得到一个巨大的zip包,所以必须先删除软链接(这些软链接将会通过刷机脚本updater-script重新生成),终于Google到了上面这条命令,非常实用,特此记录下来。

  • 用Entropay激活Google Wallet电子钱包

    国内鸭梨山大?这次不仅仅是有木有双币信用卡的问题了(虽然双币信用卡可以通过其他办法完成),而是人家压根不支持中国大陆地区。

    还记得我上次说的Entropay?Entropay公司地址在欧洲马耳他,正好也是Google Wallet支持的国家。用Entropay可以成功激活Google Wallet并且购买Android付费应用!支持正版的果断走起!即便不想掏钱,像Google Play Books和Play Magazine也是得有一个Google  Wallet账号才能看免费书籍和杂志。 (Play Books不支持马耳他地区,因此Entropay的VISA卡不能完成Play Books的支付。)

    后来我看到阿三写的这篇博文了:http://ijustutter.com/add-use-entropay-virtual-visa-credit-card-vcc-google-checkout

    于是……成功激活了Google Wallet啊!

    泪奔!!!

    简而言之就是账单地址要写Entropay的地址就好了。然后不要设置为默认付款方式(如果变成默认方式了,可以稍后修改信用卡就会变成非默认状态了)。

  • 没工作照样有VISA!Entropay虚拟VISA卡

    在计划泰国旅行途中,发现没有VISA卡(MasterCard/American Express也没有)寸步难行啊,随后打了电话到中国各大银行,让我想想,有交通银行、招商银行、民生银行、建设银行、工商银行、农业银行……还去了中信银行、中国银行、华夏银行、光大银行看过了。要么就是压根不给学生办信用卡,要么就是只能办单币种(仅银联标识)的信用卡。不过最后问到民生银行可以办国际借记卡(可选VISA和MasterCard),招商银行也可以,不过招行要5万人民币存款升格为金卡用户才行,民生银行则无此要求。

    可惜民生银行表示VISA借记卡不能用于境外网站购物……囧,只可以通过VISA渠道刷卡- _ -# 这倒解决穷学生出国旅游的一个问题了,但是另外一个问题时有时候必须提前通过VISA付款预定付费之类的就不行了。

    突然想起来工商银行有一个国际E卡的服务,果断登陆工行网银,开通国际E卡(单位那边我乱填的,反正也能过,工行系统笨)。网上关于国际E卡的指南很多了,在“小额销售汇”里面通过工行借记卡(普通的牡丹灵通卡就行,不用双币卡)买入美钞,然后在国际E卡里面充值美钞进去。网上说必须是“钞”不能是“汇”,但是我今天就是买进的“汇”也能充值进国际E卡的!

    国际E卡其实也是一种虚拟VISA卡,双币种,但是不支持PayPal支付,这点比较郁闷,根本就不能享受正常的VISA卡的服务,后来在网上看到Entropay这个神器!!!点击进去吧,注册一个Entropay,记住不要把语言换成坑爹的中文,不然邮件验证看不到激活码,我后来切换成英文收到的邮件才有激活码,这中文页面太粗糙了,现在依然English中,生怕中文又有什么坑爹的地方。注册信息一定要如实填写,最好和工行国际E卡的信息一致。当然了Entropay输入的内容限定要求是英文了,所以姓名用全大写的汉语拼音(参考你的护照)就好了。

    注册好之后,必须充值才能看到Entropay的虚拟VISA卡的卡号和安全码(CVV),网上好像说每次最低充USD$20,充值的时候选Credit/Debit Card,手续费有点贵,4.95%,充值卡就用工行国际E卡就好了,然后会要输入工行的验证信息通过验证基本就能充值成功(我之前充值失败,后来发现是填写的充值方式“工行国际E卡”的失效日期填错了被拒绝)。成功后虚拟VISA卡信息就出来了!这个一定得记好了,因为Entropay的虚拟VISA卡就相当于普通的VISA信用卡了(除去不能透支外),只要基本信息正确就能扣钱!

    费了这么大的功夫,得到的这张Entropay虚拟VISA信用卡用来做什么呢?海淘!PayPal账号可以通过该卡验证和付款(不建议用来验证,拿来验证PayPal的话,PayPal有被冻结的可能,但是付款的话不会),该卡能支付Steam平台游戏费用,能在Amazon.com买东西!能在GoDaddy上买$0.99的超低价域名!用Entropay的说法是,只要支持VISA卡结算网络付费,该虚拟卡就支持!

    想取款?两种途径,一种是把你的Entropay账户升级到顶级(不要钱,只是要验证个人信息而已),可以花$9.99拿到实卡去任何一台支持VISA的ATM机上取钱(手续费$2.49,不过通过POS机刷实卡不用手续费),另一种不需要升级账户(当然升级账户还有很多别的好处,诸如放宽充值限制等),是将钱退还到信用卡(VISA/MasterCard)上(手续费$6)。

  • 编译蓝魔W30的CM10之源码准备

    大体参考CM的Wiki: http://wiki.cyanogenmod.org/wiki/Galaxy_Nexus_%28GSM%29:_Compile_CyanogenMod_9_%28Linux%29

    提示一下就是repo这个脚本需要翻墙才能下载成功。

    下面简单写一下终端操作的笔记:

    #获取CM10的代码
    repo init -u git://github.com/CyanogenMod/android.git -b jellybean
    repo sync
    #获取三星Galaxy S III的源码(因为W30的CPU和Galaxy S III是一样的,这里偷懒直接用CM的脚本获得相关源码)
    . build/envsetup.sh && breakfast i9300
    #获取CM的预编译文件
    vendor/cm/get-prebuilts

    好了,现在要做的就是这么多了。接下来就是对Galaxy S III的设备源码部分进行修改,使之匹配W30, 当然,要新开一个目录,等我初步完成后会在github上托管的,到时候还会回来更新本篇文章。 W30开源项目 (fork & play!)

    还需要获取三星的部分专利源码,找了半天,终于在GitHub找到了一个项目有的,

    git clone git://github.com/TheMuppets/proprietary_vendor_samsung.git -b jellybean

    同步这个项目后,把里面的文件夹都放在vendor/samsung/下面,然后修改vendor/samsung/smdk4412-common/proprietary/Android.mk这个文件,把ifneq ($(filter i9300 n7100 n8000 n8013,$(TARGET_DEVICE)),)改成ifneq ($(filter i9300 n7100 n8000 n8013 w30,$(TARGET_DEVICE)),) ,也就是在filter后面加上w30,不然的话不能正确调用一些共享依赖库会编译出错。

  • SoftMaker Office 2012 for Linux

    一家德国的Office企业现在提供Linux下的办公套件了!现在还有30天免费试用(不用白不用哈)!SoftMaker Office类似于国内的永中Office和WPS Office,目前该套件包含文字处理、表格处理、演示文档处理三个程序。相信德国人严谨的作风,加上这是一套付费商用软件,质量应该还是靠谱的。

    网址传送:http://www.softmaker.com/english/ofl_en.htm

    系统要求:不限发行版,要求PC平台(x86架构的CPU),Glibc版本在2.2.5(含)以上。

    提醒一下的是,虽然提供了64位的二进制包,但是这个软件是32位版本,也就是64位系统上会要装ia32的相关组件(RPM/DEB都会自动检查依赖关系,不用担心)。

    就这三个应用程序,图标还不错,但是打开就……丑爆了……

    丑翻了,此应用程序显然不是GTK+也不是Qt写的!

    随后测试了一下几个docx文档,字体名字可能需要自己映射一下,不然打开文档后中文字要设置字体才能显示。试了几个英文文档,效果也只能说一般。个人觉得,还是用WPS吧……

  • 制作蓝魔W13PRO兼容包笔记

    因为没有W13PRO的机器,靠论坛的朋友测试,制作了五次兼容包才成功。下面简单说一下心得什么的。

    底包都是Christiantroy为艾诺精灵II制作的固件(CM10和AOKP),兼容包里面的东西是取自之前夜游(wisunny)编译的AOKP(尝试过官方固件的东西,根本开机都不行。。。),想研究的话,大家可以拆开我的兼容包,对照本笔记还是很有帮助的。

    首先要解决的是内核,直接拿夜游的boot.img就可以了,我尝试解开boot.img结果发现失败了,还不知道怎么回事,可能做过什么加密之类的吧。

    其次让我们进入system目录下吧,lib下的libhardware_legacy.so这个文件是和WiFi的驱动加载有关的,这个文件决定了开启关闭WiFi要加载和卸载的驱动模块,因为底包的WiFi驱动都是dhd.ko,而W13PRO用的WiFi驱动是wlan.ko!

    usr/idc下面那个pixcir168.idc文件是和触摸屏有关的,也必须带上。

    lib/modules下都是对应内核的模块,直接从夜游AOKP里取的,etc文件夹下的东西大家看一下就明白了,只是提一下里面be_movie和be_photo是SONY Bravia Engine,不算“兼容”的内容,应该算做“补丁”部分。

    bin下面的set_display_mode.sh是很关键的,设置屏幕分辨率的,如果数值不对会造成显示画面太小或者太大。

    回到第一层,META-INF/com/google/android/updater-script这个脚本文件包含了刷机时要做的事情,如果有人修改了补丁包重新打包,记得要看看该更改权限的地方有没有更改。最外面的addition脚本文件则是针对build.prop进行修改的,用的是sed这个强大的文字处理工具,其实我也不太懂sed,边Google学边写的。

    最后说一下刷GApps失败的问题,估计是万恶的system分区(UBI格式)没有被成功加载,所以我解包重新修改了updater-script的相关函数。

    另外要提到的就是/sbin/下可能并没有sh这个文件或者其软链接,因此脚本文件的首行的#!/sbin/sh应该改成#!/system/bin/sh,以免脚本文件根本无法执行。

    下载地址神马的上蓝魔之家去看我的帖子

  • 把博客搬来OpenShift

    之前因为独立主机不愉快的事情,加上写博客逐渐冷淡,很久都没有重开博客的想法。

    但是OpenShift真的很稳定!也比较快!而且搭建WordPress是点点鼠标的事情有木有!

    加上推他也有恶心的审查机制,我就说Tumblr目前被墙而已,那篇文章就被悄无声息的抹杀掉了……愤怒啊。。其实还好,都麻木了……囧

    总之,先来OpenShift这里占个坑,慢慢完善挖的这一坑咯,以后搞个免费顶级域名什么的那是必须的啦!

    这样还省下了买主机空间的钱,域名倒还是不贵的~~

  • Android手机平板上设置Exchange收发Hotmail(Outlook)邮件

    现在微软的邮件服务已经升级到outlook.com了,不过原来的hotmail还暂时保持了服务。

    不喜欢Hotmail的客户端怎么办呢……用Android自带的“电子邮件”这个应用就可以了。

    • 新建一个Exchange用户
    • 域用户名那一栏填写“XXXX@outlook.com”或者”XXXX@hotmail.com”就可以了(不包含引号)
    • 密码填邮箱密码
    • 服务器地址填  m.hotmail.com

    可以啦,其他的不用改动,然后设置一下要同步的内容,我是只勾选同步电子邮件,毕竟日历这些我还是靠Google提供的服务完成的。

  • OpenShift和dotCloud个人感受

    这两大云计算平台目前都只能在类UNIX(Mac OS X/Linux/BSD)下操作。不过借助MinGW之类的应该还是能在Windows完成,只是会麻烦一点~

    OpenShift和dotCloud能够搭建很多平台,PHP/Python/Java等等,也支持MySQL数据库,最棒的是这类云计算平台几乎没有什么限制,用的是亚马逊的云计算服务器群,国内访问速度还可以,延迟200ms左右吧。

    简单说一下,dotCloud用的是Python写的一个名叫dotCloud的程序来管理托管的应用,而OpenShift用的是强大的git,直接同步到本地来编辑然后push,就像托管代码那样,感觉相当自由。但是OpenShift好像创建应用的时候就固定应用类型了,而dotCloud则是可以变更应用类型的(Python还是PHP)。

    SAE限制很多,GAE又不稳定,现在看来这类稍微需要一点技术含量的PAAS是最好的。适合搭建博客、个人小站,或者是其他云计算时代的Web App!

  • Fedora下设置Samba共享NTFS分区文件笔记

    今天折腾了好久,终于在Fedora下成功设置好了Samba服务,并且能够共享NTFS分区的文件了。

    smb.conf的设置大家自行Google,这里只是说一些非常值得注意的地方。

    首先为了能正确共享软链接,[global]字段内必须有如下三行:

            follow symlinks = yes
            wide links = yes
            unix extensions = no

    第一行是让samba服务器识别软链接的指向,第二行是允许目标在非共享目录下,第三行no表示将软链接解析的工作由Samba服务器而不是客户端完成。

    可是设置后发现死活不能识别,后来原因找到了……因为文件名不符合常见的UNIX规范(也就是没有空格和特殊符号),里面有一个’符号,Linux下用”转义表示了,貌似Samba不能处理这类路径,所以没有显示出来。

    后来我改了名字,能看到了,但是不能访问,感觉像是没有权限。仔细一想NTFS分区又没有像EXT3/4这样能设置用户权限的,Google果然发现了几个解决办法,其中一种是将Samba访问用户设置和root一样的权限,我这里是添加了一个名为Guest的专门用来访问Samba共享的用户,自认为比较安全。因为禁用了它的Home目录,也让其无法登录本机,所以给了root权限以便访问NTFS分区。

    修改/etc/passwd文件,我这里把Guest用户改成了如下样子:

    Guest:x:0:0::/dev/null:/usr/bin/false

    0:0这里表示和root用户一样的权限,/dev/null是家目录,/usr/bin/false是让其无法从控制台登录。

    当然如果你没有设置用户的话,还是先useradd添加一个专门用来共享的用户吧,这样比Samba改为Share暴露在网域中要安全多了。

    设置Samba共享,就能用Android等移动设备直接访问电脑上的共享资源(电影、电视剧、音乐等),不用一部一部拷贝到机器上来播放了,省力~