分类
Linux 相关

Supervisor新手教程 (Debian)

虽然Supervisor其实很简单,想想还是写个教程吧,方便像我这样的新手。
首先是安装,Debian下直接apt-get就行,Ubuntu也一样。

apt-get update
apt-get install supervisor

其实Debian下安装完就已经在运行了,Ubuntu下似乎要手动执行或者重启一下。
接下来就是写要托管进程的配置文件了,放在/etc/supervisor/conf.d文件夹下命名为*.conf的话supervisor会自动读取运行。
创建一个example.conf

vi /etc/supervisor/conf.d/example.conf

然后写配置文件。完整的配置参数还是去官网找吧,这里就写点简单的。

[program:example]
command=/usr/local/bin/example -config
autorestart=true
user=nobody

第一行是托管的程序名称,可以自己定义,不用和运行的程序文件同名,只要不和托管的其他程序名称重名就行,第二行是运行命令,要写可执行文件的完整路径并且可以在后面加运行参数,第三行是设置进程被杀后自动重启托管的程序,第四行是执行托管的用户,应以能正常运行的最低权限用户运行程序以提高安全性。
保存退出,之后重启一下supervisor服务,example就已经在运行了。可以输入以下命令来查看运行状态。

supervisorctl status

就写这么多,高级的用途还是翻官方文档吧。

分类
Linux 相关 网络 相关

开机自动加载iptables规则 (Debian)

Linux下的iptables非常强大,但配置了iptables规则之后每次重启规则就没了,其实,有个很简单的方法可以让iptables规则开机自动加载。本文的方法适用于Debian和Ubuntu,其他Linux应该也类似。
首先,配置好所有的iptables规则。
然后保存到一个文件中。

iptables-save > /etc/iptables

然后创建一个自启动文件,我习惯用vi,其实所有文本编辑器都行。

vi /etc/network/if-pre-up.d/iptables

在里面写如下内容。

#!/bin/sh
/sbin/iptables-restore < /etc/iptables

之后,赋予该自启动文件运行权限。

chmod +x /etc/network/if-pre-up.d/iptables

大功告成,非常简单!赶紧重启服务器验证一下吧,iptables策略应该已经可以开机自动加载了。

分类
Linux 相关 Web 服务器

写给像我这样的新手的LAMP教程 (Debian) ——开站纪念

开站前原本想用LNMP方案的,因为以前尝试过的一键部署就是LNMP (CentOS),相对来讲对Nginx也比较熟悉一点,但这次换了Debian又想尝试一把Apache,就用了LAMP,本新手教程同样适用于Ubuntu。废话不多说,写正题,sudo不加了,不是root登录的自己加吧。
首先更新一下。

apt-get update
apt-get upgrade

然后安装Apache。

apt-get install apache2

测试一下,http://IP,看到It works!就行了。
然后安装MySQL。

apt-get install mysql-server

会让你设置root密码,强度高一点,随便设置就行。
运行这个命令进行安装之后的配置。

mysql_secure_installation

看到这个。

Enter current password for root (enter for none):
OK, successfully used password, moving on...

嗯,输入刚才的密码。一长串问题跟着选y就行了。
接下来安装PHP,一般用PHP5,较新的系统可以考虑PHP7.0,安装PHP5的命令如下。

apt-get install php5 php-pear php5-mysql

如果选择PHP7.0,安装命令如下,很简单的把5换成7.0就行。

apt-get install php7.0 php-pear php7.0-mysql

重启一下Apache。

service apache2 restart

就这么简单,大功告成。啥,你说我等于啥也没说?是的,后续的等下一篇再写吧。