存档

作者存档

在rhel5(centos5)上用ntpd搭建时间服务器

2010年8月29日 哈哈 没有评论

rhel5(或者是centos5)下安装、配置时间服务器简直是再简单不过了

yum install ntp

That’s all!

是不是非常简单呢?

呵呵

装上以后

还需要对ntp做简单的配置

vim /etc/ntp.conf

只需要按照文件里的提示按照

restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

这样的格式加上你允许对时的网段,一般是内网

多个网段可以多加几行

编辑完/etc/ntp.conf后

再vim /etc/sysconfig/ntpd

SYNC_HWCLOCK=no

改成

SYNC_HWCLOCK=yes

这样的话,当时间服务器每次从internet上同步时间成功,会自动写到bios ,这样bios的时间也得到同步了

然后再启动ntp

service ntpd start

这样的话,一会儿在客户端就能用ntpdate xxx.xxx.xxx.xxx(xxx.xxx.xxx.xxx是这台时间服务器的ip)来更新时间了

如果客户端同步时间时出错:

no server suitable for synchronization found

那么用ntpdate -d xxx.xxx.xxx.xxx来执行看看

如果这会儿有报错误:

Server dropped: Strata too high

并显示“stratum 16”的话

这表明时间服务器本身还没有跟自己的server或是自己同步完时间

所以需要等一会儿再试

那么怎样知道时间服务器跟远程时间服务器或是本身同步的完成状况呢?

watch ntpq -p

当LOCAL 这一行的reach的值

当其从0到17,连续几次后

客户端同步时间终于成功了!

分类: tips 标签: , , ,

ubuntu server下的nrpe的配置

2010年8月28日 哈哈 没有评论

在ubuntu server下部署nrpe非常简单
直接

sudo apt-get install nagios-nrpe-server nagios-plugins

即可
启动脚本为/etc/init.d/nagios-nrpe-server
配置文件在/etc/nagios/nrpe.cfg
但是不建议大家直接修改这个文件
建议把需要的配置写到文件/etc/nagios/nrpe_local.cfg里
nrpe_local.cfg会在nrpe.cfg的最后被load
所以它的配置如果有跟nrpe.cfg的重复的话会覆盖掉原来在nrpe.cfg中的配置
这样我们可以把nrpe.cfg的内容当作缺省值
只有我们需要的配置跟缺省值不一样的时候
我们才需要将其写到nrpe_local.cfg里
再nrpe_local.cfg后面被load还有目录/etc/nagios/nrpe.d/这个目录下的所有文件
这里牵涉到一个小技巧
就是这里所有的文件必须为.cfg结尾
否则不能被nrpe读取!!

学习commandlinefu的命令行:echo “foo” > /dev/tcp/192.168.1.1/25

2010年8月22日 哈哈 没有评论

原文来自commandlinefu

echo “foo” > /dev/tcp/192.168.1.1/25

这个命令将发foo消息到192.168.1.1这台机器的tcp端口25上

这个可以用来测试网络链接是否被防火墙所挡

这是tcp的情况

据说udp和icmp的也都行(没测过:)

分类: tips 标签: , , , , ,

commandlinefu的命令行学习:’ALT+.’ or ‘ .’

2010年8月21日 哈哈 没有评论

原文来自commandlinefu

‘ALT+.’ or ‘<ESC> .’

这其实是两个命令

一个是按出Alt键不放,再敲.键;

另外一个是先敲Esc键,再敲.键

两个功能是一样的

都是取出前一个命令的最后一个参数

不停执行这两个命令之一

会从最后往前取出每个命令的最后一个参数

这个在bash下测试通过

只是在windows下用secure CRT的时候有一个小问题:

‘Alt + .’这个组合不好使

这是因为Secure CRT把Alt键开头的快捷键都指向操作Secure CRT的菜单了

点击Secure CRT的Options–>Session Options,点击Emacs

再勾选”Use ALT as meta key” ,接着点选”Send escape for meta key”

这下

‘Alt + .’也就好使了。

不过说实话

这些小技巧日常工作中真是用的少

我们一般碰到上个命令最后参数巨长而这个命令又要用的时候

一般是用上箭头键↑呼出上一个命令

再用home键到达命令行首

再删掉不需要的部分

敲入需要的部分再执行的。

分类: tips 标签: , , , ,

从commandlinefu学习命令行:ssh-copy-id user@host

2010年8月20日 哈哈 1 条评论

原文来自commandlinefu

这条命令好理解

直接看手册就好了

man ssh-copy-id

ssh-copy-id – install your identity.pub in a remote machine’s authorized_keys

需要注意的是-i参数

如果你不提供的话

会将ssh-add -L 命令列出来的公钥都倒过去

如果有-i参数

后面可以指定公钥的文件名(缺省是identify.pub)

分类: tips 标签: , , ,

来自commandlinefu的命令行:!whatever:p

2010年8月19日 哈哈 没有评论

原文来自commandlinefu

这个命令

!whatever:p

整个是一个word designator

被用冒号(:)分成了event designatormodifiers

!whatever

这个event designator的意思是找出最近执行过的以whatever开头的命令

后面的

:p

这个modifier的意思呢

bash的手册(man bash看)上也有讲:

p      Print the new command but do not execute it.

于是整个命令行的意思就是找出最近执行过的以whatever开头的命令显示出来,不执行

commandlinefu学习之:cp filename{,.bak}

2010年8月18日 哈哈 没有评论

原文来自commandlinefu

cp filename{,.bak}

这个命令是用来把filename备份成filename.bak的

等同于命令

cp filename filename.bak

这里利用的是bash的brace expansion(大括号扩展)功能

按照bash手册(man bash)所述

bash支持{a,b,c}这样的扩展

比如a{d,c,b}e会被扩展成ade ace abe

所以

filename{,.bak}被扩展成filename filename.bak也就好理解了

来自commandlinefu的命令行学习:^foo^bar

2010年8月17日 哈哈 没有评论

原文来自commandlinefu

^foo^bar

这个命令用来把上一个命令中第一次出现的foo字串替换成bar字串

然后当做命令执行

bash的manual里是这么解释的

^string1^string2^
Quick  substitution.   Repeat  the  last  command,  replacing  string1  with
string2.  Equivalent to ‘‘!!:s/string1/string2/’’ (see Modifiers below)
这里最后还多了个”^”符号
可是文档上讲
最后那个”^”可以不写
分类: tips 标签: ,

学习vim命令:“:w !sudo tee %”

2010年8月16日 哈哈 没有评论

原文来自于commandlinefu

原文是这样解释这个命令的:

在vim中保存正在编辑的文件而不需要必要的权限。

(Save a file you edited in vim without the needed permissions)

下面我们就分析下这条命令是怎样做到保存文件而不需要必要的权限的

:w !sudo tee %

man vim就会发现

百分号(“%”)代表当前文件名

根据man vim的提示:

:[range]w[rite] !{cmd}  Execute {cmd} with [range] lines as standard input
(note the space in front of the ‘!’).  {cmd} is
executed like with “:!{cmd}”, any ‘!’ is replaced with
the previous command
“:w !sudo tee %”这条命令的含义是把当前编辑的文件的内容当做标准输入输入到命令sudo tee 文件名里去
也就是sudo保存为当前文件名
这个功能其实可能debian和ubuntu的用户更需要一些
因为我们都是直接root
所以一般不会有权限不足的问题
哈哈
分类: tips 标签:

翻译并学习commandlinefu的命令行

2010年8月15日 哈哈 没有评论

发现一个好网站:commandlinefu

从今天开始

每天从这个网站上选择一个我个人感觉有用的命令行实现

尽我自己的能力来简单解释一下

今天学习的是命令

sudo !!

这条命令sudo的意思大家都知道

关键是!!的含义,在这里是执行上一个命令

也就是history里的最后一个命令(用history命令可以看出)

我man bash看了一下

这里的!!指的是上一个命令,跟!-1是一个意思

同时,还有一些其他的!开头的表达的相关含义:

!n     Refer to command line n.
!-n    Refer to the current command line minus n.
!!     Refer to the previous command.  This is a synonym for ‘!-1’.
!string
Refer to the most recent command starting with string.
!?string[?]
Refer  to  the most recent command containing string.  The trailing ? may be
omitted if string is followed immediately by a newline.
^string1^string2^
Quick  substitution.   Repeat  the  last  command,  replacing  string1  with
string2.  Equivalent to ‘‘!!:s/string1/string2/’’ (see Modifiers below).
!#     The entire command line typed so far.
不过我们在工作中
经常用上箭头来呼出上一条命令(此功能为bash支持)
然后再回车执行
分类: tips 标签: , , , ,