Category: 小小草

IT 技术领域学海无涯。其实任何领域都学海无涯,无非 IT 发展太快了,让我有更多嘘唏。希望我掌握的技术有如小小草,虽然渺小,却有旺盛的生命力。

  • FreePBX alpha-6.12.65 DB Error: connect failed

    FreePBX alpha-6.12.65 (已升级至 release 3)两天两次出现这样的错误,我想有必要做一下笔记,解决方法很简单,但找解决方法花了不少时间。

    FATAL ERROR
    DB Error: connect failed
    Trace Back
    /var/www/html/admin/libraries/db_connect.php:63 die_freepbx()
    [0]: DB Error: connect failed
    
    /var/www/html/admin/bootstrap.php:103 require_once()
    [0]: /var/www/html/admin/libraries/db_connect.php
    
    /etc/freepbx.conf:9 require_once()
    [0]: /var/www/html/admin/bootstrap.php
    
    /var/www/html/admin/config.php:111 include_once()
    [0]: /etc/freepbx.conf
    
    
    FreePBX DB Error screenshot
    FreePBX DB Error screenshot

    解决方法就是删除 MySQL socket 文件。

    rm /var/lib/mysql/mysql.sock
    

    如果觉得每次发生 DB error 去删除 socket 文件比较麻烦,可以参考一个一劳永逸的办法:Change MySQL socket path for FreePBX

    还有一点值得注意,如果发生这个错误,外网访问是看不到这个错误提示的,甚至内网的子内网也看不到,看上去就像 httpd 未启动。而且,发生了这个错误后,启动时其他服务也受影响,sshd 就不再启动(在我看来逻辑不应该是这样)。

  • FreePBX alpha-6.12.65-2 and CSipSimple

    FreePBX 出了新版。我下了 “64bit ALPHA-6.12.65-2 Release Date-01-15-14 FreePBX 12, Centos 6.5 Asterisk 11 or 12” 来装,装好以后发现多了一个 PJSip,搞得我晕乎了一天。

    了解了一下 PJSip,发现它并不是什么新鲜玩意,只是 FreePBX 刚把它整合进来。其他 Sip 相关软件,如 CSipSimple,已经用 PJSip 很久了。

    之前的 FreePBX 只有一种 Sip,现在 Sip Settings, Sip Extensions, Sip Trunks 都分为 PJSip 和 Sip。有时显示为 Chan PJSip 和 Chan Sip,但又不一致,象我这样的新手误以为 Chan Sip 不是原来的 Sip,因此琢磨到底是该用 PJSip 还是 Sip,浪费了不少时间。

    现在 FreePBX 把 PJSip 放在 Sip 前面,PJSip 沿用常用的5060 端口,Sip 则另开了 5061 端口,大有 PJSip 取代 Sip 的意思。而我一开始也没发现 Sip 改端口了,使劲注册分机都是徒劳。

    FreePBX 创建了 PJSip 分机,我用 CSipSimple 去注册,CSipSimple 端显示在线,但在 FreePBX PBX Status 里看不到可用分机线。我想是 FreePBX 在应用 PJSip 时有 bug,所以不要强求,用 Sip 已然不错。

  • Fix WangWang link

    在 Windows 下刚装了最新版的淘宝旺旺,但是点击网页上的卖家,总是打开网页版的旺旺。

    这真有点滑稽:以前在 Linux 下,没有旺旺可用,可点击网页上的卖家,总是先企图运行旺旺 exe。

    言归正传,解决办法是手动注册 AliIMX.dll。

    regsvr32 "C:\Program Files (x86)\AliWangWang\8.00.05C\AliIMX.dll"
    

    以后版本不同,AliIMX.dll 位置可能会有变化,该改就改。

  • Yum clean all cleaned warnings

    Warning: group core does not exist.
    Warning: group core does not exist.

    今天在 Fedora 20 上更新应用,碰到一大堆 warnings:
    Warning: group core does not exist.
    Warning: group gnome-desktop does not exist.
    Warning: group multimedia does not exist.
    Warning: group firefox does not exist.
    Warning: group guest-desktop-agents does not exist.
    Warning: group base-x does not exist.
    Warning: group anaconda-tools does not exist.
    Warning: group fonts does not exist.
    Warning: group hardware-support does not exist.
    Warning: group dial-up does not exist.
    Warning: group printing does not exist.
    Warning: group libreoffice does not exist.
    Warning: group input-methods does not exist.
    Warning: group standard does not exist.

    但用了一个

    yum clean all
    

    再作

    yum update
    

    就好了。真是太简单了。可能这几天碰到的事情比较烦,遇到简单的反而不适应了。

    顺便说一下 Fedora 20 桌面版,没有明显的 bugs,挺稳定的。用了这么多年的 Fedora,感觉终于进入了 Fedora XP 时代。记得以前用 Windows,从 95,98,到 ME,没有一个省心的,总是莫名其妙的问题,经常重装系统。到了 XP,终于稳定了,装一次可以用很久很久(这让 Vista, Windows 7, 和最新的 Windows 8 没有掀起新的高潮)。当然,Fedora 20 出来没几天,我说它稳定,可能为时过早,只是一种直觉,希望 Fedora 20 日后的表现不要辜负我。

  • Get rid of snapdo.com

    Snapdo.com 非常流氓,一旦进驻,到处修改设置,把每个浏览器改得面目全非。

    Snapdo haunted in my computer
    Snapdo haunted in my computer

    杀毒软件不当它是病毒,所以指望杀毒软件来修正错误是不可能的。我手动修正了多处地方,过了几天发现它还潜伏在那里。

    今天又发现 Snapdo 原来是 Quickshare 在作祟。去 installed programs 里一看,果然有一个 Quickshare (之前没找到 Snapdo,以为 Snapdo 不敢暴露自己)。赶紧卸载。

    Quickshare installed
    Quickshare installed

    发现 Snapdo 是 Quickshare 纯属偶然。因为 Chrome new tab 时仍出现 Snapdo,我搜了一下怎么恢复 Chrome new tab。有人说在 chome://flags disable Instant Extended API,但没效果,又有人说在 chrome://extensions/ disable all extensions。我这才发现 Quickshare,直接移除。

    Remove quickshare extension
    Remove quickshare extension
  • Use Android mobile as a GSM gateway

    I dream for an Android app which can make mobile serve as a GSM gateway. In many scenarios I need such an app.

    • I am abroad but I want to make calls to and receive calls from the UK contacts. I can leave the mobile in the UK on a charger, then connect to the mobile via Internet when abroad, via SIP protocal probably.
    • Call plan of mobile phone contract  has unlimited calls included, so I perfer to make calls via GSM network. But I also like to talk on the desktop IP phone, which make my business look professional.

    In other words, I need an IP PBX app for Android, but no one made it available. Many apps of SIP client are on the marketplace, but no SIP server.

     

  • Hangouts SMS integration is useless

    Android 手机上 Hangouts app 提示有更新,据说支持 SMS 了,看着更新挺期待的。

    我是指望能在电脑上上 Hangouts 输入短信内容,手机上同步得到短信内容,然后直接发送到联系人。虽然我已经用 Talk2phone 实现了电脑收发短信,但 Hangouts 作为 Android 嫡出的 app,我当然希望它能够接管这个功能。但更新以后一用,非常失望。电脑上的 Hangouts 根本看不到 SMS 联系人(其实就是一个手机号码),只有手机上的 Hangouts 能看到,所以无法实现用电脑发短信。Hangouts SMS integration 只是用 Hangouts 来读写 SMS app,重复做了 SMS app 接收和发送的工作。

    Hangouts SMS integration 把即时通讯的内容放在了一个 app 里,没有实质意义。更糟的是,我原先在手机上装了 Talk2phone app,实现电脑收发短信的功能(主要是发短信),现在 Hangouts 更新,Talk2phone 的机器人联系人 mobilenotificationsapp@appspot.com 也不见了,估计是 Talk2phone 没有相应地更新。

    不仅如此,其他 app 的机器人也不见了,如 livechat。

    我赶紧把电脑版的 Hangouts 恢复到早期版本,各个机器人都回来了。Hangouts SMS integration 真是误事。Google 这回没动脑子,推出个不成熟的功能。之前推出很多夭折的产品倒也没影响什么,Gtalk/Hangouts 毕竟是成熟产品,起点不一样啊。

     

     

  • Step by step setup OpenVPN server on DrayTek router

    一直以来都是偷懒,习惯用 PPTP 连接 VPN server。但 PPTP 安全性欠佳,overhead 又偏大,是时候让自己过渡到 OpenVPN 或者其他非 PPTP 方式的 VPN 了。

    找到一个教程,是针对 Windows 用户的,先做个笔记。有空之时我再研究 Linux client 怎么连入 OpenVPN server on DrayTek router。

  • Failed to install Fedora 20 beta 5

    我常用的一台 Fedora 18 无法做 yum update 好久了。所以想到重装。Fedora 20 beta 5 已经出来了,也正好趁此尝尝鲜。

    我按我的常规做好了 liveusb,可是非常奇怪,启动不了,在启动刚开始就卡住了。提示信息为

    Secure boot not enabled
    error: failure reading sector 0xfc from “hd1”
    error: failure reading sector 0xe0 from “hd1”

    我一开始以为 liveusb 没做好,可拿到另一台机子却能毫无故障地启动了。我就排除了 liveusb 自身的原因。

    有人说这是 BIOS 里 Secure boot disabled 的缘故,可我的 BIOS 根本没这个选项。

    有人说这是 EFI (UEFI) boot 造成的,我选择了不从 EFI 设备启动,但仍从同一个 liveusb 启动,结果错误提示 Machine check error,然后就自启了。

    搞了半天,放弃安装 Fedora 20,转而研究 Fedora 18 为什么无法做 yum update。结果发现,是 [Errno -1] Metadata file does not match checksum Trying other mirror 之类的错误造成的。我试着

    yum clean metadata
    

    再作 yum date 就很顺利了。

  • Google Drive server rejected files uploaded in Windows

    Google Drive server rejected file uploaded in Windows
    Google Drive server rejects file uploaded in Windows

    我发现在 Windows 下我无法上传文件到 Google Drive。我用的是 FireFox,提示的错误信息是 “Server rejected”。一开始我以为是 Google Server 停摆了,但转用 Fedora 下的 FireFox,一切正常。我不信邪,又在 Windows 下尝试上传各种后缀的文件,.jpg, .doc, .pdf 都试过了,全部失败。

    我很少在 Windows 下操作,也不知道这个问题存在多久了。难道是 Google 跟 Microsoft 叫劲,给 Windows 用户一点颜色看看?我觉得 Google 不至于干损人不利己的事,但我不确定。于是我试图改变 Windows 下 FireFox 的 User Agent,在 about:config 里新建了一个名为 general.useragent.override 的字串,值为 Mozilla/5.0 (X11; Linux x86_64; rv:20.0) Gecko/20100101 Firefox/20.0。

    Custom FireFox user agent
    Custom FireFox user agent

    这样 FireFox for Windows 看上去象 FireFox for Linux 了。

    Forged user agent
    Forged user agent

    可是,Google Drive 依然是 “Server rejected”。证实 Google 并没有区别对待 Windows 用户。

    接着,我继续研究了一下 FireFox 无法上传文件的原因,看来是多账户登录 Google 后的偶然结果。有人说是无法上传至默认账户以外的账户,但我亲自试了一下,这个说法也不准确。看来不要在这个问题上过于纠结,清空一下浏览器历史,一切都正常了。