Debian5 lowend VPS配置札記
成果 http://216.24.196.215/p.php
「VPS準備用來作為upstream+cache前端,所以現在已經移除了PHP支援^o^」
nginx0.8.53+ngx_cache_purge-1.2自動編譯精靈:
wget -c http://4i4u.com/nginx_upstream.sh
需要購買這家VPS(支援支付寶)的可以從這裡進http://is.gd/ib5lt
https://www.sentris.net/billing/cart.php
http://tinyvz.com/
http://www.host700.com/
http://www.vpsee.com/
http://www.v2ex.com/t/88180
https://www.budgetvm.com/
http://acrosvm.com/openvz-vps/
首先re-install 成YardVPS提供的最小化debian5 32bit系統
dpkg-reconfigure tzdata //調整時區為Shanghai
apt-get install apt-spy //安裝apt-spy
mv /etc/apt/sources.list /etc/apt/sources.list.bak //備份原來的sources.list
apt-spy update //更新鏡像列表檔 /var/lib/apt-spy/mirrors.txt
apt-spy -d testing -a Asia
說明:man apt-spy //獲取詳細的使用方法
-d distribution 選擇 debian 的發行版本,例如 stable 。除升級外,必須使用此參數。
-a area 選擇進行測試的區域,例如 Aisa
由於我買的在米國,所以我選的是america,測試後生成了peer1的sources.list
隨後apt-get update時出現下面的錯誤:
W: GPG error: http://security.debian.org stable/updates Release: The following signatures couldn't be v
erified because the public key is not available: NO_PUBKEY 9AA38DCD55BE302B
這是由於簽名無法認證,執行下列命令即可
# gpg --keyserver pgpkeys.pca.dfn.de --recv-keys 9AA38DCD55BE302B
# gpg --fingerprint 9AA38DCD55BE302B
pub 4096R/55BE302B 2009-01-27 [expires: 2012-12-31]
Key fingerprint = 150C 8614 919D 8446 E01E 83AF 9AA3 8DCD 55BE 302B
uid Debian Archive Automatic Signing Key (5.0/lenny) <[email protected]>
# gpg --export -a 9AA38DCD55BE302B| apt-key add -
顯示已經add成功!
This is for a different key, but besides that, that's it - and you may use a
different keyserver.
下載一下這個shell腳本,我只用到其中關於system配置的部分,由於是新手也看不太懂,沒有做修改。
# wget -c http://us.4i4u.com/setup-debian.sh
# bash setup-debian.sh system
修改dropbear埠:
nano /etc/xinetd.d/dropbear
設置成開機自動啟動:
nano /etc/rc.local
在最後加一行:
/usr/local/sbin/dropbear -p port
開始是用該腳本搭建的LNMP環境,可是php-cgi總是運行不成功-_-||
中間是編譯安裝的Nginx、PHP、MySQL,略過,需要注意的是MySQL在編譯過程中就skip了innodb和bdb(消耗記憶體的大戶),成功後就不用再修改了。
編譯時產生了大量臨時文件,最後建議reboot一下機器!
執行vim /usr/local/php/etc/php.ini
禁用下列函數
disk_free_space,dl,escapeshellarg,escapeshellcmd,exec,mail,passthru,popen,proc_close,proc_get_sta tus,proc_nice,proc_open,proc_terminate,shell_exec,symlinkc,system
备份恢复:
tar -zcvpf /home/full-backup.tar.gz / --exclude=/mnt/* --exclude=/proc/* --exclude=/sys/*
这个命令是把根目录下的所有内容备份到full-bakup.tar.gz的备份文档中
-z表示进行压缩gzip格式
-c(建立一个备份文档
-v显示压缩过程
-p保留文件的权限
--directory'指定不备份的文件夹
增量备份
1.首先创建完全备份:tar -czvf -g zeng aa.tar.gz /var
待/var中的数据变化后
2.再做增量备份 : tar -czvf -g zeng aa.tar.gz.1 /var
差异备份
find /var -mtime -1 -print> filelist
产生要备份的档案的列表 -1表示是一天的时间
tar -czv -T filelist -f /backup.tar.gz
依据文件列表进行备份. -T选项可以指定包含要备份的档案的列表
使用 dd 命令创建磁盘镜像
此法适用于备份整个磁盘。打开终端(在示例中要将 hda 替换成你需要备份的分区) 创建磁盘镜像
dd if=/dev/hda1 of=/home/hda1.bin
创建压缩磁盘镜像
dd if=/dev/hda1 | gzip > /home/hda1.bin.gz
备份 MBR(主引导记录)
dd if=/dev/hda of=/home/hda.boot.mbr bs=512 count=1
恢复 MBR (从 Live CD)
dd if=/mnt/hda1/home/hda.boot.mbr of=/dev/hda bs=512 count=1
从一个磁盘备份到另一个磁盘
dd if=/dev/hda of=/dev/hdb conv=noerror,sync bs=4k
来看以下这个命令
dd -if /dev/hda1 > partitionimage.dd
此命令将备份 "/dev/hda1" (hda1上的第一个分区)。 整个磁盘(包括 MBR)可以作为一个输入“文件”只用 /dev/hda 备份即可。 使用以下命令进行恢复:
dd -if partitionimage.dd -of /dev/hda1
A little rationality lifts the quality of the debate here. Thanks for cotguibrtinn!