Tag: Linux

Shell Script 检查档案内容是否空白

在 Shell Script 要检查档案内容是否空白, 可以用 find 指令, 或者用 -s 参数检查, -s 会在检档档案存在及档案体积大于 0 时, 回传 TRUE, 否则回传 FALSE. find 指令 find 指令只要加上 -empty 参数, 就可以找出空白档案, 例如要检查 /home/phpini/tmp_file 是否空白档案, 可以这样做: …

为何我从编译原始码改用 yum

在 Linux 安装体一般会用编译原始码, 或者 yum 及 apt-get 这类套件管理工具安装。刚学习 Linux 时, 很多套件都爱自行编译, 当时还是 PHP3 的年代, 下载 Apache, PHP, MySQL 及相关套件的原始码编译, 就连 Linux 核心都要自己编译才觉得觉得舒服, 打造出一套 LAMP 环境就自以为很了不起, 其实这感觉只是自 high, 一直到生产环境的服务器都是这样。 起初运作是没有什么问题的, …

traceroute 指令 — 路由跟踪工具

traceroute 是一个网络检测工具, 可以追踪网络封包经过的路由指令。例如当发现浏览一个网站很慢, 使用 traceroute 检查时, 可以显示经过的每一个网络节点, 以及每个节点返回的时间。traceroute 会对经过的网络设备送出封包 3 次, 测试所需的时间, 而返回的时间单位是 ms。(注: 在 Windows 不是用 traceroute, 是用 tracert) Redhat 及 CentOS 默认没有安装 traceroute, 先用用 yum 安装: # …

Ubuntu 安装 Sublime Text 3

Sublime Text 3 是一套跨平台的文字编辑器, 我觉得 Sublime Text 写程式 十分好用。Sublime Text 可以免费使用, 如果想支持一下开发者, 可以付出 $70 美元购买版权。 在 Ubuntu 安装 Sublime Text 3, 可以先加入 PPA Repository, 然后用 apt-get 安装: 加入 PPA …

Linux 设定 setuid 及 setgid 权限

setuid 是档案权限其中一种特性, 档案加入 setuid 权限后, 其他用户可以用档案持有者身份执行档案。而 setgid 跟 setuid 类以, 是其他用户可以用档案所属群组的身份执行。 如果 setuid 使用不当, 会有很严重的安全问题, 所以使用前要小心。虽然有安全的问题, 但很多情况都要借助 setuid 解决, Linux 最常见的例子有 passwd 及 sudo, 一个普通帐号执行 passwd 修改自己的密码时, 其实是用 root …

iptables 指令入门

iptables 是一套 Linux 下的防火墙,可以按需要建立 iptables 规则,允许或阻挡网络流量。但透过 SSH 设定 iptables 时要格外小心,因为如果设定错误,可能会阻挡外部连线,需要到机器面前进行修复,多年前我试过输入一道错误的 iptables 指令,搞到要立即赶到 data center 修复。 iptables 设定时主要分三种类型,分别是 INPUT, FORWARD 及 OUTPUT。 INPUT: 这个行为是外来的连线,例如从远端 SSH 到服务器,iptables 会将这个连线定义为 INPUT。 FORWARD: 这是外来的连线,但最终目的地不是服务器本身,只是转送到其他机器,例如路由器,除了 …