分类目录归档:LINUX

CentOS安装rar、7z压缩

在Linux上常见的压缩格式是tar.gz或tar.bz2,当遇到有rar或7z格式的压缩文件时需要先安装相关软件。系统用的是CentOS6.0。

安装编译所需的软件包:

yum install make gcc gcc-c++

一、安装RAR压缩
1、从官网下载RAR for Linux软件包:

cd /tmp
wget http://www.rarlab.com/rar/rarlinux-4.1.b5.tar.gz

2、安装

tar -zxvf rarlinux-4.1.b5.tar.gz
cd rar
make
继续阅读CentOS安装rar、7z压缩

Linux安装RPMs包

RPMs包是指“*.src.rpm”这类的rpm包。这类软件包是包含了源代码的rpm包,安装时需要进行编译。平时常见的“*.rpm”包是已经将源代码编译成了二进制文件,所以直接用rpm -ivh命令就能安装了。

1、安装所需的软件包:

yum install gcc-c++ automake autoconf rpm-build

2、随便找一个RPMs包下载:

cd /tmp
wget ftp://rpmfind.net/linux/freshrpms/fedora/linux/6/rar/rar-3.7.0-0.1.beta1.fc6.src.rpm
继续阅读Linux安装RPMs包

CentOS安装OpenVZ

OpenVZ是一个常见的虚拟化技术,我们可以在Linux上方便的安装配置它。系统是CentOS6.0。

一、安装OpenVZ
1、添加OpenVZ更新源

cd /etc/yum.repos.d
wget http://download.openvz.org/openvz.repo
rpm --import http://download.openvz.org/RPM-GPG-Key-OpenVZ
yum update

2、安装openvz内核及工具

yum install vzkernel vzctl vzquota
继续阅读CentOS安装OpenVZ

使用mysqldump命令备份mysql数据库

mysqldump是mysql用于转存储数据库的实用程序。它主要产生一个SQL脚本,其中包含从头重新创建数据库所必需的命令CREATE TABLE INSERT等。使用mysqldump命令可以导出数据库记录为一个sql文件。

Linux下数据库存放目录一般为/var/lib/mysql。

假设数据库信息为
数据库名称:sqlblog
用户名:blog1
密码:123456

1、备份数据库:

mysqldump -ublog1 -p123456 --default-character-set=utf8 --lock-all-tables sqlblog > sqlblog.sql
继续阅读使用mysqldump命令备份mysql数据库

scp命令不输密码

在使用scp命令复制文件或ssh登陆到另一台主机时,会提示输入密码。但是在脚本里每次要输入密码比较麻烦,可以使用生成证书登陆。

1、在机器A上生成密钥对(均以root用户为例)

ssh-keygen -t rsa

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory ‘/root/.ssh’.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
22:2a:6a:31:b9:38:3e:c6:51:e8:b0:5e:a4:b9:7d:7d root@Client

首先提示密钥保存位置,按回车。然后提示输入证书的密码,按回车留空不设置。最后生成了私钥id_rsa和公钥id_rsa.pub。
继续阅读scp命令不输密码

Linux smartctl命令

硬盘的SMART是S.M.A.R.T.的缩写,全称是“Self-Monitoring, Analysis and Reporting Technology”,中文意思是“自我监测分析与报告技术”,它可以对硬盘的温度、内部电路、盘片表面介质材料等进行监测,力求及时分析出硬盘可能发出的问题,并发出警告,从而保护数据不受损失。在Linux上使用smartctl命令查看硬盘的SMART信息。

安装工具:

yum install smartmontools

1、smartctl -i <device> :显示设备的身份信息,检查硬盘是否打开了SMART支持。
看到有:

SMART support is: Enabled

说明硬盘支持SMART。
继续阅读Linux smartctl命令

crontab执行后邮件发到指定邮箱

原来在crontab配置文件/etc/crontab中MAILTO设置成自己的gmail邮箱,但是迟迟没有收到邮件,登陆上去一看邮件还是发到了/var/spool/mail/root内。后来网上查了下,原来我的crontab命令是在crontab -e中定义的,而/etc/crontab中的MAILTO只适用于/etc/crontab中执行的脚本或命令。

所以要在crontab -e中添加指定的邮箱:

crontab -e

在第一行加入:

MAILTO=example@gmail.com #自己的外部邮箱地址

如果没有装邮件服务器的要先安装一下:

yum install sendmail sendmail-cf m4

参考资料:
http://www.cyberciti.biz/faq/linux-unix-crontab-change-mailto-settings/

CentOS VPS安装Fail2ban

Fail2ban是用于防止主机口令被暴力破解的一个Linux系统下的工具。我在VPS上用lastb命令看了下,只见屏幕刷了好长时间,一直有人在扫弱口令,把IP一个个手工添加到iptables阻止连接ssh太麻烦,用这个工具自动过滤。

1、CentOS安装Fail2ban要先安装EPEL源:

rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
yum install fail2ban

2、fail2ban基本的工作原理
fail2ban → 监视相应的log → 连续出现多次错误信息 → 封锁IP(使用iptables)→ 根据设定间隔时间,自动清除iptables规则。fail2ban的配置文件在/etc/fail2ban目录内。

/etc/fail2ban/fail2ban.conf fail2ban本身设置
/etc/fail2ban/jail.conf fail2ban全局设置
/etc/fail2ban/filter.d/ 内为fail2ban的正则表达式过滤规则
/etc/fail2ban/action.d/ 内为fail2ban触发后行动的脚本
继续阅读CentOS VPS安装Fail2ban

crontab使用进程锁解决冲突

想到一个问题,如果在crontab里有个定时任务设置为一分钟执行一次,但是它执行的时间可能会超过一分钟,此时crontab一分钟后会再次运行该脚本吗?这样会不会出现冲突呢?网上找了下,说可以用Linux中的进程锁控制crontab执行的并发问题。

给一个shell脚本加锁,使用flock命令。

一般格式:
flock [-sxun][-w #] fd#
flock [-sxon][-w #] file [-c] command…
继续阅读crontab使用进程锁解决冲突