存档

文章标签 ‘RedHat’

CentOS并入RedHat后对大家操作系统的选择的影响

2014年8月13日 没有评论

众所周知,今年年初,CentOS并入了RedHat公司,这对整个开源操作系统市场的影响是巨大的,虽然RedHat还承诺CentOS会继续免费,很多CentOS的用户以及打算使用CentOS的用户纷纷担心CentOS的前途。实际上,用脚趾头都能想明白:免费的CentOS都这么好用了,谁还会去买花钱而且还巨贵的rhel(RedHat enterprise advance server)呢?为了避免这个,RedHat只会让CentOS越来越难用,越来越不好用才对。所以,原本打算采用CentOS的人开始重新考虑他们的选择,而CentOS的用户,又在考虑有CentOS的替代方案。
我这里就大概给原来rhel或CentOS用户估计一下可用的替代方案。
替代方案一:SL(Scientific Linux)
Scientific Linux其实跟CentOS一样,也是拿着rhel放出来的源代码重新build的Linux发行版,所以,这应该是最切换最容易的解决方案。可这个方案的问题在于,Scientific Linux实在是太小众了,用的人太少。
替代方案二:Ubuntu server
Ubuntu server是最近今年最风头无限的Linux发行版(没有之一)。OpenStack是首先在ubuntu平台上测试并推荐运行的;docker也是首先推荐运行在ubuntu上的。由此,我们大致可以认为ubuntu是未来的大家选在Linux版本的大热门。Ubuntu的问题同样很明显,他跟rhel是完全两个不同的流派(RedHat系和Debian系),开发人员、运维人员从RedHat系转到Debian系可能需要一个过程。
替代方案三:Debian
既然提到了Ubuntu server,那就不能不提Debian。Ubuntu就是在Debian的版本基础上开发的,从这种意义上来讲:Debian比Ubuntu还要稳定一些。同样,Ubuntu的问题也是Debian无法回避的。
替代方案四:FreeBSD
替代方案五:自制Linux发行版
……

原来debian缺省的runlevel是2

2010年9月21日 没有评论

呵呵
说实话
这还是刚注意到
我很意外
原来redhat系列的default runlevel貌似都是3
而且
redhat系列的linux好像对runlevel有个很细的说明
0、1和6就不用说了
好像对于2、3、4、5的runlevel都有说法
貌似5是图形界面
2、3、4都是文本界面,他们的区别在于多用户、网络啥的(这个查查资料后再补充:)
而debian
default runleve居然是2
而不是3
仔细看了下debian关于runlevel的文档
也就释然了
原来debian没有把runlevel 2、3、4、5定那么细
用户完全可以自己定义这几个runlevel
(redhat也可以,但貌似不推荐这么做)

分类: tips 标签: , , ,

使用perl包Net::SSH::Perl时的小问题

2008年12月1日 没有评论

工作需要
用perl写了个程序ssh到一些机器上去做一些操作
于是就用了Net::SSH::Perl这个perl模块儿
感觉这个东西还挺好用的
但有一个需要注意的
就是redhat系列的系统
自带的ssh client的全局配置文件是/etc/ssh/ssh_config
Net::SSH::Perl认的是/etc/ssh_config
因为这样
所以有台机器我用ssh命令直接连没有问题
但是通过Net::SSH::Perl就连不上
后来通过把/etc/ssh/ssh_config拷一份为/etc/ssh_config
这才搞定

公网网卡上加绑一个教育网ip以及策略路由

2008年11月19日 没有评论

公司某个保密项目需要打通一条从教育网到网通、电信乃至于国外的更宽广、通畅的道路
于是就从教育网拉了根儿光纤到某个非教育网的机房
然后在这个机房的某些机器的公网交换机端口上同时配上了教育网和以前公网地址的vlan的trunk
按照以前的文章http://www.haw-haw.org/node/5
很容易就在公网网卡上配上了教育网和以前公网网段的ip地址
剩下就只是策略路由的事情了
而这个策略路由的需求比较简单
只是需要把从哪个设备来的包还从哪个设备上回过去就ok了

假设公网网卡设备是eth0
教育网和原来公网网段的vlan id分别是100101
那么教育网和原来公网的网络设备就分别是eth0.100eth0.101
教育网和原来公网的ip分别是a.b.c.de.f.g.h
default gw分别是a.b.c.254e.f.g.254
然后,先添加2张路由表eduother
(这里的优先级100和101跟上面的vlan id没有关系,可以随便取,只要不跟已有的重就行)

echo -e “100\tedu\n101\tother” >> /etc/iproute2/rt_tables

接着,配置好新加的两张路由表eduother

ip route add a.b.c.0/24 dev eth0.100 src a.b.c.d table edu
ip route add default via a.b.c.254 table edu
ip route add e.f.g.0/24 dev eth0.101 src e.f.g.h table other
ip route add default via e.f.g.254 table other

最后,再配上路由选择的策略

ip rule add from a.b.c.d table edu
ip rule add from e.f.g.h table other

于是一切ok了
最后把这几条命令写入/etc/rc.d/rc.local
(因为最后没有找到改哪个配置文件可以实现以上命令的功能,所以只有写道rc.local里了)

snmpd往syslog里打n多的无用信息的问题

2008年11月4日 1 条评论

rh系列的机器
radhat、fedora、rhel、centos等
系统自带的snmpd是会缺省往syslogd里打log的
而且遗憾的是:缺省的log级别是debug
所以
如果你开着snmpd
然后还有机器来连snmpd端口(mrtg、cacti等多半如此)
你会发现/var/log/messages里充斥着大堆的无用信息
像这样:

Nov 2 04:17:21 sohu snmpd[1748]: Connection from UDP: [127.0.0.1]:50841
Nov 2 04:17:21 sohu snmpd[1748]: Received SNMP packet(s) from UDP: [127.0.0.1]:50841
Nov 2 04:17:21 sohu snmpd[1748]: Connection from UDP: [127.0.0.1]:50841
Nov 2 04:22:21 sohu snmpd[1748]: Connection from UDP: [127.0.0.1]:51720
Nov 2 04:22:21 sohu snmpd[1748]: Received SNMP packet(s) from UDP: [127.0.0.1]:51720
Nov 2 04:22:21 sohu snmpd[1748]: Connection from UDP: [127.0.0.1]:51720
Nov 2 04:27:21 sohu snmpd[1748]: Connection from UDP: [127.0.0.1]:52622
Nov 2 04:27:21 sohu snmpd[1748]: Received SNMP packet(s) from UDP: [127.0.0.1]:52622
Nov 2 04:27:21 sohu snmpd[1748]: Connection from UDP: [127.0.0.1]:52622

这样一来
就有可能将有用的重要的log信息给冲掉
解决办法如下:
编辑一个文件/etc/snmp/snmpd.options(这个文件是在snmp的启动脚本/etc/rc.d/init.d/snmpd里启动时会去读的)
内容如下:

OPTIONS=”-LS 2 d -Lf /dev/null -p /var/run/snmpd.pid -a”

然后再重起snmpd
/etc/rc.d/init.d/snmpd restart
这样一来
就将snmpd缺省的log级别debug改成了2
再看/var/log/messages
里面再也没有snmpd的废话了
这世界清静了……

rpm出错:Program version 4.3 doesn’t match environment version

2008年10月14日 没有评论

一台linux机器
输入命令
rpm -qa
的时候
系统报错:

rpmdb: Program version 4.3 doesn’t match environment version
error: db4 error(-30974) from dbenv->open: DB_VERSION_MISMATCH: Database environment version mismatch
error: cannot open Packages index using db3 – (-30974)
error: cannot open Packages database in /var/lib/rpm

解决方法:

cd /var/lib/rpm
rm -rf __*
rpm –rebuilddb

upgrading from rhel as4 to rhel as5

2008年10月13日 没有评论

一台rhel as4的机器要升级成rhel as5
由于其包管理软件apt不在其repository(储藏室,库)里
所以不能通过apt-get来同时升级自己和所依赖的软件包
貌似as5u2里有了yum
但是我的as4下又没有,只有装的第三方的apt-get
本来我想的过程是
1,先装上as5的release的rpm包
2,再用apt-get升下rpm*相关软件包,尽量再装上yum
3,如果上一步能装上yum,那就好办了,直接update就ok了;否则只能rpm手工安装yum,最后再yum update
但是实际上
我第2步apt-get升级rpm*就出错了
于是只有用rpm手工升级rpm(听起来有点绕口:)
期间删了一大堆的rpm,以下仅是一部分

rpm -e openldap-clients cups-libs openldap elinks ckermit nmap cyrus-sasl-devel pwlib curl neon libwvstreams wpa_supplicant stunnel pyOpenSSL dhcpv6_client rhnlib wvdial openh323 openldap-devel nss_ldap libuser cyrus-sasl nss_ldap compat-openldap cyrus-sasl-ntlm cyrus-sasl-gssapi cyrus-sasl-plain cyrus-sasl-md5 libuser-devel usermode passwd nfs-utils autofs nfs-utils-lib kbd system-logviewer authconfig-gtk usermode-gtk –allmatches

后来当了一大堆的rpm包,用rpm –force装上了(这里的apt也是从第三方当下来的)

rpm -Uvh –force device-mapper-1.02.24-1.el5.i386.rpm lvm2-2.02.32-4.el5.x86_64.rpm device-mapper-event-1.02.24-1.el5.x86_64.rpm readline-5.1-1.1.x86_64.rpm apt-0.5.15lorg3.2-1.el5.rf.x86_64.rpm python-2.4.3-21.el5.x86_64.rpm rpm-libs-4.4.2-48.el5.x86_64.rpm db4-4.3.29-9.fc6.x86_64.rpm openssl-0.9.8b-10.el5.x86_64.rpm rpm-4.4.2-48.el5.x86_64.rpm elfutils-libelf-0.125-3.el5.x86_64.rpm sqlite-3.3.6-2.x86_64.rpm beecrypt-4.1.2-10.1.1.x86_64.rpm popt-1.10.2-48.el5.x86_64.rpm wget-1.10.2-7.el5.x86_64.rpm openssh-clients-4.3p2-26.el5.x86_64.rpm openssh-server-4.3p2-26.el5.x86_64.rpm openssh-4.3p2-26.el5.x86_64.rpm nss-3.11.99.5-2.el5.x86_64.rpm nspr-4.7.0.99.2-1.el5.x86_64.rpm pam-0.99.6.2-3.27.el5.x86_64.rpm libselinux-1.33.4-5.el5.x86_64.rpm libsepol-1.15.2-1.el5.x86_64.rpm mcstrans-0.2.7-1.el5.x86_64.rpm

这一步做完后,最麻烦的就算是过去了
然后用新的apt-get
apt-get update
然后报错,这个错误以前碰到过,见这里
于是按照上面的方法解决

反正最后是用apt-get update;apt-get check;apt-get -y upgrade;apt-get -y dist-upgrade搞定
(期间也出过n多的问题,幸好都一一解决了)

debian上的exim4开启往外(internet)发邮件

2008年8月20日 没有评论

debian下缺省安装的mta是exim4
那天netstat -nap | grep LISTEN一看
exim4监听着127.0.0.1的25端口
用惯了redhat系列的我想当然的认为:
嗯,不错,监听本地25端口,接收本地邮件然后根据需要往外(internet)发
这个跟redhat缺省的sendmail是一样的
但后来
发现原来定时备份的邮件收不到了
一看系统退回的信件:

Mailing to remote domains not supported

老是报这个错误
这才发现
原来debianexim4缺省是不支持往internet上发信的

于是编辑下配置文件/etc/exim4/update-exim4.conf.conf

dc_eximconfig_configtype=’local’

改成

dc_eximconfig_configtype=’internet’

再重起exim4
/etc/init.d/exim4 stop;/etc/init.d/exim4 start

这时exim4还是监听着本地127.0.0.1的25口
但是已经支持往internet上发信了

squid的file descriptor

2008年8月13日 2 条评论

squidfile descriptor是个非常重要的参数
他关系squid能同时打开多少个文件描述符
跟squid的性能密切相关
而linux下所有用户的file descriptor缺省都是1024
//汗
以前在squid2.5的时候
都是通过编译squid的之前
先手工强制加大file descriptor
ulimit -HSn 65536
然后再等编译完
启动之前
也加上
ulimit -HSn 65536
这样的方法来增大file descriptor
但这种方法在squid2.6的情况下
也不是不行
主要是这次我不想重新用用源码编译squid
我就想用rpm
哪怕把系统的srpm下下来rebuild下也行
反正我在rebuild的时候
ulimit -HSn 65536的方式没成功
不知道问题在什么地方
但我明白了一点
redhat系的squid2.6的rpm包里
其实有着一些redhat专门为squid打的补丁
其中就有对config参数”

–enable-fd-config

“的支持
以及相对应的在squid的配置文件里支持参数

max_filedesc

的支持
所以
如果是redhat系列的linux系统自带的squid2.6
只要在配置文件里设置max_filedesc就可以轻松解决file descriptor的问题

感受debian

2008年5月15日 没有评论

linux里一直redhat一系用的比较多
最近ubuntu火起来后也在用ubuntu的桌面
这也才算是开始接触debian的东西(ubuntu算是debian一系的东西)
最近基于某种机缘
装了台debian的机器
版本是最新的4.0r3,07年出的
业界传说debian的人被ubuntu挖走了好多
导致版本发布变慢
看来还像这么回事儿
刚用,没啥其他感觉
就是安装的时候感觉比redhat一系的安装功能强大了不少
再有
就是用起来跟redhat一系很不一样(废话,一样的话那也是redhat一系了)
听以前用debian的同事讲debian比redhat稳定多了
我正好拭目以待