Category: Linux

CentOS root 删除档案报错: Operation not permitted

root 在 Linux 系统下有最高权限, 但如果用 root 身份执行 rm 指令删除档案, 或要修改档案时, 有些情况可能会出现以下错误: rm: cannot unlink ‘filename’: Operation not permitted 出现这个问题, 多数是因为 chattr 指令锁定了该档案。用 chattr 指令锁定档案后, 除了不能删除外, 也不能修改及改动, 必须要用 chattr 指令解除锁定才可以: …

Linux 定时删除旧档案

在 Linux 下有时会有一些暂存盘或日志档需要定时删除, 如果只要在特定目录下, 删除档名包含有指定字串的旧档案, 可以不用 Shell Script, 而直接在 crontab 用 find 指令完成 。 例如我想将 /var/www/html/tmp/ 目录下, 将所有超过 7 日的档案, 并以 “delname.log” 作为档案开头删除, 可以在 crontab 加上以一行, 先开启 crontab : …

Ubuntu 安装 Node.js

Node.js 是一个基于 Google V8 引擎的事件驱动 I/O 服务端。目的是为了提供撰写如 Web 服务的可扩充网络程序。Node.js 是以 JavaScript 为基础开发的新架构, 它可以让 JavaScript 在浏览器以外的地方执行。 以下会介绍在 Ubuntu 透过源码安装及 apt-get 安装的步骤: Ubuntu Repository 安装: 透过 Ubuntu 默认 Repository 安装的好处是简单, 但缺点是安装的版本会较旧。 …

CentOS 解决 Failed to set locale, defaulting to C

在 CentOS 执行 yum 指令时, 出现以下错误: Failed to set locale, defaulting to C 解决方法是正确设定 locale 语系环境, 先建立以下档案: # vi /etc/profile.d/locale.sh 加入以下内容: 储存盘案后离开编辑器, 执行以下指令重新加载参数: # source /etc/profile.d/locale.sh 然后便可以重新执行 yum 指令.

Shell Script 检查变量字串长度

在 Shell Script 读取输入时, 很多时需要按字串的长度作出不同的处理, 而 Shell Scrit 检查变量的字串长度十分简单, 写法如下: 上面的程式码会检查用户输入的变量 “string”, 然后检查 string 变量的长度, 如果字串长度大过 10, 会显示 “Error!”, 并结束程式执行; 如果变量的字串长度等如或小于 10, 会继续执行。

Linux 目录结构

Linux 下的目录结构分工很仔细, 虽然初时接会很困惑, 但用久了反而会觉得十分清晰, 即使在不同的发行版下使用, 要习慢也很容易。以下是 Linux 下目录结构及内含的档案内容。 /boot : /boot 是一个独立的硬盘分割区, 用作储存 Linux 核心, Linux 核心设定档 (Config-x-x-x), initramfs 及 GRUB (boot loader). 当完成 BIOS 程序后, 会由 /boot 接手启动系统. …

wget 背景执行下载档案

wget 是在 CLI 下十分好用的下载工具, 如果遇到下载的档案很大, 或者下载速度很慢时, 可以用以下方法让 wget 在背景执行。 wget 已经内建背景执行的功能, 语法是: $ wget -bqc http://path-to-url/filename.iso 上面的 wget 指令加入了 -bqc 参数, 其中 b 代表 background, 即背景执行的意思。 另一个方法是用 nohup 指令, …

Ubuntu 安装设定 DenyHosts

DenyHosts 是一个防止暴力攻击 SSH Server 的工具, 它会监察及分析 SSH 的 log file, 当发现同一 IP 连续数次登入失败后, 就会将尝试登入的 IP 地址加入到 /etc/hosts 作出封锁。相比起 Fail2Ban, DenyHosts 的功能较简单, 只可以单一拦截 SSH 攻击, 而 Fail2Ban 的防护较全面, 可以透过正规表达式正义不同的 log …