Tag: Linux

Apache 动态管理 VirtualHost

VirtualHost 可以让多个网站在一台主机上运行, 一般上每个 VirtualHost 都需要加入一段 “ “, 然后设定 ServerName, ServerAlias 及 DocumentRoot, 例如有两个网址, 分别是 www.mydomain.com 及 blog.mydomain.com, 在 httpd.conf 部份要加入类似这样的设定: 另一种方法是动态设定 VirtualHost, 以上面的例子, 可以用一段 设定。 首先开启 httpd.conf: # vi …

同时安装 MySQL 及 MariaDB

MariaDB 是 MySQL 的替代产品, 也是 RHEL 7 及 CentOS 7 的默认数据库系统。有时需要在 MariaDB 及 MySQL 之间做测试, 或者在不同版本 MySQL 之间做测试, 同时安装及运行 MariaDB 及 MySQL 会很方便, 以下纪录一下在主机内同时安装 MariaDB 及 MySQL 运行, 当然如果有需要, …

RHEL 7 / Centos 7 yum 安装 PHP 5.5, 5.6, 5.7

我喜欢用 RHEL 及 CentOS 的最主要原因, 是因为 Redhat 对产品的支援周时长达 10 年, 对于生产环境的主机这点很重要, 不用经想准备为系统作升级。但 CentOS 有一个缺点, 就是默认的套件版本较旧, 像 PHP 版本, 除非手动编译原代码安装, 否则可能到系统的生命周期完结, 也不会作主要升级。 现在 CentOS 7.3 的默认 PHP 版本为 5.4.16, 要在 …

Linux 压缩及解压 .tgz 及 .tar.gz 档

在开源的领域中, .tgz 或 .tar.gz 格式的压缩档很流行, 这是 .tar 压缩档使用 gzip 再次压缩。 这个档案格式其实就是把一般的 .tar 档案使用 gzip 再压缩 要解压 .tgz 档案, 跟解压 .tar 类似, 只要加入 “z” 参数即可, 以下是解压 .tgz 及 tar.gz 的指令: …

CentOS 7 变更 SSH 埠号 (+SELinux 设定)

以资安的角度,一般上建议将 SSH 默认的 22 埠号变更为其他埠号,而选择埠号时则尽量使用 1024 以上的埠号,以及不要与其他系统服务的埠号相撞。 RHEL 及 CentOS 的 SSH Server 设定档是 /etc/ssh/sshd_config, 以下会设定 SSH 的埠号为 2202, 先开启 SSH 设定档: # vi /etc/ssh/sshd_config 找到以下一行: # Port 22 …

Ubuntu 设定 root 密码

Ubuntu 默认的 root 没有公开,一般上会假设要以 root 权限执行指令,便用 sudo 执行,但如果在家中的电脑,或者测试用的系统,为求方便要设定 root 密码,在 CLI 也很容易做到。 先用一毎有执行 sudo 权限的帐号登入,开启终端机,执行以下指令: $ sudo passwd root 然后要输入登入帐号的密码,之后便可以设定 root 密码了。 设定好 root 密码后,可以用 su 切换到 root 测试是否成功: …

crontab 每 30 秒自动执行

crontab 容许最少自动执行间隔为 1 分钟, 即在 crontab 的格为是: 如果需要将自动执行时间设定为少于 1 分钟, 或者以秒数为单位, 可以透过 crontab 配合 sleep 指令完成, 或者建立一个 shell script 再配合 sleep 实现。 以下会示范在 crontab 或 shell script, 设定每 30 …

防止 Shell Script 重复执行

Shell Script 对日常系统维护很实用,对于多用户系统,Shell Script 经常面对一个问题是重复执行,即一个 Shell Script 正在执行时,避免另一个使用者执行。另一个情况是,当 Shell Script 变得复杂及庞大时,放到 crontab 定时执行时 (例如每分钟执行一次),Shell Script 还未完成上次的执行,就重复自动执行一次。 要防止 Shell Script 重复执行,一般上会用 lock file 及 PID 的方法,不论是 lock file 还是 PID,除了用 …