Oct16

【原创】Galaxy S2 (GT-I9100)国行Google服务安装步骤

Author: leeon  Click: 11719   Comments: 0 Category: 生活  Tag: galaxy s2,i9100,samsung,android,google

最近入手i9100国行一步,一直是google的忠实fans,可惜这国行上google的应用全部给废了,索性研究了一通,把google的原生电子市场和google+安装上去了,写下步骤分享给i9100的机友们:

1. 首先先下载

GoogleServicesFramework.apk
GoogleContactsSyncAdapter.apk
GoogleCalendarSyncAdapter.apk

这三个服务包并安装,下载地址http://bbs.gfan.com/android-2912275-1-1.html

机器最好给越狱root。

2. 然后安装安卓市场或安致市场把google的“电子市场”应用给安装。

3.最后操作i9100:“设定”->"帐号和同步"->"添加账户" 这时会出现google的账户图标,点击添加google账户即可,然后转去电子市场应用就发现可以用了

Sep28

rsync使用小记

Author: leeon  Click: 6600   Comments: 0 Category: linux  Tag: rsync

1. rsync 修改配置文件后无须重启rsyncd进程即可立即生效。

2. --delete参数在差量更行目录文件的时候切忌远端和目的端均不需要在目录后面加“*”,例如/aaa/bbb/*

Aug27

【原创】关于shell中变量作用域的思考

Author: leeon  Click: 10187   Comments: 0 Category: linux  Tag: shell,linux

执行一个shell脚本会在当前shell中派生一个子shell去执行任务。同理,如果一个shell脚本中调用另一个shell,也是会在执行到子shell这一步的时候再次派生一个子shell去处理脚本。例如a.sh脚本有如下信息:

[code="bash"]
#!/bin/bash
echo $$
./b.sh
[/code]

b.sh中有:

[code="bash"]
#!/bin/bash
echo $$
[/code]

执行a.sh会发现输出两行不同的进程ID,验证了每个sh在执行的时候会派生一个子shell去执行任务。

在脚本之间调用我们或许会遇到变量之间的调用关系,这里我们需要注意一下几个场景的应用:

场景1, 当前shell中创建一个变量传递给当前脚本派生的子shell,例如:

a.sh

[code="bash"]
#!/bin/bash
a="TEST"
./b.sh
[/code]

b.sh

[code="bash"]
#!/bin/bash
echo $a
[/code]

这时会发现在b.sh中是无法正常获取到a的变量值的,那么我们可以利用export命令或者set -a命令来使当前shell的变量激活到派生的子shell中。

我们只需要在a.sh中加入

[code="bash"]
#!/bin/bash
export a="TEST"
[/code]

或者

[code="bash"]
#!/bin/bash
set -a
a="TEST"
[/code]

 

场景2,派生的子shell中的变量在当前父shell中使用,例如:

a.sh

[code="bash"]
#!/bin/bash
./b.sh
echo $b
[/code]

b.sh

[code="bash"]
#!/bin/bash
b="TEST"
[/code]

我们来执行a.sh会发现输出的b变量为空。那么我们可以使用source命令或者.(点号)来激活子shell中的变量使其能在父shell中使用。

我们只需要修改a.sh,在调用b.sh前加上特殊命令或字符即可,例如:

[code="bash"]
#!/bin/bash
. ./b.sh
#或者
source ./b.sh
[/code]

Aug16

【原创】为PHP增加LDAP扩展模块支持

Author: leeon  Click: 19887   Comments: 0 Category: php  Tag: php,ldap,so,ldap2-devel

今日需要部署一套ldap的测试环境,但发现现有php并不支持ldap模块,遂打算重新编译so,但这种方式比较麻烦并且繁琐,如果仅仅是增加一个ldap模块可以通过phpize和configure的方式编译外挂加载ldap的so文件来使php支持ldap扩展拓展。

第一步是找到当前运营环境的php版本,并将此版本的源码包放入运营机器某个目录,解压。

第二步

[code="bash"] cd /xxx/xxx/php-5.2.17/ext/ldap/
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-ldap[/code]

但是检查过程异常退出,提示如下错误:

 [code="bash"]
checking for LDAP support... yes, shared
checking for LDAP Cyrus SASL support... no
checking for 3 arg ldap_set_rebind_proc... yes
checking for ldap_parse_result... no
checking for ldap_parse_reference... no
checking for ldap_start_tls_s... no
checking for ldap_bind_s... no
configure: error: LDAP build check failed. Please check config.log for more information.
[/code]

始终验证不通过,这时候排查openldap2-devel版本,以为此版本比较老,就往高版本升级,但是依旧是同样的错误,最终排查觉得有可能是openldap2-client的版本和openldap2-devel版本不一致导致,于是在网上找了一个和client版本完全匹配的devel rpm包,重新configure顺利通过校验。这个问题比较奇怪,通常情况下编译php是不需要开发包和二进制包版本完全一致,但ldap的编译却需要client和devel包版本完全一致。 

记得在make ,make install之后在php.ini上将ldap.so写入extension扩展配置中。

分类

标签

归档

最新评论

Abyss在00:04:28评论了
Linux中ramdisk,tmpfs,ramfs的介绍与性能测试
shallwe99在10:21:17评论了
【原创】如何在微信小程序开发中正确的使用vant ui组件
默一在09:04:53评论了
Berkeley DB 由浅入深【转自架构师杨建】
Memory在14:09:22评论了
【原创】最佳PHP框架选择(phalcon,yaf,laravel,thinkphp,yii)
leo在17:57:04评论了
shell中使用while循环ssh的注意事项

我看过的书

链接

其他

访问本站种子 本站平均热度:8823 c° 本站链接数:1 个 本站标签数:464 个 本站被评论次数:94 次