ubuntu 6.10 服务器设置
一、需求分析
建设www,ftp站点,用户情况如下:
web站点 用户名
qq999
yysky
lili
ftp用户:
rose
uclandup ucland 这两个用户是一组,前者可以上传,后者用来下载
要从另一台服务器转移站点数据。
本机已经有单独的/db和/www分区分别放置数据库和www文件,要改动相应目录
二、添加www用户和目录
cd /www/
sudo mkdir sites
准备php用的tmp和session目录,暂未设置权限,也未修改php.ini,可以今后修改
sudo mkdir tmp
sudo mkdir session
cd sites
sudo mkdir
sudo mkdir
sudo mkdir
sudo useradd -d /www/ -s /sbin/nologin yysky
sudo useradd -d /www/ -s /sbin/nologin qq999
sudo useradd -d /www/ -s /sbin/nologin lili
sudo chown -R yysky:yysky
sudo chown -R lili:lili
sudo chown -R qq999:qq999
sudo passwd qq999
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
sudo passwd lili
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
sudo passwd yysky
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
三、添加ftp用户
sudo useradd -s /sbin/nologin rose
sudo useradd -s /sbin/nologin -d /home/ucland uclandup
sudo useradd -s /sbin/nologin ucland
ubuntu的useradd不会自动生成用户目录,所以要手工建立:
cd /home
sudo mkdir ucland
sudo mkdir rose
sudo chown -R uclandup:uclandup ucland
sudo chown -R rose:rose rose
安装vsftpd
sudo apt-get install vsftpd
然后修改vsftpd.conf
sudo vim /etc/vsftpd.conf
把这4行的注释去掉
local_enable=YES
write_enable=YES
chroot_local_user=YES
local_umask=022
但是这样除了安装时设定的用户外,刚才加的没有shell权限的用户不能登录ftp,
用下面的语句
sudo echo "/sbin/nologin" >> /etc/shells
会提示没有权限,为什么呢?是因为sudo只对>>重定向之前起作用了,干脆用传统root,
sudo passwd root
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
su
Password:
换成root了,现在重启vsftpd,就可以正常登录了,
# /etc/init.d/vsftpd restart
四、移动mysql的数据目录
关闭mysql服务
/etc/init.d/mysql stop
移动mysql目录,-p是保持文件和目录的所有者等
cp -R -p /var/lib/mysql /db/mysql5
再编辑my.cnf
vim /etc/mysql/my.cnf
把其中的
datadir = /var/lib/mysql
改成
datadir = /db/mysql5
启动mysql
/etc/init.d/mysql start
然后修改数据库root密码,加用户和库,mysql的初始密码为空
# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 313 to server version: 5.0.24a-Debian_9-log
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>USE mysql;
mysql>UPDATE SET password=password('mypassword') WHERE user='root';
mysql>FLUSH PRIVILEGES;
mysql>CREATE DATABASE lili;
mysql>CREATE DATABASE yysky;
mysql>CREATE DATABASE qq999;
mysql>GRANT ALL PRIVILEGES ON lili.* TO IDENTIFIED BY 'lilipassword';
mysql>GRANT ALL PRIVILEGES ON yysky.* TO IDENTIFIED BY 'yyskypassword';
mysql>GRANT ALL PRIVILEGES ON qq999.* TO IDENTIFIED BY 'qq999password';
mysql>EXIT;
五、设定apache2
# cd /etc/apache2/sites-enabled
虚拟主机设定文件不能有.和#,所以把.换成_
# cp /etc/apache2/sites-available/default www_lili_org
# cp /etc/apache2/sites-available/default www_yysky_cn
# cp /etc/apache2/sites-available/default www_qq999_com
修改虚拟主机其中的主机名,目录,和log
# vim www_lili_org
# vim www_yysky_cn
# vim www_qq999_com
比如改成这样
NameVirtualHost *:80
ServerName
ServerAlias *.lili.org
DocumentRoot /www/sites/
重启apache2
# /etc/init.d/apache2 restart
六、启用磁盘限额
安装quota
:~# cd /root
:~# apt-get install quota
编辑/etc/fstab
:~# vim /etc/fstab
把其中想要启用磁盘限额的分区的options由defaults改为defaults,usrquota
重新挂载分区
:~# umount /www
:~# umount /home
:~# mount -a
生成分区的磁盘用量表,参数a是所有,也可以指定分区,如quotacheck -vug /www
# quotacheck -avug
quotacheck: Scanning /dev/hda10 [/www] done
quotacheck: Cannot stat old user quota file: No such file or directory
quotacheck: Old group file not found. Usage will not be substracted.
quotacheck: Checked 453 directories and 6774 files
quotacheck: Old file not found.
quotacheck: Scanning /dev/hda5 [/home] done
quotacheck: Cannot stat old user quota file: No such file or directory
quotacheck: Old group file not found. Usage will not be substracted.
quotacheck: Checked 30 directories and 382 files
quotacheck: Old file not found.
然后编辑指定用户的磁盘限额
:~# edquota -u uclandup
Disk quotas for user uclandup (uid 1005):
Filesystem blocks soft hard inodes soft hard
/dev/hda10 0 0 0 0 0 0
/dev/hda5 8 500000 600000 2 0 0
:~# edquota -u rose
Disk quotas for user rose (uid 1004):
Filesystem blocks soft hard inodes soft hard
/dev/hda10 0 0 0 0 0 0
/dev/hda5 852492 1200000 1400000 312 0 0
其中soft和hard分别是软硬限制,以k为单位,可以用edquota -t参数来设定宽限期,默认是7天
七、转移数据
登录另一台服务器,上面有脚本,
[root@www bak]# cat bak-lili.sh
#!/bin/sh
/var/mysql5/bin/mysqldump -S/var/mysql5/mysql5.sock -ulili -plilipassword lili | gzip -f > /var/ftp/mydown/lili/mysql5.`date +%y%m%d%H%M%S`.dump.gz
tar czvf /var/ftp/mydown/lili/web.`date '+%y%m%d%H%M%S'`.tar.gz /var/www/lili.org
chown -R mydown:mydown /var/ftp/mydown/lili
那就直接从ftp下载到本服务器上来,或者上传过来也行,不过要用binary模式,特别注意上传时!
然后在本机用gzip -d 解压gz文件,用mysqladmin -u root -p lili < mysql5.x.dump 这样的命令导入
用tar zxvf web.tar.gz 把www文件解压到 /www/sites/ ,修改数据库设置文件,修改用户组目录权限等
最后用浏览器访问 来测试是否成功!
其他站点也依照此办理
阅读(1365) | 评论(0) | 转发(0) |