我目前正在考虑将一些网站从我的共享 cpanel 托管迁移到 VPS。现在我想做更多的事情,并且通过实习/工作学习了一些系统管理知识。
首先,我应该知道哪些基本知识?我知道如何设置 Apache 配置,可能知道如何设置电子邮件帐户等,但我确信还有很多我尚未了解的内容,因为我是一名程序员,而不是系统管理员。
我目前托管了多个 wordpress 网站、一些静态网站和一个 zen cart (颤抖),并将把所有账户(包括电子邮件账户)移植到新的 VPS 上。
如果有帮助的话,我目前使用 Hostgator 共享主机,并计划迁移到 Thrus VPS(Thrust VPS 网站) 在他们的基本 VPS OpenVZ 计划上。他们确实有一个 cpanel 选项,但它要贵得多。例如,我可以使用 cpanel 导入所有内容,然后关闭它并在终端侧执行所有操作吗?我对 cpanel 的实际工作方式知之甚少。
此外,他们的三个 *nix 托管包要么是 OpenVZ,要么是 Xen PV,要么是 Xen HVM,说实话,尽管我已经研究过其中的每一个,但我并不完全确定我想要哪一个以及为什么,尽管我怀疑是 OpenVZ。
答案1
当然,你不可能预测你需要知道的一切,但是这里有一个快速检查表,假设你对现代 Linux 发行版没有太多经验。
选择您希望服务器运行的发行版。Debian 衍生版、redhat 衍生版还是其他?
弄清楚 SSH 以便您可以进入您的服务器。
弄清楚你的发行版的包管理工具,以便你可以安装东西。
通过你的包管理器安装你需要的东西...例如 apache、php、mysql。
配置您安装的内容。意识到您需要更多 apache 和 php 模块。安装它们。
了解如何(重新)启动系统服务。现在您已添加所需的一堆 apache 和 php 模块并重新配置它,请重新启动 apache。
了解如何在 apache 上设置虚拟主机 (vhosts)。
亚马逊的 AWS 服务是一种快速设置虚拟机并轻松测试的好方法,而且它可以扩展为我见过的最好的托管解决方案之一。在查看其他托管选项之前,您可以先考虑一下它。
这些家伙也很好:http://www.gplhost.com/ ... 特别是如果您正在寻找不那么企业化的东西,或者想确保服务背后有真人。这是一家只有少数员工的小公司,但他们设法在全球设立了办事处,当我们凌晨 3 点打电话给他们询问愚蠢的问题时,他们也会接听电话。
答案2
cpainl 为各个帐户创建压缩档案。要将域/帐户还原/导入到非 cpanel系统,解压缩(解压?)档案并查看其中的文件结构:
total 96K
drwx------. 2 ilmostro 6 Aug 21 03:02 bandwidth
drwx------. 2 ilmostro 6 Aug 21 03:02 bandwidth_db
drwx------. 2 ilmostro 6 Aug 21 03:02 counters
drwx------. 2 ilmostro 19 Aug 21 03:02 cp
drwx------. 2 ilmostro 6 Aug 21 03:02 cron
drwx------. 2 ilmostro 26 Aug 21 03:02 dnszones
drwx------. 4 ilmostro 33 Aug 21 03:02 domainkeys
drwx--x--x. 19 ilmostro 4.0K Aug 21 03:02 homedir
drwx------. 2 ilmostro 6 Aug 21 03:02 httpfiles
drwx------. 2 ilmostro 24 Aug 21 03:02 ips
drwx------. 2 ilmostro 6 Aug 21 03:02 locale
drwx------. 2 ilmostro 99 Aug 21 03:02 logs
drwx------. 2 ilmostro 93 Aug 21 03:02 meta
drwx------. 2 ilmostro 6 Aug 21 03:02 mm
drwx------. 4 ilmostro 27 Aug 21 03:02 mma
drwx------. 2 ilmostro 6 Aug 21 03:02 mms
drwx------. 2 ilmostro 4.0K Aug 21 03:02 mysql
drwx------. 2 ilmostro 67 Aug 21 03:02 mysql-timestamps
drwx------. 2 ilmostro 6 Aug 21 03:02 psql
drwx------. 2 ilmostro 22 Aug 21 03:02 resellerconfig
drwx------. 2 ilmostro 6 Aug 21 03:02 resellerfeatures
drwx------. 2 ilmostro 6 Aug 21 03:02 resellerpackages
drwx------. 2 ilmostro 6 Aug 21 03:02 ssl
drwx------. 2 ilmostro 4.0K Aug 21 03:02 sslcerts
drwx------. 2 ilmostro 4.0K Aug 21 03:02 sslkeys
drwx------. 2 ilmostro 6 Aug 21 03:02 suspended
drwx------. 2 ilmostro 6 Aug 21 03:02 suspendinfo
drwxr-xr-x. 2 ilmostro 6 Aug 21 03:02 userconfig
drwx------. 2 ilmostro 96 Aug 21 03:02 userdata
drwx------. 2 ilmostro 47 Aug 21 03:02 va
drwx------. 2 ilmostro 47 Aug 21 03:02 vad
drwx------. 2 ilmostro 47 Aug 21 03:02 vf
-rw-------. 1 ilmostro 0 Aug 21 03:02 addons
-rw-------. 1 ilmostro 41K Aug 21 03:02 bandwidth_db.json
-rw-------. 1 ilmostro 0 Aug 21 03:02 digestshadow
-rw-r--r--. 1 ilmostro 0 Aug 21 03:02 has_sslstorage
-rw-------. 1 ilmostro 13 Aug 21 03:02 homedir_paths
-rw-------. 1 ilmostro 1.5K Aug 30 06:09 mysql.sql
-rw-------. 1 ilmostro 0 Aug 21 03:02 nobodyfiles
-rw-------. 1 ilmostro 0 Aug 21 03:02 pds
-rw-r-----. 1 ilmostro 350 Apr 20 03:28 proftpdpasswd
-rw-------. 1 ilmostro 1 Aug 21 03:02 quota
-rw-------. 1 ilmostro 18 Aug 21 03:02 sds
-rw-------. 1 ilmostro 48 Aug 21 03:02 sds2
-rw-------. 1 ilmostro 106 Aug 21 03:02 shadow
-rw-------. 1 ilmostro 31 Aug 21 03:02 shell
-rw-------. 1 ilmostro 0 Aug 21 03:02 ssldomain
-rw-r--r--. 1 ilmostro 39 Aug 21 03:02 version
大多数情况下,除非您想导入所有内容,否则可以忽略许多目录和/或文件;例如cron
,邮件、带宽使用情况等。
可以说,在大多数情况下,主要项目与数据库、dns 和 apache 有关。因此,重点应放在以下文件/文件夹上:
drwx------. 2 26 Aug 21 03:02 dnszones
drwx------. 4 33 Aug 21 03:02 domainkeys
drwx--x--x. 19 4.0K Aug 21 03:02 homedir
drwx------. 2 4.0K Aug 21 03:02 mysql
drwx------. 2 4.0K Aug 21 03:02 sslcerts
drwx------. 2 4.0K Aug 21 03:02 sslkeys
drwx------. 2 96 Aug 21 03:02 userdata
-rw-------. 1 1.5K Aug 30 06:09 mysql.sql
-rw-------. 1 18 Aug 21 03:02 sds
-rw-------. 1 48 Aug 21 03:02 sds2
这用户数据目录之所以被放在那里,是因为它有一些有用的配置参考项;安全数据表和sds2文件。
对文件进行必要的更改,特别注意旧的 IP!
数据库
然后创建特定数据库。根据域、文件、数据库,重复创建其他数据库。dbname.create 文件还会创建必要的用户并授予他们数据库所需的权限。
# mysql < mysql/yourdomain_database.create
像这样导入数据库:
# mysql yourdomain_database < mysql/yourdomain_database.sql
DNS
# cp -v dnszones/*.db /var/named/
如果适用,将 DNS 区域文件复制到您的 DNS 服务器。确保调整必要的 DNS 服务器配置以包含区域文件;例如/etc/named.conf
。
阿帕奇
然后,关注与 apache 相关的其余内容,这些内容将位于homedir/public_html/
(尽管在最近的 cpanel 版本中,它可能直接位于/homedir/
)。以下 WordPress 安装(带有指向子域的文件夹)可用作示例:
homedir/public_html/
├── cgi-bin
├── configurations.json
├── css
├── font-awesome
├── fonts
├── img
├── index.php
├── js
├── LICENSE
├── license.txt
├── subdomain.yourdomainname.com
├── readme.html
├── sitemap.xml
├── strac-yourdomainname.com-phpindex
├── test.php
├── wp-activate.php
├── wp-admin
├── wp-blog-header.php
├── wp-comments-post.php
├── wp-config.php
├── wp-content
├── wp-cron.php
├── wp-includes
├── wp-links-opml.php
├── wp-load.php
├── wp-login.php
├── wp-mail.php
├── wp-settings.php
├── wp-signup.php
├── wp-trackback.php
└── xmlrpc.php
将内容复制到 DocumentRoot 并使用任何 VirtualHost 选项更新您的 apache 配置文件:
cp -r homedir/public_html/* /var/www/html/
vim /etc/httpd/httpd.conf
您可能还必须对 PHP、apache 和/或 mysql 版本和配置进行必要的更改。尽量确保版本和选项尽可能接近 cpainl 服务器的版本和选项。