Archive for 五月, 2006
Solaris下实现多控制台操作
Solaris的命令行界面默认只有一个控制台,不能像linux那样实现多个控制台之间的相互切换。还是为了习惯吧,下面的方法可以实现给Solaris增加控制台。
首先用grep命令检查设备文件名:
# grep -i chanmux /etc/name_to_major
chanmux <num>
在/dev目录下创建一个设备文件,number这个参数就是上面那个grep命令的结果 :
mknod /dev/vt01 c <number> 1
mknod /dev/vt02 c <number> 2
……
然后在/etc/inittab里添加:
v1:234:respawn:/usr/lib/saf/ttymon -g -h -p "VT1 Login: " -T AT386 -d /dev/vt01 -l console
v2:234:respawn:/usr/lib/saf/ttymon -g -h -p "VT2 Login: " -T AT386 -d /dev/vt02 -l console
……
然后用init命令从读inittab文件,或者reboot,也可以用一下命令:
/usr/sbin/init 0
好了,现在可以测试一下了
Alt-PrintScreen F1 切换到VT1
Alt-PrintScreen F2 切换到VT2,
Alt-PrintScreen P 切换到上一个界面.
Alt-PrintScreen N 切换到下一个界面.
Alt-PrintScreen H 切换到X console screen (不是Alt-PrintScreen F)
系统状态查看工具Sysstat
1、关于 Sysstat;
Sysstat 是一个软件包,包含监测系统性能及效率的一组工具,这些工具对于我们收集系统性能数据,比如CPU使用率、硬盘和网络吞吐数据,这些数据的收集和分析,有利于我们判断系统是否正常运行,是提高系统运行效率、安全运行服务器的得力助手;
Sysstat 软件包集成如下工具:
* iostat 工具提供CPU使用率及硬盘吞吐效率的数据;
* mpstat 工具提供单个处理器或多个处理器相关数据;
* sar 工具负责收集、报告并存储系统活跃的信息;
* sa1 工具负责收集并存储每天系统动态信息到一个二进制的文件中。它是通过计划任务工具cron来运行,
是为sadc所设计的程序前端程序;
* sa2 工具负责把每天的系统活跃性息写入总结性的报告中。它是为sar所设计的前端 ,要通过cron来调用
* sadc 是系统动态数据收集工具,收集的数据被写一个二进制的文件中,它被用作sar工具的后端;
* sadf 显示被sar通过多种格式收集的数据;
2、安装 Sysstat和运行;
对于大多数系统,都有这个软件包,软件名以sysstat开头。我们可以通过网络安装它;
2.1 对于Debian或deb软件包为基础的系统;
[root@localhost ~]# apt-get install sysstat
2.2 Fedora 系统或以RPM包管理的系统;
[root@localhost ~]# yum install sysstat如果是RPM包,请用下面的命令来安装;
[root@localhost ~]#rpm -ivh sysstat*.rpm如果您想了解yum 和rpm 软件包管理工具,请参考:《Fedora / Redhat 软件包管理指南》
2.3 Slackware 系统,对于Slackware系统;
[root@localhost ~]# installpkg sysstat*.pkg
2.4 通过源码包编译安装;
如果您是通过源码包安装,请到官方下源源码包 http://perso.wanadoo.fr/sebastien.godard,目前最新版本是 sysstat-6.1.2;
如果您想了想一下什么是源码包,请参考:《如何编译安装源码包软件》
[root@localhost ~]# tar zxvf sysstat-6.1.2.tar.gz
[beinan@localhost ~]$ cd sysstat-6.1.2
[beinan@localhost sysstat-6.1.2]#
[beinan@localhost sysstat-6.1.2]# make config
[beinan@localhost sysstat-6.1.2]# make
[beinan@localhost sysstat-6.1.2]# make install
2.5 关于 Sysstat 计划任务;
如果您想得到Sysstat工具集所收集的系统信息自动存为某个文件中,你必须通过cron 为 sa1 和sa2 做计划任务。我们可以通过修改用户的crontab。在默认的情况下,Sysstat历史信息将被存放在/var/log/sa文件中。如果想定义自己的 计划任务,请参考:《计划任务工具 cron 的配置和说明》
在root用户,通过 crontab -e 来添加下面的一段;
# 8am-7pm activity reports every 10 minutes during weekdays
0 8-18 * * 1-5 /usr/lib/sa/sa1 600 6 &
# 7pm-8am activity reports every hour during weekdays
0 19-7 * * 1-5 /usr/lib/sa/sa1 &
# Activity reports every hour on Saturday and Sunday
0 * * * 0,6 /usr/lib/sa/sa1 &
# Daily summary prepared at 19:05 5 19 * * * /usr/lib/sa/sa2 -A &创建Sysstat的启动脚本;
[root@localhost ~]# touch /etc/rc.d/init.d/sysstat
[root@localhost ~]# vi /etc/rc.d/init.d/sysstat#!/bin/sh
# Begin $rc_base/init.d/sysstat
# Based on sysklogd script from LFS-3.1 and earlier.
# Rewritten by Gerard Beekmans - gerard@linuxfromscratch.org
. /etc/sysconfig/rc
. $rc_functions
case "$1" in
start)
echo "Calling the system activity data collector (sadc)..."
/usr/lib/sa/sadc -F -L -
evaluate_retval
;;
*)
echo "Usage: $0 start"
exit 1
;;
esac
# End $rc_base/init.d/sysstat[root@localhost ~]# chmod 755 /etc/rc.d/init.d/sysstat
[root@localhost ~]# ln -sf /etc/rc.d/init.d/sysstat /etc/init.d/sysstat有了Sysstat的守护进程,这样我们开机后,Sysstat的守护进程,就时时刻刻的为我们服务了。sa 、sa1或sa2自动把信息存在 /var/log/sa目录的二进制文件中,我们可以通过sar工具来提取这些系统信息的历史;
当然我们也可以通过手动的方法来打开Sysstat的守护程序,也就是我们前面所制作的sysstat;
[root@localhost ~]# /etc/rc.d/init.d/sysstat start
下面的方法也行;
[root@localhost ~]# /usr/lib/sa/sa1
[root@localhost ~]# /usr/lib/sa/sa2
3.Sysstat 工具集介绍;
3.1 sadc 工具,
sadc 位于 /usr/lib/sa目录中,如果你没有设置可执行路径,要用绝对路径来运行比较方便 ,/usr/lib/sa/sadc;sadc 是把数据写在一个二进制的文件中,如果想查看数据内容,需要用sadf工具来显示;
sadc 的用法;
/usr/lib/sa/sadc [ -d ] [ -F ] [ -I ] [ -L ] [ -V ] [ interval [ count ] ] [ outfile ]参数说明:
-d 报告硬盘设置的相关统计;
-F 强制把数据写入文件;
-I 报告所有系统中断数据;
interval 表示时间间隔,单位是秒,比如3 ;
count 统计数据的次数,也是一个数字;
outfile 输出统计到outfile文件;注意:此工具中的参数都是可选的,如果没有指定任何参数,比如 /usr/lib/sa/sadc – ,则会输出数据到 /var/log/sa/ 目录下的一个文件中。我们要通过sadf 或sar工具来查看;
[root@localhost beinan]# /usr/lib/sa/sadc -
[root@localhost beinan]# ls /var/log/sa 注:列出所有sa目录下的文件,根据文件的时间来判断哪个文件是最新的;
[root@localhost beinan]# sar -f /var/log/sa/sa12
或
[root@localhost beinan]# sadf /var/log/sa/sa12举例:我们想把sadc收集到的数据写到一个指定的文件中;
[root@localhost ~]# /usr/lib/sa/sadc 1 10 sa000[root@localhost ~]# sar -f sa000 Linux 2.6.15-1.2054_FC5 (localhost.localdomain) 2006年05月12日 09时15分30秒 CPU %user %nice %system %iowait %idle09时15分31秒 all 3.00 0.00 0.00 1.00 96.0009时15分32秒 all 0.00 0.00 0.00 0.00 100.0009时15分33秒 all 0.00 0.00 0.00 0.00 100.0009时15分34秒 all 0.00 0.00 0.00 0.00 100.0009时15分35秒 all 0.00 0.00 0.00 0.00 100.0009时15分36秒 all 0.00 0.00 0.00 0.00 100.0009时15分37秒 all 0.00 0.00 0.00 0.00 100.0009时15分38秒 all 0.00 0.00 0.00 0.00 100.0009时15分39秒 all 0.00 0.00 0.00 0.00 100.00Average: all 0.33 0.00 0.00 0.11 99.56
注解:我们用sadc 收集系统动态数据,让它收集1秒之内的10次动态信息; 然后通过sar 工具来查看系统的状态。也可以用 sadf 来查看所收集的数据,但不是太直观。您自己尝试一下看看。查看sa000文件,用 sadf sa000 ;
3.2 sar 工具;
sar 工具比较强大,既能收集系统CPU、硬盘、动态数据,也能显示动态显示,更能查看二进制数据文件;sar 的应用比较多,而且也比较复杂,数据更为精确。我们只了解一下常用的内容就行,大多数内容我们了解就行;
用法:
sar [参数选项]参数说明:
-A 显示所有历史数据,通过读取/var/log/sar 目录下的所有文件,并把它们分门别类的显示出来;
-b 通过设备的I/O中断读取设置的吞吐率;
-B 报告内存或虚拟内存交换统计;
-c 报告每秒创建的进程数;
-d 报告物理块设备(存储设备)的写入、读取之类的信息,如果直观一点,可以和p参数共同使用,-dp
-f 从一个二进制的数据文件中读取内容,比如 sar -f filename
-i interval 指定数据收集的时间,时间单位是秒;
-n 分析网络设备状态的统计,后面可以接的参数有 DEV、EDEV、NFS、NFSD、SOCK等。比如-n DEV
-o 把统计信息写入一个文件,比如 -o filename ;
-P 报告每个处理器应用统计,用于多处理器机器,并且启用SMP内核才有效;
-p 显示友好设备名字,以方便查看,也可以和-d 和-n 参数结合使用,比如 -dp 或-np
-r 内存和交换区占用统计;
-R
-t 这个选项对从文件读取数据有用,如果没有这个参数,会以本地时间为标准 读出;
-u 报告CPU利用率的参数;
-v 报告inode, 文件或其它内核表的资源占用信息;
-w 报告系统交换活动的信息; 每少交换数据的个数;
-W 报告系统交换活动吞吐信息;
-x 用于监视进程的,在其后要指定进程的PID值;
-X 用于监视进程的,但指定的应该是一个子进程ID;sar 应用举例;
实例一: 如果只用sar 命令,sar就是读取 /var/log/sa目录下最近系统状态文件。
[root@localhost ~]# sar
[root@localhost ~]# sar -A 注:读取/var/log/sa目录下所有文件数据;如果我们想知道CPU的利用率;动态更新;下面的例子是每秒更新一次数据,总共更新五次;
[root@localhost ~]# sar -u 1 5Linux 2.6.15-1.2054_FC5 (localhost.localdomain) 2006年05月12日 时间 CPU 利用率 nice值 系统占用 IO占用 空闲11时19分34秒 CPU %user %nice %system %iowait %idle11时19分35秒 all 2.97 0.00 0.00 0.00 97.0311时19分36秒 all 11.11 0.00 9.09 0.00 79.8011时19分37秒 all 21.78 0.00 6.93 0.00 71.2911时19分38秒 all 15.00 0.00 0.00 0.00 85.0011时19分39秒 all 8.00 0.00 0.00 0.00 92.00Average: all 11.78 0.00 3.19 0.00 85.03
注解:
CPU:表示机器内所有的CPU;
%user 表示CPU的利用率;
%nice 表示CPU在用户层优先级的百分比,0表示正常;
%system 表示当系统运行时,在用户应用层上所占用的CPU百分比;
%iowait 表示请求硬盘I/0数据流出时,所占用CPU的百分比;
%idle 表示空闲CPU百分比,值越大系统负载越低;
您可以CPU利用率的动态信息输出到一个文本文件中,然后通过more 来查看。
[root@localhost ~]# sar -u 1 5 > sar000.txt
[root@localhost ~]# more sar000.txt也可以输出到一个二进制的文件中,然后通过sar来查看;
[root@localhost ~]# sar -u 1 5 -o sar002
[root@localhost ~]# sar -f sar002注:如果您把数据通过-o filename 输出到一个二进制的文件中,是不能用文件内容查看工具more 、less或cat来查看的,应该用sar工具来查看,要加-f参数;
实例二:查看网络设备的吞吐情况;
比如我们让数据每秒更新一次,总共更新十次;
[root@localhost ~]# sar -n DEV 2 5
时间 IFACE rxpck/s txpck/s rxbyt/s txbyt/s rxcmp/s txcmp/s rxmcst/s第一字段:时间;IFACE:设备名;rxpck/s:每秒收到的包;rxbyt/s:每秒收到的所有包的体积;txbyt/s:每秒传输的所有包的体积;rxcmp/s:每秒收到数据切割压缩的包总数;txcmp/s :每秒传输的数据切割压缩的包的总数;rxmcst/s: 每秒收到的多点传送的包;
如果我们从事提取eth0设备(也就是网卡eth0)的信息;我们应该用grep 来过滤。然后再显示出来;
[root@localhost ~]# sar -n DEV 2 5 |grep eth0
11时52分37秒 eth0 1.00 1.00 97.51 97.51 0.00 0.00 0.00
11时52分39秒 eth0 1.01 1.01 98.49 98.49 0.00 0.00 0.00
11时52分41秒 eth0 1.00 1.00 98.00 98.00 0.00 0.00 0.00
11时52分43秒 eth0 1.00 1.00 98.00 98.00 0.00 0.00 0.00
11时52分45秒 eth0 1.00 1.00 98.00 98.00 0.00 0.00 0.00
Average: eth0 1.00 1.00 98.00 98.00 0.00 0.00 0.00如果想知道网络设备错误报告,也就就是用来查看设备故障的。应该用EDEV;比如下面的例子;
[root@localhost ~]# sar -n EDEV 2 5
3.3 iostat
iostat 是用来显示 系统即时系统,比如CPU使用率,硬盘设备的吞吐率;
[root@localhost ~]# iostatLinux 2.6.15-1.2054_FC5 (localhost.localdomain) 2006年05月12日 avg-cpu: %user %nice %system %iowait %idle 7.24 0.00 0.99 0.35 91.43 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtnhda 1.46 28.43 21.43 710589 535680
3.4 mpstat
mpstat 提供多处理器系统中的CPU的利用率的统计;mpstat 也可以加参数,用-P来指定哪个 CPU,处理器的ID是从0开始的。下面的例子是查看两个处理器,每二秒数据更新一次,总共要显示10次数据;
[root@localhost ~]# mpstat -P 0 2 10 注:查看第一个CPU
[root@localhost ~]# mpstat -p 1 2 10 注:查看第二个CPU
</code >
<code>
[root@localhost ~]# mpstat 2 10 注:查看所有CPU;
3.5 sdaf
sdaf 能从二进制文件中提取sar所收集的数据;这个大家知道就行了。显示的并不是友好的格式;
[root@localhost ~]# sar -u 2 5 -o sar003
[root@localhost ~]# sadf sar003相对来说,用sar来读取输出文件的内容更好;比如下面的;
[root@localhost ~]# sar -f sar003
4、 与Sysstat相似工具;
4.1 进程管理工具;
进程管理工具,包括ps 、pgrep、top、kill 、killall、pkill 等,请参考 《 Linux 进程管理》
4.2 内存使用率查看工具;
内存使用量 free
free 工具既能查看物理内存,也能查看虚拟内存的用量;
[root@localhost ~]# free如果显示以单位M,则加-m参数;
[root@localhost ~]# free -m
total used free shared buffers cached
Mem: 724 713 11 0 24 290
-/+ buffers/cache: 398 326
Swap: 800 0 800
vmstat 即时显示内存工具;
vmstat 是一个即时显示内存使用情况的工具;
vmstat 使用方法:
vmstat [-V] [-n] [delay [count]]
-V 显示vmstat的版本;
-n causes the headers not to be reprinted regularly.
-a 显示所有激活和未激活内存的状态;print inactive/active page stats.
-d 显示硬盘统计信息;prints disk statistics
-D 显示硬盘分区表;prints disk table
-p 显示硬盘分区读写状态等;prints disk partition statistics
-s 显示内存使用情况;prints vm table
-m prints slabinfo
-S 定义单位,k K
delay 是两次刷新时间间隔;
单位体积: k:1000 K:1024 m:1000000 M:1048576 (默认是 K)
count 刷新次数;看看你究竟适合哪种linux
目前linux的各种发行版本差不多超过400种,且各有特色,究竟你最适合使用哪个操作系统?有这么一个小测试比较有趣。 测了几次,结果都是debian,而且评分竟然到了100,似乎我并没有使用debian,看来我要换个linux看看了。
修复Solaris的grub
Solaris10自从01/06之后默认已经安装了grub以作多系统引导之用。但由于某些原因不得不重装Windows,会重新覆盖 MBR,导致Grub不能使用,不能直接启动Solaris。
我们只需要 Solaris 1/06的第一张CD光盘或者DVD光盘,就可以重新安装Grub
步骤:
1)设置机器并从Solaris 1/06光盘启动
2)在出现Grub界面的时候,按c进入grub命令模式
3)找到硬盘上已安装的Solaris系统的
grub>find /platform/i86pc/multiboot
(hd0,2,a)
我们也可以查找另一个文件:find /boot/grub/menu.lst
4) 得到硬盘编号,将它设为root device
例子里的(hd0,2,a),指的是第1块硬盘第三个fdisk分区中的第一个slice。
grub>root(hd0,2,a)
Filesystem type is ufs, partition type 0x000000bf
5) 指定boot和archive文件,启动Solaris
grub>kernel /platform/i86pc/multiboot
grub>module /platform/i86pc/boot_archive
grub>boot
如果记不住这些命令,我们可以借助menu.lst文件,其实这个文件是原grub用于启动的菜单,并含有这些启动命令,可供我们参考。
一般这个文件的位置在/boot/grub/menu.lst,我们可以使用cat显示内容。
grub>cat /boot/grub/menu.lst
6) 进入Solaris后,使用root身份安装grub
#/usr/sbin/installgrub -m /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c0d0s0
其中c0d0s0是指一块硬盘,该命令会将Grub文件安装到该硬盘的MBR。
windows下使用Linux的远程桌面
本文以Fedora Core5为例
现在很多linux操作系统都自带了远程桌面功能,linux的远程桌面一般都是采用了VNC协议。这种协议不仅可以使用在*nix上,几乎任何的桌面操作系统均可对该协议提供支持。
首先到http://www.realvnc.com/ 下载RealVnc的最新版本,当然是For Windows的,安装的时候只要安装一个客户端就可以了,当然,你也可以安装服务器端,远程控制你的windows——要知道,同种功能的软件pcanywhere要几百兆,而且还很贵。
进入到FC的桌面
菜单-〉桌面-〉管理-〉服务 开启VNCserver服务
菜单-〉桌面-〉首选项-〉远程桌面 修改参数设置,这里默认是不允许远程登陆的,将“允许别人远程登录”打勾。同时如果不希望每次都要到终端去确认的话,将“请您确认”的勾去掉。安全起见,这里设置了密码。
回到windows下,运行vnc viewer。输入远程主机的主机名或IP,如果正确的话会弹出密码确认框。输入密码后,成功登录到远程桌面!
在VNC viewer 默认F8键可以调出系统菜单,这里你可以选择全屏方式,发送Ctrl+alt+del等一系列命令。这一点类似于PCanywhere的用法。
realVNC还提供了更高级的版本——支持加密、文件传送等功能,可惜都不是免费的了。
如何判定你是否具备有学习Linux的素质
伴随着Linux日益普及,也越来越受到用户的青睐,有相当一部分朋友很希望体验这个神秘的系统,对于大多数人来说,驾驶Linux似乎是可望不可及的,为什么会发生这种情况,可能是应用不够广,操作难的原故吧。
如果你决定要试用或学习Linux,你应该具备怎样的条件{素质}?很简单,你只需往下看。
你需要学习Linux么?下列这类朋友很可能不需要。
1,钟情于游戏的朋友。
理由:Linux对游戏支持不好,比不上windows下的十分之一,只要你是游戏爱好者而且体验过Linux你会深有体会,当然你只需要低端的游戏,你可以用Linux。
2,还没试用Linux就认为难的朋友。
理由:如果没经过自己体验后随意听信别人观点的人,他有百分之九十九都是无法继续学习下去的,为什么?也许别人讲的是对的,但终归是别人的观点,他不经过自己的验证就认定了这个观点,那么我建议你不需要学习Linux,因为Linux的确有些操作上需要一定的时间去掌握。
3,否定Linux会普及的朋友。
理由:windows系统的确在市场上占有绝大份额,但开源软件已成为软件业的潮流,这是有事实根据的。而Linux也很有可能成为软件业的趋势,如果否定了Linux在市场上发挥的作用,那么他是不可能会去用Linux,没人会去关注一个没有长远发展力的软件。
4,没有坚强意志及低档不住诱惑的朋友。
理由:Linux与windows相比,很多人都认为根本无法比,首选会是windows,哪怕是有病毒的威协,windows系统很容易掌握,而 Linux的确不是给大多数人用的,对于目前来说这不算过分的说法。windows下太完美了,软件很成熟,接下来不需要我一一去解释了吧。
5,使用软件多及频繁的朋友。
理由:Linux下的确有很多常用软件,而且是免费的,但更多的人都会使用windows下的破解等软件,为什么?看中的是它的软件成熟,毕竟技术架构发展了很多年,可以说经典的软件都是老牌子,性能及质量都有保障。也许这个问题对于Linux的有些朋友难于接受,但毕竟要考虑到大多数的朋友,他们的确选择了windows。不要用收费与免费来讨论这个问题,那是不实际的。
6,注重花销的朋友。
理由:花销的人大多不会有很大的作为,所以他们不需要去学习一个目前并不好用的Linux。
以上列出了六点,如果上面提到六种之一或更多都与你不符,那么,你很可能需要学习Linux,但不是绝对的,因为有很多我没列出来,如果你感兴趣,慢慢去体会。
你需要学习Linux么?下列这类朋友很可能需要。
1,需要架接服务器的朋友。
理由:Linux最大的优点是作为其服务器强大功能,它成本低,相比windows它要安全多了,稳定等,这些都是应用Linux最好的理由。
2,编程,开发爱好者。
理由:Linux是开源软件,运行在该系统的软件也是开源的,更重要的是,它有长远的发展潜力。
3,电脑爱好者。
理由:Linux正在做稳做大,而且出现了大方位的缺少人才局面,它有巨大的发展潜力。很多朋友都把目光放在了软件业,最基本的软件操作系统当然是众多人的焦点。应用Linux也将成为一种潮流,爱好者是不会放过有潮流的机会。
4,对新事物感兴趣的朋友。
理由:Linux在很多人脑子里根本就不存在,也许现在有了一定的普及,他听说除了windows还有Linux,Linux的桌面是很酷的,很可能他们就有一种冲动,学习这系统,冲劲很足的时候我真希望他们不要碰到挫折。
5,很看中安全的朋友。
理由:windows与Linux桌面相比,谁更安全,我选择后者,相信很多朋友都是。
6,现在正在使用的朋友及拥护Linux的朋友。
理由:对于拥护者,不需要任何理由。
以上列出了六点,如果上面提到六种之一或更多都与你相符,那么,你很可能需要学习Linux,但不是绝对的,因为有很多我没列出来,如果你感兴趣,慢慢去体会。
总结:似乎从这篇文章当中你得到的启示并不多。但慢慢体会你会发觉,文章内有乾坤,它只指出基本的,更多需要结合你自身的情况去发掘。如果你找不出自身是否适合学习Linux,那么我建议你先从理论学起,学东西要先学做人,连自己都模糊的人,你就需要安静下来一句话也不用说,默默努力吧。
Linux下多网卡负载的实现
作为局域网的服务器特别是文件服务器,经常出现的系统瓶颈在于网络接口。有些情况下我们确实需要将n个网卡设置为一个虚拟的网卡,具有相同的IP地址且可以实现负载——类似于cisco的etherchannel技术。在linux下,这种技术被称之谓“bonding”,本身已经存在于linux的内核里。
看了几家人家的发行版本,很多都默认不开启bonding,所以还需要我们重新订制一个内核。
在核心配置的界面中的网络设备驱动开启Bonding driver support
Device Drivers->Network device support->(M)Bonding driver support
编译新的linux 核心。
编辑/etc/modprobe.conf添加一条:
alias bond0 bonding
编辑/etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
IPADDR=192.168.1.1
NETMASK=255.255.255.0
NETWORK=192.168.1.0
BROADCAST=192.168.1.255
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
修改原先的/etc/sysconfig/network-scripts/ifcfg-eth0 if-eth1
DEVICE=eth0 //eth1
USERCTL=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none
重新启动网络或服务器
从“麒麟事件”看开源社区的贡献
自打韩国出了个黄禹锡,国内的媒体就跟风来了个“学术打假”的风潮。“汉芯”落马之后,这一周“麒麟”成了众矢之的,被各大IT技术社区一致推举为下一个需要落马的。
且不说之前Kylin的开发者在春节后就已经承认“抄袭”了FreeBSD的内核,反正不少技术社区内对于整个事件的评价已经逐渐有从技术层面上升到了政治层面,现在又有向民族利益甚至民族劣根性上转移的趋势了。几个所谓“本分”的技术人员,似乎看清了“市场需求”,今天搞个内核相似性分析,明天来个反汇编,后天再来个“换核引导”什么的,忙了个不亦乐乎。让人想到了鲁迅先生写的“痛打落水狗”。
诚然,抄袭也好,剽窃也罢,骗钱也成,现在整桩事情再谈也没有意义,毕竟就算是有问题也是要靠检查机关、法院来调查取证才好做最终定论的。在此之前谁都没有枉加评判的理由。更何况上升到民族利益上呢?作为商业机构,KyLin的开发者又怎么又权力代表全体中国人民呢?即便说剽窃、抄袭,那看看Redhat,看看SuSe,那不也是在“剽窃”?把FreeBSD本地化后封装打包也是一种贡献。说Kylin价值5000万的水分,那可以看看其他*nix的价值——5000万也不是夸张,就看你怎么计算了。做不成“微软型”的IT企业,做个“Redhat型”总可以吧?种种问题已经超出了作为技术社区该讨论的范围。
在看看所谓现在IT技术社区的现状:
哗众取宠,“猫扑化”
很多论坛的通病:写明知将要被口水淹死的帖子,后面跟着几百层楼的拍砖,直到自己的帖子被系统“糊涂地”判断为“精华帖”。抑或不管什么帖子都去抢一个实际并没有意义的“沙发”;什么帖子都去留下“路过”只为骗个发帖数。还有就是很多社区都出现了“闲聊区”的帖子数大于“技术区”的现象
相互诋毁,“口水战”
整个版子都在吵架,开源系统与商业系统的口水;开源社区之间的口水;甚至对发帖人进行人身攻击……这成了很多社区所谓“月经帖”。
无知无畏,“炫耀帖”
搞好一个系统,愣敢帖满屏幕的图片,甚至连操作步骤都不去整理出一个来。
再看看国人主要的参与的开源项目吧,大部分只是限于本地化而已。甚至连很多本地化的工作都是由台湾人甚至东南亚人来完成——要知道,他们根本不用简体中文。国人的外语水平不佳?我们可是从小学甚至幼儿园就开始学英语,物业保安甚至坐台小姐都能够说一口地道的“伦敦腔”。对于技术交流,国人只限于某某系统怎么才能弄起来的阶段,根本谈不上去改进甚至开发一个系统。对于法律条规方面,洋人整出了GPL,BSD等各种完善的法律条款,而国人讨论的话题仅仅局限于“使用自己刻录的Linux算不算盗版”。国人没有法律意识?看看对于“麒麟”的评价,简直比法官的判决还要定论。
已经看的麻木了,也就见怪不怪了。最后引用一句曾经看到过某版主的签名:“多做些实事,少谈些主义”。
#本文偏激,仅代表个人意见。
如何判断企业是否适合使用Linux
为什么选用Linux
Linux 已经获得了IT社区内广泛的关注,因为它与传统的UNIX系统以及Windows相比,具有多种优势。
首先,Linux是基于标准的操作系统,符合 POSIX标准,能够向其他的商业性UNIX系统一样直接连接软件。与大部分其他的UNIX不同的,Linux在设备上运行时,可以用于移动设备才使用 的gumstix平台,也可以用在IBM z系列主机,甚至排名前500的超机计算机上运行。也就是说,Linux通过扩展可用于任何规模的组织机构下的 计算环境。其次,由于Linux不按传统用户数或CPU数计算许可证数量,平均到每台服务器上,操作系统本身的成本相对很低微,因此能把组织 机构从采购成本的重担中解放出来。即使与一级Linux分销商RedHat和Novel或者SuSE签订专业的支持合同,所耗费的成本与购买Windows或 Solaris系统的成本想比也是微乎其微。如果Linux操作系统具有很高的安全性,配置得当就不会有病毒入侵,而且只有很少的弱点。Linux操作 系统修改和发布软件错误修订的速度是惊人的。2004年下半年,Register曾经对这个现象做了深刻的分析。一般情况下,开放资源世界中从发 现新的重要软件错误到发布修补方法的时间都远远短于Windows这样的操作系统。最后,作为开发和计算平台,Linux的灵活性使得UNIX能够使 用所有最新的能够帮助企业提供网络服务和高性能计算空间的工具和服务。
Linux最佳点
在现有环境中引入Linux面临的最大挑战之一就是确定“第一应用”,也就是从逻辑上看来尽管是非常重要高调的应用,但如果这个应用出了问题,也不会导致企业全盘皆输。在过去以及现在,许多传统软件厂商如CA,IBM和Oralce在很多应用用引入了Linux,当然,这些年中也出现了 成千上万的开源应用软件。以下就是一些Linux擅长使用的环境:
- 数据库服务器
- 网络服务器
- 网络附加存储(NAS)
- 计算服务器
支持服务
Linux数据库使用MySQL和PostgreSQL这样的开源标准。许多Linux发行版都带有这些软件包,随手可用。这两种数据库实用性都很强,被世界上 数千家商业网站所选用。如果您的企业也在寻找快速而价格低廉的数据库,Linux数据库可能就是合适的选择。如果环境中已经采用了一些传统 数据库的话,DB2,Oracle,和Syabase等方案都可以在多种硬件平台上在Linux发行版上运行。互联网上大部分的网络服务器所采用的都是 Apache网络服务器,将全部内容从微软IIS上转入Apache是很简单的。另外,也可以选择J2EE 和其他的Java服务器容器。可能对作为NAS系统使 用的Linux不太熟悉。从一开始,Linux就支持网络文件系统,SMB/CIFS (Windows文件共享), AppleTalk, 和Novell Netware。大型存储阵列与 Linux系统可以直连,这样就能以很低的价格,非常简单的增强企业的存储选择。Linux也能在高性能硬件上运行,它的高效让你能够更加充分的利用硬件的全部潜能。如果需要其他的能力进行建模和仿真,请记住,世界上前500名超级计算机中许多都采用了Linux集群,许多企业都会 采购集群。
日常维护
Linux相对来说是比较容易维护的,但是除非自己拥有庞大的IT队伍,既熟悉UNIX,又有能力升级系统,否则还是需要专业的支持。有多种方法可以获得支持。可以采用“本地方式”在当地寻找一家提供企业支持的Linux或UNIX顾问公司。对于只有几台服务器没有太多预算的小规模企业 来说,这是一个富有吸引力的节省成本的好办法。你可以考察顾问公司已有的客户、查看其资质以及背景经验等。另外还有一些中级地区性或者国家级的Linux支持企业。Linux文档项目列出了不少企业的名称。另外LPI这样的Linux授权认证机构也可以提供更多信息。如果需要那种与 知名企业打交道的感觉,你可以与Redhat或Novell这样的第一级Linux分销商联系。一般按照服务器数量收取一定的费用,这样就可以用打补丁的方式使系统保持更新。也提供现场管理和维护,但是收费昂贵,只有资金实力雄厚的企业才能享用。无论选择何种方式,请确保明白自己的 所作所为。和Windows(或Solaris,HPUX或者其它的系统)一样,使用Linux不会减少维护基础设施的工作量。它只会降低整体运营成本,并且为公司将来的发展准备了另一个选择。
Windows与Linux差别
当准备工作完成以后,找到目标应用,然后决定支持的策略,那么运行Linux系统以后,与运行Windows服务器相比,会有怎样的不同呢?这是一 个比较主观的问题,因为这取决于最初决定使用Linux的初衷。对于许多组织机构来说,目标是为了降低年度软件使用成本。他们所期待的就是成本的减少。不过,从功能上来讲,Windows和Linux之间还是有很明确的区别。
性能:对于纯粹的计算应用来说,Linux在很多方面上表现更优。Windows有Linux(和UNIX)所不具有的system-call管理费用以及其它一些瓶颈。
移动性:符合POSIX标准的应用系统可以很轻易的在系统间移动。这意味着Solaris或HP./UX应用可以通过资源代码进行快速移动。许多 Windows应用的核心(只要他们不依靠Windows专用的库,如DLL)也可以进行同样的移动。这种移动能力使得组织机构需要扩展系统时处于主动(例如,从x86向Itanium迁移,或者迁移到IBM z系列的Linux等)。
开发:这是一个更为主观的问题。如果开发部员工由“微软人”组成,他们擅长使用微软的Visual Studio或类似的其他工具,那么 Windows 和Linux的区别将会非常惊人。现在有很多Linux可用的开发工具以及给人印象深刻的集成开发环境(IDE)。但是Linux是从UNIX工具开 发文化中繁衍出来的,因此Linux没有提供一个巨大的图形化应用,而是提供了大量使用脚本和其他机制,彼此能够互联的工具。这使得一些人 开始习惯使用这些图形界面的IDE。但是从整体来看,Linux或UNIX开发方式与其他相比更强大更灵活。
管理:对Windows系统的管理主要通过图形化工具和智能工具完成。这意味着如果管理员不在现场,就需要借助远程终端服务器或者类似 Timbuk2的工具来管理Windows服务器。
相对来说Linux属于UNIX系统,因此只要能够访问终端程序,使用命令语句就可以完成所有的配置。当然,Linux和其它UNIX系统所发展出来的 许多图形化界面工具也能够简化不太倾向于使用命令语句的人的管理工作难度。对Linux实际的管理工作不仅仅是最初的配置和监控日志文件。 能够推荐顾问公司的组织机构也能提供认证课程帮助系统管理员胜任自己的工作。
需要注意
你需要注意以下的基本问题:
- 确认最适合的目标应用
- 制订详细的支持、维护和升级计划
- 保证员工得到培训和认证
六大商业Unix操作系统
Unix是IT世界仅存的几个神话之一,自1969年诞生以来,它就一直被人们使用着。它过去的历史,简直就像一个民族的历史。我们应该庆幸,全体的Unix使用者终于安全渡过了它成长中的阵痛。那些曾经被忽略的用户则开始安装最新的Unix。Unix不是一个急功近利的奋斗者。要把Unix的执行效率和稳定性调整到最优状态,需要几个月的时间。它和硬件间令人难以捉摸的联系、众多的版本和补钉都会让人生畏。Unix之所以能长久使用,是由于其强大的自我调整能力,可以承载任何负荷。它可以一直运行,直到机器的某个部件被烧毁。
很多人认为,免费Linux 对于多年来以昂贵著称的商业Unix操作系统是一种伤害。对于SCO和SGI而言,这的确不错,然而,对于IBM、Sun 和HP来说,Linux则给Unix带来了复兴和繁荣。使用Linux作为教学工具,使大学里开始有大量的具有Unix管理能力及开发能力的大学生和研究生。虽然Linux的知识不能直接应用于企业Unix系统,但是应用Linux的经验给企业级的应用培训打下了坚实的基础,同时也使人们明白了为什么 Linux不能代替Unix。商业Unix的开发、改进,尤其是错误的修正,都是由整个公司、整个生产线来保证的。
SGI Irix
目前状况:一般
当前版本:Irix 6.5
硬件平台:SGI MIPS 服务器和工作站
遵循标准:Unix 95
优势:Irix可扩展到512个CPU和1TB的RAM,它可以达到惊人的服务器I/O处理能力,并且Irix在SGI上拥有高端和数字媒体的市场。
劣势:缓慢的MIPS CPU和在PC领域的失败;其兼容性和工具问题妨碍了其商业开发。
前景展望:SGI公司试图使其脱离MIPS处理器,并且其Irix OS也将移植到Intel PC、Windows和Linux。它们放弃了SGI现存的Irix用户。SGI在创建高速服务器I/O子系统方面能力有限。这项服务是SGI的传统市场(电影和电视动画、医学和科学的可视化高端数字媒体),但是这个领域要想维持SGI还是显得太小。
我们可以看出,Irix已经只是在艰难维生。它的用户群将很有可能支持基于Linux或者其它操作系统的服务器。
IBM AIX
目前状况:好
当前版本:AIX 5L
硬件平台:IBM RS/6000和其它使用IBM Power 和PowerPC系列处理器的系统,Intel IA-64版。
遵循标准:Unix 98
优势:强大、稳固的IBM 64位Power/PowerPC CPU;一个操作系统可用于整个RS6000生产线;Linux代码移植是一个标准选项;IBM的Visual Age Java 和C/C++工具非常利于开发。
劣势:企业计划使用IA-64和Linux系统时需要考虑 RS/6000 和 AIX。
前景展望:AIX 5L,代号“Montery 项目”,借鉴了其它一些Unix,创建了一个通用的、高度兼容的操作环境。IBM想使其和Linux成为统一的操作系统,并且承诺将开发基于Intel的64位 CPU体系结构的AIX。
这不由得让人对IBM给AIX和RS/6000的承诺产生怀疑。不过AIX的用户不用担心,Linux或者Intel要达到IBM目前企业级Unix 的标准,还要很长的时间。
IBM有很多合作伙伴,但是IBM一般是不会通过改变自己的策略去取悦他们,所以,相信AIX将会继续存在下去。
Compaq Tru64 Unix
目前状况:良
当前版本:Tru64 Unix 5.1
硬件平台:Compaq Alpha 工作站和服务器
遵循标准:Unix 95
优势:Tru64使用的是强大、精巧的Carnegie-Mellon Mach内核;对于中小型服务器而言,64位的Alpha CPU的利用率是最高的;它遵循Digital Equipment遗留下来的传统:能创建强大的、用户能够支付得起的服务器系统。
劣势:在Intel 的服务器市场上,Compaq缺乏经验和信誉;在Alpha用户中,Linux非常的流行;系统V中的兼容性漏洞有时会使应用程序碰到困难。
前景展望:Alpha 遵循一流的SPEC(Standard Performance Evaluation Corporation)标准,对于特定的时钟频率,它是最快的CPU。Compaq把名字由Digital Unix改为Tru64 Unix是为了强调Alpha芯片是真正的64位的家族。对于Compaq来说,现在所要做的是要占领更大的服务器市场份额。
Compaq在PC机上的声望对其似乎有害无益。与专有的Tru64相比,Linux和成熟的OpenVMS可能会更多地赢得企业的青睐。Intel 则会毫无疑问地建议Compaq转去使用IA-64而不是Alpha。Tru64 Unix在Alpha上有上佳的表现,但是其前景还要等到IA-64推出时Compaq会有何举动才能定论。
Hewlett-Packard HP-UX
目前状况:好
当前版本:HP-UX 11i
硬件平台:HP 9000服务器
遵循标准:Unix 95
优势:HP在可靠性和服务方面的声誉人所共知;HP-UX和一个丰富、实用的操作系统包一起推出,它包括Web server、C/C++、 Windows网络、 WAP (无线应用协议) 服务、 Linux APIs、 iPlanet 目录服务器和 Veritas文件系统。
劣势:相对于竞争者而言,HP PA-RISC体系结构在性能上有待改进。
前景展望:HP很少是第一或者是最快的,但是它在其Unix产品中捆绑了很多有价值的东西。就整体而言,HP-UX和Linux非常的接近。时间将证明,企业工具和服务应该包括在一起。HP有真正的日志文件系统,这使HP-UX 11i表现不俗。
可以相信,一旦HP在性能上赶上其竞争对手并使其HP-UX顺应Unix 98,那么它将可以超过Sun和IBM。
SCO UnixWare
目前状况:一般
当前版本:UnixWare 7.3
硬件平台:Intel PC工作站和服务器
遵循标准:Unix 95
优势:SCO是Unix System V源代码的所有者;UnixWare是最强大的,也是最完善的PC Unix;它有优秀的、价格合理的开发工具。
劣势:近来开发停滞不前;销售上也受到了Linux和Solaris的强烈冲击;很多功能强大的应用程序,它都不支持。
前景展望:因为持有Unix System V的源代码,所以UnixWare 7.1是我们所能看到的Unix中最正宗的Unix,并且SCO环境里有一些很不错的工具和服务。然而,这并没有使SCO的情况有所好转。PC Unix的市场空间一直以来都非常的狭小。如今,Linux正在被公众所认可,而Sun又将其Solaris的源代码开放,显而易见,SCO将从原有的市场中被排挤出来。
除非能够开发出一种强大的基于Web的应用服务器,否则这位PC Unix的先驱将有可能消亡。
Sun Microsystems Solaris
目前状况:好
当前版本:Solaris 10
硬件平台:Sun Sparc、Intel PC工作站和服务器
遵循标准:Unix 98
优势:其光辉的市场业绩使Solaris成为了事实上的Unix;Sparc和Intel版是同一个操作系统;对于基于Unix的商业应用系统,Solaris可以提供最广泛的支持。
劣势:Sparc处理器的可伸缩性不如其竞争对手;具良好伸缩性的Sun系统以昂贵而著称;Solaris本身所带标准软件贫乏,而其可选软件包又非常昂贵。
前景展望:牢固的市场和及时的开发,使得Sun身处第一的位置,这个位置Sun一直在小心翼翼地保护着。很简单,Solaris取得了领先的位置是因为Sun保证了所有的应用系统都可以在其上运行。 去年的OpenSolaris计划,也使Sun从开源社区中获得了大量的软件支持,以弥补其自身的不足。
Sun的顾客从它的训练有素的员工处获益。它有优秀的业务咨询员。Sun对Solaris错误的修正也非常的快。此外,Sun是Java的所有者。




最近评论