大猫の意淫网志

MediaTemple 如何用SSH升级WordPress

Saturday, February 20th, 2010

WordPress 真是越来越嚣张了, 传授一招用 SSH 几秒钟快速升级的方法如下
假设你老的wordpress文件就直接丢在根目录下

首先用SecureCRT或Putty等登陆上去
(帐号密码同FTP,端口问大猫)

登陆后会有个提示符,看似 DOS 胜 DOS 其实就是 DOS

MediaTemple 用户登陆后的默认目录是
(可输入 pwd 查看)

/var/www/vhosts/ooxx.me/

那么我们来输入

cd httpdocs

cd httpd 再按 tab 补全

进入httpdocs目录,也就是网站根目录

wget http://wordpress.org/latest.zip
中文版地址
http://cn.wordpress.org/
wp中文团队做的汉化
http://code.google.com/p/wpcn/downloads/list

这句就素获取最新的 wordpress 到当前目录

unzip latest.zip

解压缩出来一个wordpress目录,包含最新的文件

alias cp=cp

写这句是因为CentOS默认把 cp 映射为 cp -i 覆盖会提示,所以咱把他复位

cp -rf wordpress/* .

把 wordpress 目录下的文件复制并覆盖当前目录的文件

升级完成

扫尾(删除升级文件)

rm -rf wordpress/ latest.zip

或者

rm -rf wo 按tab补全 la 再按tab补全

相关资料

SSH入门教程(常用命令)
Linux 下的 cp mv rm
看不懂回头我翻译下

在 MediaTemple DV(linux)上安装 Java 6 和 Tomcat 6

Tuesday, February 9th, 2010

呃,看起来很少有主机支持 Java Web application, 总所周知的原因,偶本人是 MediaTemple 的死忠用户 - 他们的价格合理(穷人当偶木说,自己去看看庙的合租吧),服务一流,是偶用过的主机中最赞滴

但是MediaTemple也不支持Java, 偶的意思是他们的 "(dv)"没有把 Java 默认安装, Plesk后台躺着一只死猫(需要花钱购买Plesk的TomCat支持)

不过大猫的一位朋友拜托偶装个TomCat, 大猫说朋友一场不谈钱
他很自觉的塞了一把银子过来,俺也不好拒绝... ...

只要有 root权限, 让偶们来把  Java 和 TomCat 搞起

第一步: 开启 root 权限

进入MediaTemple后台 http://ac.mediatemple.net

开启 root 和安装好开发者工具包

第二步: 下载 Java

这次要求只是一个网站跑 jsp 那偶喜欢直接把 Tomcat 丢在那个站的目录下,当然你可以随便安装在什么目录,只要自己找的到

于是偶准备丢在
/var/www/vhosts/ooxx.me/subdomains/app/dependencies

首先下载最新的 Java JDK RPM bin 文件
你可以在 Java developers Web site 获取

下载到本地或直接 wget 也没关系(wget过来文件名巨长, 自行mv一下)

tips: SSH下重命名超长超烂文件名技巧
例如有个文件的文件名是
jdk-6u18-linux-i586-rpm.bin\?AuthParam\=1265698813_406a5d7af31c0eefcc5819168ddcc352\&TicketId\=CJ0mgZXDkTeGxJrrXYELBA8\=\&GroupName\=CDS\&FilePath\=%2FESD6%2FJSCDL%2Fjdk%2F6u18-b07%2Fjdk-6u18-linux-i586-rpm.bin\&File\=jdk-6u18-linux-i586-rpm.bin

mv不是移动文件命令么? 你说移动和重命名有区别咩?

我们需要输入

mv jdk-6u18-linux-i586-rpm.bin\?AuthParam\=1265698813_406a5d7af31c0eefcc5819168ddcc352\&TicketId\=CJ0mgZXDkTeGxJrrXYELBA8\=\&GroupName\=CDS\&FilePath\=%2FESD6%2FJSCDL%2Fjdk%2F6u18-b07%2Fjdk-6u18-linux-i586-rpm.bin\&File\=jdk-6u18-linux-i586-rpm.bin jdk-6u18-linux-i586-rpm.bin

但输入时只需要 mv空格j按Tab自动补全文件名再按空格 jdk-6u18-linux-i586-rpm.bin 回车
这里的j是文件名首字母,当然你可以输入jd后按tab或jdk后,
如有首字母相同的文件在同目录下,会无法补全并全部列给你,那会儿多打几个字再tab

Tab补全法是入门者必须要掌握的, 要是有朝一日你成为高手了,那就复制粘贴好了...

第三步: 运行 Java 安装程序

好,我们
mkdir JDK
然后
cd JDK
切进去
把刚才下载的 jdk-6u18-linux-i586-rpm.bin ftp上去或直接wget进去
增加执行权限(权限的帖子酝酿中随后放出)
chmod a+x *.bin
OK,你可以执行了
./jdk-6u18-linux-i586-rpm.bin
按住回车到 Java 协议的末尾,他会问你yes还是no
你输入no按回车的话就会退出安装
yes的话可能就装好Java鸟

第四步:下载 Tomcat

你可以在 Tomcat Web site 找到最新的 Tomcat 版本
选择 Core ,不是 Deployer 或 Source
和Java一样
mkdir Tomcat
然后
cd Tomcat
用ftp或wget把下载来的压缩包丢进去
wget http://apache.inetbridge.net/tomcat/tomcat-6/v6.0.20/bin/apache-tomcat-6.0.20.tar.gz

第五步:解压缩Tomcat


gunzip apache-tomcat-6.0.20.tar.gz
tar -xf apache-tomcat-6.0.20.tar

解压缩后会自动创建一个 apache-tomcat-6.0.20 的目录,目录里是压缩包里的内容
偶喜欢丢在自己的目录里
把它们移动出来
mv apache-tomcat-6.0.20/* .

第六步:测试 Tomcat

./bin/startup.sh
Tomcat 会吐出4行信息,例如

Using CATALINA_BASE: /var/www/vhosts/ooxx.me/subdomains/app/dependencies/tomcat
Using CATALINA_HOME: /var/www/vhosts/ooxx.me/subdomains/app/dependencies/tomcat
Using CATALINA_TMPDIR: /var/www/vhosts/ooxx.me/subdomains/app/dependencies/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /var/www/vhosts/ooxx.me/subdomains/app/dependencies/tomcat/bin/bootstrap.jar

可以试着访问下
http://ooxx.me:8080 (换成你自己域名,偶其实没装在ooxx里)
因为apache的httpd跑着80端口, tomcat默认端口是8080,俩不能弄一块儿,除非反向代理,那个自己去查
如果看到Tomcat Management界面,辣就是安装好了

第七步:创建 Tomcat 服务

vi /etc/init.d/tomcat
按i进入插入模式,粘贴下面的代码



# This is the init script for starting up the
#  Jakarta Tomcat server
#
# chkconfig: 345 91 10
# description: Starts and stops the Tomcat daemon.
#

# Source function library.
. /etc/rc.d/init.d/functions

# Get config.
. /etc/sysconfig/network

# Check that networking is up.
[ "${NETWORKING}" = "no" ] && exit 0

tomcat=/your/path/to/tomcat
startup=$tomcat/bin/startup.sh
shutdown=$tomcat/bin/shutdown.sh
export JRE_HOME=/usr

start(){
 echo -n $"Starting Tomcat service: "
 #daemon -c
 $startup
 RETVAL=$?
 echo
}

stop(){
 action $"Stopping Tomcat service: " $shutdown
 RETVAL=$?
 echo
}

restart(){
 stop
 start
}

# See how we were called.
case "$1" in
start)
 start
 ;;
stop)
 stop
 ;;
status)
 # This doesn't work
 status tomcat
 ;;
restart)
 restart
 ;;
*)
 echo $"Usage: $0 {start|stop|status|restart}"
 exit 1
esac

exit 0

esc 输入 :wq 保存
(记得修改里面的路径)

继续增加执行权限
chmod a+x /etc/init.d/tomcat
测试下好使不

/etc/init.d/tomcat stop
/etc/init.d/tomcat start

嗯嗯... 事情就是这样子滴

Google Apps 自定义域名邮局无法接受 WordPress 邮件

Sunday, December 6th, 2009

girl

如果你用 Google Apps 自定义域名邮箱, 很有可能你无法收到这个域名发给你的邮件

其实几个月前意识到这个问题了, 最近有人问起才发现是普遍问题,
也不仅仅是 wordpress 的邮件无法收到, 包括 drupal 等其他程序

原因很简单:

你的虚拟主机默认有邮件服务的, 即使你的MX已经指向了 Google Apps ,在本机发送邮件时, 那呆子一看, 哟,自己搞自己嘛,那就用本机的邮件服务去发,当然收不到了

解决方案:

(mt) Miao.in 进行 MediaTemple 合租的小盆友:
Plesk 面板

左侧菜单选择 Home
右侧单击要处理的域名
找一个叫 [ Mail ] 的图标
找第二个图标 叫 [ Switch Off ] 禁用掉本机的邮件服务
done

(mt) MediaTemple 自己玩 (gs) 套餐的小盆友:
mt 自家面板

进入管理面板
猛击一个叫 [ enable/disable mail ] 的按钮
会提示
Choose 'YES' if the MX record for the domain is pointed at your (mt) Grid-Service. Choose 'NO' if you are hosting your email on a different server.
选择 [ oh, NO ]

在 bluehost 等便宜货玩儿的勤俭节约的小盆友:
可能是 cpanel

寻找 Change MX Entry 就是类似邮件设置的
Always accept mail locall even if the primary mx does not point to this server
这个选项前面的勾勾去掉

还发现个灵异的问题
在web界面的 Google Apps 邮局里,设置了如果用户名不存在就转发给 例如 root@ooxx.me
但是用 root@ooxx.me 给不存在的地址例如 die@ooxx.me 发,就会收不到,虽然没啥大碍,就是想不通为啥这样子...

(mt) Miao.in LOGO

Saturday, December 5th, 2009

身为一枚设计白痴
Photoshop教程看了两章就把书丢掉了

这会儿要用了,做个简单的 LOGO 都搞半天...
不知道还凑合否?

<a href="http://miao.in/"><img src="http://miao.in/logo/miao_125x125_dk.jpg" height="125" width="125" alt="(mt) Miao.in 合租" /></a>

SSH 入门教程(常用命令)

Sunday, October 25th, 2009

ssh

适用范围: 有SSH权限的空间,比如 miao.in
难度: easy
学习时间: 5分钟
工具: 推荐 SecureCRT

1. 基础命令

A.显示文件源代码
cat ooxx.php
没错, cat 是一个常用查看源代码的命令,优点是很方便很可爱,缺点是会直接刷刷刷显示所有源代码,文件太长只能看到屁股后面的那坨代码

B. 查看当前目录
pwd
pwd不是password,而是查看当前目录,会输出完整的路径

C. 更改目录 Change Directory (cd)
cd /path/to/directory/
有DOS基础的同学应该会淫荡的一笑吧,路径可以用相对也可以用绝对

D. 列出文件/子目录 Listing Files/SubFolders(ls)
ls
默认只显示文件名,你也可以带个参数玩,比如
ls -alh
带 -alh 输出会很爽... 自己试试, 大猫喜欢把 ls -alh 颜射为 ll
-a显示全部文件
-l比较详细的列表
-h人类能看懂的比如把1024显示为1K

E.帮助
命令 --help
任何命令后面带一个 --help 都会显示一个简洁版的帮助,记不住参数就查一下

F.获取远程文件 wget
wget http://ooxx.me/me.jpg
就会获取远程的me.jpg文件到当前目录,一般搬家的时候用这个
让服务器去获取另一个服务器的数据,速度会快的完全不像男人

G.压缩解压缩
unzip wordpress.zip
如果文件是zip形式的,比如刚从wordpress主站wget了一个压缩包过来,只需要输入unzip 文件名,就可以解压缩到当前目录了
tar -czvf ooxx.tar.gz * .[!.]*
把当前目录所有文件以tar命令打包为ooxx.tar.gz文件
-c创建
-z用gzip压缩方式
-v显示压缩过程
-f搞成一坨file
tar -xzvf ooxx.tar.gz
解压缩 ooxx.tar.gz 里的文件到当前目录
-x解压缩
-z用gzip压缩方式
-v显示压缩过程
-f搞成一坨file

2. 文件系统命令

A.显示磁盘使用率
df
显示整个主机的总容量以及比率

B.列表文件/子目录使用率 (du)
du
会列出所有文件以及子目录的大小,不是人看的...
du -sh
-s就是summary,只输出当前文件夹总容量
-h一般在linux就是human给人看的意思,会把1048580b转换为1mb显示
du -h --max-depth=1
嘿,只列出当前文件夹和第一级子目录占用大小

C.删除文件 Remove files (rm) 少儿不宜的命令,总是需要确认
rm -vf miao.in
强制删除miao.in这个文件并不需确认,列出删除文件列表

强制删除,不要执行,除非你知道你在干嘛...
-v一般v参数都是显示过程的意思
-f 强奸的单词会不会拼? F-U-C-K的缩写,不确认直接F-word了
rm -rf ooxx
删除ooxx这个文件夹,包含它的子文件和子文件夹

删除文件用上面的命令,但删除文件夹的时候就需要跑下遍历了
-r 比较本土化,是"日"的缩写,在所有命令里都是 recursive 的意思,有些命令是大写的 R 需要注意

D. 拷贝文件 (cp)
cp ooxx.me miao.in
复制ooxx.me这个文件并重命名为miao.in

E. 移动文件/重命名 (mv)
mv ooxx.me miao.in
重命名ooxx.me为miao.in
如果加路径,就是移动到某个路径并重命名为miao.in
和DOS不一样,移动文件和重命名换个思路,其实是一个套路,不是么?

F. 创建空文件 (touch)
touch miao.in
这个很色情的命令,就是创建一个 miao.in 的空文件
如果touch了已有的文件,则会更新那个文件的日期为当前
如果touch次数多了,会high

3. 文件权限

A. 更改文件权限 (chmod)
chmod 777 miao.in
默认文件为644,文件夹为755

TIP:
1st digit=Owner; 2nd=Group; 3rd=Other
(-rwxrwxwrx = 777, -rwxr-xr-x = 755, -rw-r--r-- = 644, etc.)
7 = Read + Write + Execute
6 = Read + Write
5 = Read + Execute
4 = Read
3 = Write + Execute
2 = Write
1 = Execute
0 = All access denied

4. 高级命令

A. 查找. 常用命令,让我们来找一下10MB以上的文件吧
find . -type f -size +10000k -exec ls -lh {} \; | awk '{ print $5 ": " $9 }' |sort -n

B. Grep, 手里握着大西瓜
ls -alh | grep ooxx
只显示含有ooxx的那几列,当然你在cat的时候配合这个用找文件里的某些字段很方便

C. 分页 (Less/More)
less miao.php
如果源代码很长,则会分页显示,上下箭头滚动,输入q退出
tail -n 1000 /var/log/httpd/error_log | more
可以用 | more 参数来滚动显示页面或行

5. MYSQL 数据库

导出数据库
mysqldump -u 数据库用户名 -p 数据库名 > db_ooxx.sql
导出数据库为db_ooxx.sql

导入数据库
mysql -u 数据库用户名 -p 数据库名 < db_ooxx.sql --default-character-set=utf8
把当前目录的 db_ooxx.sql 以 utf8 编码导入,当然你原来是gbk就改成gbk
中文blog经常遇到这个情况,一不小心就 ??? 满脑子都问号了

6. VI

留意在vi里敲的每一个键... ...
VI 基础入门

Linux 是很敏感的系统,特别是大小写,
唉,周末又木有了