ubuntu

Linux 部署服务器手札 (I)

现在到了这么一个阶段,为了要将 Django 部署到生产环境,一搞下来,发现要在 Windows 上面部署好这个家伙真是个噩梦。

于是,不得不开始用 Linux 干这个活了。

昨天下午四五点开始拿起旧的 ThinkPad 安装,晚上搞到一点多装好了 Nginx+PHP,到现在已经把 Nginx+PHP+phpMyAdmin 装好了,还部署好了我自己的 wordpress,如果是这样的话,其实我的 vps 已经快可以不需要 windows 了。

之前看鸟哥的 Linux 私房菜看了百来页,现在基本上忘光了,然后这次部署也是跌跌撞撞乱搞出来的,为免以后极易流失,还是记录一下为好。

1. 安装 Ubuntu

为了方便起见,还是选用了国人最为喜爱的 Ubuntu 发行版,没有用鸟哥推荐的以及大多数 vps 使用的 CentOS。

另一个 原因就是 Ubuntu 的 Debian 血统跟树莓派使用的是一样的,起码在 apt 包管理方面的习惯可以共用。

安装很简单,基本上全图形界面操作。

硬盘分配方面,/home 使用了 200G,/usr 使用了50G,Swap 用了 2G,其他的乱搞了一下,都忘记了,影响不大,也就算了。

2. 远程 SSH 连接

下面几种情况:

  1. 使得当前 linux 可以被远程访问:
sudo apt-get install openssh-server
  1. 从一个 linux 终端连接另一台 linux 主机:
ssh -l [username] [host]
  1. 从 windows 终端访问 linux:

下一个 putty 然后输入 IP 连接即可。

3. LAMP 安装

安装好 ubuntu 之后,python 是已经安装好的了,而且包括了 python2 和 python3,如果敲 python 的话会调用 python2 如果要调用 python3 的话就要敲 python3。

LAMP 的安装后来找到一篇很好的文章,直接本站转了,按照这个装完之后就已经有 LAMP + phpMyAdmin 了。

有了这个基础,装个 wordpress 神马的就很随便了。

4. 安装 ftp

使用 vsftpd (very secure FTP),安装:

apt-get install vsftpd

然后其实也很费周折的,首先是配置文件,不解释了,反正最终配置的权限就是 创建一个 ftpuser 用户,访问到 /var/django 的读写权限:

listen=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl−cert−snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl−cert−snakeoil.key
seccomp_sandbox=NO

就这么多,直接拷贝到 /etc/vsftpd.conf 里面即可,网上找的实在是太复杂,我这里只给一个 Minimal Example 就可以了,反正我的目的只是要把源代码放进去。

还没完,需要创建一个用户:

sudo useradd -d /var/django ftpuser

这个 ftpuser 用户是用来登录 ftp 用的,登陆之后用户目录转到 /var/django,这个根据实际情况来定。

然后改密码:

sudo passwd ftpuser

然后创建一个 /etc/vsftpd.chroot_list 文件,在里面写入:

ftpuser

每行一个用户,用于指定哪些用户可以登录。

然后我们还需要修改目标目录的权限来允许 ftpuser 用户的访问:

sudo chmod -R 777 /var/django

这样搞完,用 ftpuser 就可以成功连接 ftp 了!

5. 彻底卸载软件包的方法

有时候难免会出点状况,譬如说 apache 的配置文件或者哪些其他配置文件被改乱了恢复不了了,这样需要重装软件包以及重新生成配置文件,这时候可以这样卸载(以 nginx 为例):

sudo apt-get remove --purge nginx

然后再装回来即可。

sudo apt-get install nginx

【转载请附】愿以此功德,回向 >>

原文链接:https://www.huangwenchao.com.cn/2014/04/linux-deploy-1.html【Linux 部署服务器手札 (I)】

发表评论

电子邮件地址不会被公开。 必填项已用*标注