如题,使用的是阿里云,购买的时候是系统盘 20G ,挂载盘是 200G 。 装的 NGINX+PHP 放在,网站访问目录在:/var/www/下 里面有好几个网站: /var/www/website-1 /var/www/website-2 /var/www/website-3 .........
前两天用 df -h 查看系统盘 / 快要满了,而 /mnt 挂载盘还是空的。 各位大神这种情况该怎么办,我要整个把服务器重装一遍到挂载盘上吗?
还是要在 /mnt 下面 mkdir 很多个子文件夹,然后用软链接的方式分别链接到 /var/www/website-1/upload /var/www/website-2/upload /var/www/website-3/upload .........
用来保存网站上传的新的文件之类的。 这样工作量比较小,也能暂时解决问题,不过感觉有点挫 :(
1
mringg 2017-03-19 10:39:01 +08:00 via iPhone
不如把 www 都移到数据盘,然后 ln
|
2
zjqzxc 2017-03-19 10:39:03 +08:00
如果是我的的话,我选择把 nginx 的根目录改到 /mnt/www 下,然后 mv -r /var/www /mnt/www
|
3
edison111cry OP @zjqzxc
也想过这样搞,但是当时 nginx 和 php 等很多东西都是自己源码编译的,路径都是在 /usr/local, /var 等目录了,如果我直接把 mv -r /var/www /mnt/www , 会不会有问题呢? 还是这个 www 目录只跟 nginx.conf 文件里: server { root /var/www; } 这段话有关系,然后改成: server { root /mnt/www; } 再重启 一下 nginx 就 行了? 其他的 PHP 什么别的都不用管,也不用重启 ? |
4
jarlyyn 2017-03-19 10:46:53 +08:00
把 /var 目录挂到 mnt 下去……
|
5
edison111cry OP @jarlyyn
网上搜了一下是大概如下的流程吗? ------------------------------------------------------------------------------------------------ 6. 拷贝 /var 下的所有内容到新的硬盘 cp -pdr /var /storage 或在 /var 目录下执行: find . -depth -print | cpio - pldvm /temp 7. 删除当前 /var 目录下的内容 rm -rf /var/* 8. 重新挂载硬盘到 /var 目录 umount /dev/sdb1 mount /dev/sdb1 /var 9. 设置开机启动自动挂载 新创建的分区不能开机自动挂载,每次重启机器都要手动挂载。 设置开机自动挂载需要修改 /etc/fstab 文件 #vi /etc/fstab 在文件的最后增加一行 /dev/sdb1 /var ext3 defaults 1 2 ------------------------------------------------------------------------------------------------ 感觉有些小复杂,万一没搞成功,岂不是所有的网站都用不了,有点小怕怕 :) |
6
solrted 2017-03-19 10:55:18 +08:00 via Android
把 nginx php ,网站数据等都放到 /mnt 分区下。
|
7
zjqzxc 2017-03-19 10:55:18 +08:00
@edison111cry web 目录只用改 nginx.conf 文件然后重启就行,如果使用了 cgi-bin 的话对应目录也要调整或者不用调整;
如果说有很多自己编译的(一般来说自己编译的软件和 web root 并没有关联,但是我不知道你是不是还用了什么不常见的东西)且实在不放心的话,就 cp 过去,/var/www 下的东西,手动删除自己知道肯定没可以删的。 |
8
jarlyyn 2017-03-19 11:06:40 +08:00
|
9
lun10439547 2017-03-19 11:21:18 +08:00
还不如 开一台按量的 然后镜像 顶上。。。最后慢悠悠的重装 数据迁移。。。这样可以避免乱中出错。。。。
|
10
Aliencn 2017-03-19 12:32:55 +08:00
重装一遍系统,你会发现系统盘变成 40G 了
|
11
loading 2017-03-19 12:34:09 +08:00
建议再买一台,然后挪过去再说,不要乱玩线上服务器。
|
12
edison111cry OP 感谢楼上各位的回复,不过以前编译用的东西确实比较多,还有 memcache 和 redis 等都同时在用,可能这些东西跟目录结构关系不大,不过就怕万一真的搞到 /mnt/www 目录下真出问题了那才是悲剧呢。
我就先准备用最挫的方法,软链接的方式分别链接到 /var/www 目录下有上传文件的目录吧,稍微改一下代码指向的目录结构。虽然方法比较挫,好歹完全在我的掌控之中。情非得已 :( |
13
binghe 2017-03-19 13:36:16 +08:00
既然是阿里云,先做一份快照。然后开搞。万一出问题了恢复快照。
|
14
caola 2017-03-19 15:49:08 +08:00
先备份,关机再快照,然后重装系统(现在阿里云默认系统般都是 40G ),或者购买更大的系统盘,再恢复快照。
|
15
liyvhg 2017-03-19 17:13:03 +08:00 via Android
mount -o bind
|
16
zjqzxc 2017-03-19 17:29:45 +08:00
@edison111cry memcache,redis 这些跟 we broot 都没关系,除非把 redis 的持久化文件扔 /var/www 里了
|