标签归档:freebsd

freebsd升级mysql client

mysql serve 是5.1.x的,客户端是 5.0.x的,用phpmyadmin,总有一个提示,说版本不匹配,感觉不爽。
用Ports的方法升级客户端,不行,报错。说5.1和5.0有冲突,只能先删除。
用了 portmaster -o databases/mysql51-client mysql-client-5.0.89
也不行。
加上 export CONFLICTS=” 后执行,还是不行。看了
pkg_info mysql\*

Required by:
php5-mysql-5.2.12
php5-mysqli-5.2.12
因为还跑着网站,就没敢贸然行事。
这天趁网站人少的时候,干了一把
删除老的package
#pkg_delete -f mysql-client-5.0.89
到mysql5.1 client的目录
#cd /usr/ports/databases/mysql51-client

#make install clean
。。
。。
等待
。。
好了看一下版本
#mysql -V
mysql Ver 14.14 Distrib 5.1.42, for portbld-freebsd8.0 (amd64) using 5.2
用portmaster升级2个有依赖的php组件
#portmaster php5-mysql php5-mysqli
等待


重启apache,好了。
出乎意料的是安装过程中,php可以正常的链接mysql。网站正常,还以为pkg_delete会删除使用的so文件,导致网站出状况。

感谢hshh

freebsd linux如何更换默认的shell

linux等的shell很多,一个人不太可能全部都熟悉。我用bash比较多。有个新的环境是csh。没有ctrl+r的功能,不爽。想改成bash。
安装bash的方法不谈。
查看一下当前的shell

[phpbird@host3 ~]$ echo $SHELL
/usr/local/bin/bash

当然,这是修改后的。
修改缺省的shell可以修改 /etc/passwd
这个文件是用:分割的多行文件,找到需要修改的用户。把最后一行的shell路径替换掉就可以。当然如果不让登录,就修改成一个不存在的shell。
如果改错了,就会麻烦点了。

还有一个是用命令来
chsh
很优雅的方法
chsh -s /path/to/shell {user-name}
我这里就是
chsh -s /usr/local/bin/bash juhui
不是root用户,需要输入密码。