temp
http://jzhua.iteye.com/blog/609293
http://rhel.ieesee.net/uingei/rhel-server-7.0-x86_64-dvd.iso
http://download.downcc.com/bigfile/3g/rhel-server-7.0-x86_64-dvd_downcc.com.iso
RHEL 6.4亲身体验五:展望RHEL 7
http://www.searchsv.com.cn/showcontent_72146.htm
RHEL 6.4体验
RHEL 6.4亲身体验五:展望RHEL 7
RHEL 6.4亲身体验四:配置Samba 4
RHEL 6.4亲身体验三:搭建LNMP环境
RHEL 6.4亲身体验二:安装后的基本操作
RHEL 6.4亲身体验一:RHEL 6.4的新功能
http://en.wikipedia.org/wiki/Red_Hat_Enterprise_Linux#RHEL_6
RHEL 6[edit]
Red Hat Enterprise Linux 6 was forked from Fedora 12 and contains many backported features from Fedora 13 and 14.
Red Hat Enterprise Linux 6 (Santiago), 10 November 2010 Uses Linux kernel 2.6.32-71[17]
6.1, also termed Update 1, 19 May 2011 (kernel 2.6.32-131)[17]
6.2, also termed Update 2, 6 December 2011 (kernel 2.6.32-220)[17]
6.3, also termed Update 3, 20 June 2012 (kernel 2.6.32-279)[17]
6.4, also termed Update 4, 21 February 2013 (kernel 2.6.32-358)[17]
6.5, also termed Update 5, 21 November 2013 (kernel 2.6.32-431)[17]
RHEL 7[edit]
Red Hat Enterprise Linux 7 (Maipo) will be based on Fedora 19 and upstream Linux kernel 3.10, with the first beta announced on 11 December 2013.[19][11]
文档资源
redhat 5.4 download
http://www.dinyuan.cn/a/zaoanLinux/20091102/40.html
ftp://ftp.wallawalla.edu/pub/isos/ISOS/redhat/rhel/5.4/rhel-client-5.4-x86_64-dvd.iso
ftp://ftp.wallawalla.edu/pub/isos/ISOS/redhat/rhel/5.4/rhel-client-5.4-i386-dvd.iso
http://rhel.ieesee.net/uingei/rhel-server-5.4-x86_64-dvd.iso
http://rhel.ieesee.net/uingei/rhel-server-5.4-i386-dvd.iso
http://59.36.100.206/server/rhel-server-5.4-i386-dvd.iso
redhat 5.5 download
ftp://ftp.wallawalla.edu
http://bbs.crackmv.cn/viewthread.php?tid=9423
[红帽企业Linux.5.5.for.x86_64.桌面版].[i.Studio]rhel-client-5.5-x86_64-dvd.iso
http://rocolex.blog.163.com/blog/static/68446410201042613150523/
http://mirrors.sohu.com/RHEL/AS5U5/x86_64/
ftp://ftp.wallawalla.edu/pub/isos/redhat/rhel/5.5/rhel-client-5.5-i386-dvd.iso
ftp://ftp.wallawalla.edu/pub/isos/redhat/rhel/5.5/rhel-client-5.5-x86_64-dvd.iso
http://mirrors.sohu.com/RHEL/AS5U5/i386/rhel-server-5.5-i386-dvd.iso
http://mirrors.sohu.com/RHEL/AS5U5/x86_64/rhel-server-5.5-x86_64-dvd.iso
redhat 5.6 download
ed2k://|file|[红帽企业.Linux.6].TLF-SOFT-Redhat.Enterprise.Linux.v6.UPDATE.1.X86_64.DVD-HOTiSO.iso|3600812032|d39b97540497d24175340915244e6da5|h=ni34qipkufzruqzid22lmiafg3sm6q3b|/
ed2k://|file|[红帽企业Linux.5.6].rhel-server-5.6-x86_64-dvd.iso|3794051072|f731570ce11f43ee593c92aadee8b48c|h=avggmtbdsdnduuadbxy7ggm3s4asysda|/
redhat 5.7 download
http://rhel.ieesee.net/uingei/rhel-server-5.7-i386-dvd.iso
http://rhel.ieesee.net/uingei/rhel-server-5.7-x86_64-dvd.iso
redhat 6.0 download
http://ftp.redhat.com/redhat/rhel/beta/6.0/i386/iso/
ftp://ftp.redhat.com/pub/redhat/rhel/beta/6/i386/iso/RHEL6.0-20100414.0-AP-i386-DVD1.iso
http://www.riscworks.net/CentOS/RHEL6_Beta/RHEL6.0-20100414.0-AP-i386-DVD1.iso
http://ftp.heanet.ie/pub/redhat/rhel/beta/6/i386/iso/RHEL6.0-20100414.0-AP-i386-DVD1.iso
ftp://ftp.redhat.com/pub/redhat/rhel/beta/6/x86_64/iso/RHEL6.0-20100414.0-AP-x86_64-DVD1.iso
http://www.riscworks.net/CentOS/RHEL6_Beta/RHEL6.0-20100414.0-AP-x86_64-DVD1.iso
http://ftp.heanet.ie/pub/redhat/rhel/beta/6/x86_64/iso/RHEL6.0-20100414.0-AP-x86_64-DVD1.iso
redhat 6.1 download
http://rhel.ieesee.net/uingei/rhel-server-6.1-i386-dvd.iso
http://rhel.ieesee.net/uingei/rhel-server-6.1-x86_64-dvd.iso
redhat 6.2 download
http://rhel.ieesee.net/uingei/rhel-server-6.2-i386-dvd.iso
http://rhel.ieesee.net/uingei/rhel-server-6.2-x86_64-dvd.iso
redhat 6.3 download
http://rhel.ieesee.net/uingei/rhel-server-6.3-i386-dvd.iso
http://rhel.ieesee.net/uingei/rhel-server-6.3-x86_64-dvd.iso
redhat 6.4 download
http://rhel.ieesee.net/uingei/rhel-server-6.4-i386-dvd.iso
U盘安装RHEL6的简单的方法
http://breath.iteye.com/blog/1189070
1)UltraISO
2)rhel-server-6.0-i386-boot.iso
3)rhel-server-6.0-i386-dvd.iso
4)容量大于或等于4G的U盘
Step 1:用 UltraISO 打开 rhel-server-6.0-i386-boot.iso ,点击 “启动” -- “写入硬盘映像...”,使U盘成为启动U盘。
Step 2:将 rhel-server-6.1-i386-dvd.iso 重命名为 rhel-server-6.0-i386-dvd.iso,并复制到 U盘中。
Step 3:重启计算机,选择 U盘启动,即可正常安装。
Bash新手指南
http://xiaowang.net/bgb-cn/index.html
第 3 章 Bash环境
http://xiaowang.net/bgb-cn/ch03.html
RedHat5.1安装使用手册
http://hepg.sdu.edu.cn/Service/linux/document/redhat.html
http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/pdf/rhl-ig-x86-en-9.pdf
Red Hat Enterprise Linux 5安装图解
http://zhenglimeng1983.iteye.com/blog/230065
版本概念
http://hanxinyu.iteye.com/blog/95515
Red Hat Enterprise Linux 3 Update 3 ES (x86)
Red Hat Enterprise Linux 3 Update 4 AS (x86)
首先,他们都是redhat企业级Linux,简称为 RHEL。
AS=advanced server
ES=enterprise server
AS和ES,你可以看看这里: http://www.redhat.com/software/rhel/compare/
AS、ES功能上没有什么区别,只是在服务级别,支持的CPU数量和内存数量上有区别,比如ES只支持两颗CPU,最大16G内存。
Linux学习小结
http://bsb654321.iteye.com/blog/649050
系统安装
VMware Workstation 6.0 安装RHEL 5(图)
http://www.anqn.com/os/other/2009-03-31/a09108852.shtml
系统资源
RedHat RPM 包下载
http://www.solucorp.qc.ca/linuxconf/
ftp://ftp.solucorp.qc.ca/pub/linuxconf/devel/redhat-5.2
RedHat TAR 包下载
http://www.webmin.com/tgz.html
http://www.webmin.com/download.html
http://heimuad.iteye.com/blog/126856
http://blogger.org.cn/blog/more.asp?name=zhanglincon&id=35404
Red Hat Enterprise Linux AS 5 Server-i386
下载地址:disc1 disc2 disc3 disc4 disc5
安装序列号:2515dd4e215225dd
Red Hat Enterprise Linux AS 5 Client-i386
下载地址:disc1 disc2 disc3 disc4 disc5 disc6
安装序列号:660266e267419c67
安装序列号:2515dd4e215225dd
Red Hat Linux 9-i386
下载地址:disc1 disc2 disc3
红帽子企业Linux 5安装序列号
http://linux.chinaunix.net/techdoc/desktop/2007/04/02/953977.shtml
Server:
* Red Hat Enterprise Linux (Server including virtualization):
2515dd4e215225dd
+ Red Hat Enterprise Linux Virtualization Platform:
49af89414d147589
Client:
* Red Hat Enterprise Linux Desktop:
660266e267419c67
+ Red Hat Enterprise Linux Desktop + Workstation Option:
da3122afdb7edd23
+ Red Hat Enterprise Linux Desktop + Workstation + DualOS Option
(Virtualization):
7fcc43557e9bbc42
+ Red Hat Enterprise Linux Desktop + DualOS Option (Virtualization):
fed67649ff918c77
系统信息
redhat 系统时钟使用UTC
查看系统基本信息 , 各种系统下查看CPU与内存信息 .
http://devcool.cn/viewthread.php?tid=21&extra=page%3D1
[root@localhost /]# sh -version
GNU bash, version 3.2.25(1)-release (i686-redhat-linux-gnu)
Copyright (C) 2005 Free Software Foundation, Inc.
[root@localhost /]# uname -a
Linux localhost.localdomain 2.6.18-92.el5xen #1 SMP Tue Apr 29 13:45:57 EDT 2008 i686
[root@localhost /]# lsb_release -a
LSB Version: :core-3.1-ia32:core-3.1-noarch:graphics-3.1-ia32:graphics-3.1-noarch
Distributor ID: RedHatEnterpriseServer
Description: Red Hat Enterprise Linux Server release 5.2 (Tikanga)
Release: 5.2
Codename: Tikanga
http://www.nongnu.org/dmidecode/
[root@ localhost dmidecode-2.4]#mv dmidecode-2.4.tar.gz /usr/local/
[root@ localhost dmidecode-2.4]#tar -xzvf dmidecode-2.4.tar.gz
[root@ localhost dmidecode-2.4]# make install
install -m 755 dmidecode /usr/local/sbin
install -m 755 biosdecode /usr/local/sbin
install -m 755 ownership /usr/local/sbin
install -m 755 vpddecode /usr/local/sbin
install -m 644 man/dmidecode.8 /usr/local/man/man8
install -m 644 man/biosdecode.8/usr/local/man/man8
install -m 644 man/ownership.8 /usr/local/man/man8
install -m 644 man/vpddecode.8 /usr/local/man/man8 就完成了。
[root@localhost /]# dmidecode | more
(略过more阅读,按q即可)
[root@localhost /]# dmidecode |grep 'Serial Number'
[root@localhost /]# dmidecode | grep 'Serial Number' | awk '{print $3}' | tail -1
查看系统bios信息
[root@localhost /]# biosdecode | more
查看redhat 版本
[lindows@localhost ~]# lsb_release -a
(注:这个命令适用于所有的linux,包括Redhat、SuSE、Debian等发行版。)
LSB Version: :core-3.1-amd64:core-3.1-ia32:core-3.1-noarch:graphics-3.1-amd64:graphics-3.1-ia32:graphics-3.1-noarch
Distributor ID: RedHatEnterpriseServer
Description: Red Hat Enterprise Linux Server release 5.3 (Tikanga)
Release: 5.3
Codename: Tikanga
http://rubyol.iteye.com/blog/146497
[lindows@localhost ~]$ cat /etc/redhat-release
[lindows@localhost ~]$ more /etc/redhat-release
Red Hat Enterprise Linux Server release 5.2 (Tikanga)
[lindows@localhost ~]$ rpm -q redhat-release
redhat-release-5Server-5.3.0.3
[lindows@localhost ~]$ cat /etc/issue
[lindows@localhost ~]$ more /etc/issue
Red Hat Enterprise Linux Server release 5.2 (Tikanga)
Kernel \r on an \m
查看redhat 内核版本
[lindows@localhost ~]$ cat /proc/version
Linux version 2.6.18-92.el5xen ([email protected]) (gcc version 4.1.2 20071124 (Red Hat 4.1.2-41)) #1 SMP Tue Apr 29 13:45:57 EDT 2008
[lindows@localhost ~]# uname -a
Linux wcsdb2 2.6.18-128.el5 #1 SMP Wed Dec 17 11:41:38 EST 2008 x86_64 x86_64 x86_64 GNU/Linux
[lindows@localhost ~]# uname -r
2.6.18-128.el5
查看redhat 系统位数 查看系统是64位还是32位
http://rubyol.iteye.com/blog/775780
1.直接看看有没有/lib64目目录的方法。64位的系统会有/lib64和/lib两个目录,32位只有/lib一个。
2.[root@localhost /]# getconf LONG_BIT
64
(32位的系统中int类型和long类型一般都是4字节,64位的系统中int类型还是4字节的,但是long已变成了8字节inux系统中可 用"getconf WORD_BIT"和"getconf LONG_BIT"获得word和long的位数。64位系统中应该分别得到32和64。)
3.
[root@localhost /]# file /bin/ls
/bin/ls: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped
4.
[root@localhost /]# lsb_release -a
LSB Version: :core-3.1-amd64:core-3.1-ia32:core-3.1-noarch:graphics-3.1-amd64:graphics-3.1-ia32:graphics-3.1-noarch
Distributor ID: RedHatEnterpriseServer
Description: Red Hat Enterprise Linux Server release 5.3 (Tikanga)
Release: 5.3
Codename: Tikanga
查看内存信息 swap
[root@localhost /]#top
[root@localhost /]#free --显示物理内存 KB显示
[root@localhost /]#free -m --显示物理内存 MB显示
[root@localhost /]#free -g --显示物理内存 GB显示
[root@localhost /]#cat /proc/meminfo | more
[root@localhost /]#more /proc/meminfo | more
[root@localhost /]# grep MemTotal /proc/meminfo --显示物理内存
[root@localhost /]# grep SwapTotal /proc/meminfo --显示交换空间
[root@localhost /]# df -h /dev/shm --查看共享内存
[root@localhost /]# df -h /tmp --查看/tmp大小 150~200M
[root@localhost /]# dmidecode |grep -A16 "Memory Device$" --显示内存数量
查看CPU信息
[root@localhost /]# dmidecode -t 4
[root@localhost /]# cat /proc/cpuinfo
[root@localhost /]# more /proc/cpuinfo
[root@localhost /]# more /proc/cpuinfo | grep model --显示CPU数量和频率
[root@localhost /]# grep "model name" /proc/cpuinfo --显示CPU数量和频率
[root@localhost /]# dmidecode |grep -A42 "Processor"|more --显示cpu详细( -A42表示显示一下的行数 )
[root@localhost /]# cat /proc/cpuinfo | grep processor | wc -l --统计cpu数量
[root@localhost /]# more /proc/cpuinfo | grep processor | sort -u --排序cpu数量
[root@localhost /]# more /proc/cpuinfo | grep "physical" | sort -u --排序cpu数量
[root@localhost /]# more /proc/cpuinfo | grep "physical" | grep 0|wc -l --单个cpu核心数量
[root@localhost /]# more /proc/cpuinfo | head -10 --cpu的info,类型和主频、cache等
查看硬盘信息
[root@localhost /]# fdisk -l
[root@localhost /]# parted
[root@localhost /]# more /etc/scsi/scsi --scsi接口的情况下
制作 光盘文件 ISO
http://codingstandards.iteye.com/blog/1249480
光盘是易损存储介质,如果需要长期保存,最好将其转储成iso镜像文件,在Linux下我们可以这样做:
方法1:cp /dev/cdrom name.iso
方法2:dd if=/dev/cdrom of=name.iso
其中name.iso自由设定,在执行上述命令之前
1. 要将光盘放入光驱中(废话!)
2. 不需要mount,如果mount了也没有关系
挂载光盘文件 ISO
http://lindows.iteye.com/blog/249765
http://jsx112.iteye.com/blog/946193
[root@linuxb db2]# mount -t iso9660 db2v8201.iso /mnt/cdrom -o loop
挂载光驱:mount -t iso9660 /dev/sda5 /mnt/linuxtool -o iocharset=utf8
挂载普通盘:mount -t vfat /dev/sda5 /mnt/linuxtool -o iocharset=utf8
这样挂载的ntfs格式的分区,只有root能读取,如果需要让普通用户也能读取,需要再加上umask=022
挂载光驱:mount -t iso9660 /dev/sda5 /mnt/linuxtool -o iocharset=utf8,umask=022
挂载普通盘:mount -t vfat /dev/sda5 /mnt/linuxtool -o iocharset=utf8,umask=022
卸载:
umount /dev/hda1
有时候卸载分区时提示分区繁忙(device is busy),可以先用下面的命令看看哪个进程在使用此分区:
fuser -cu /dev/hda1
假如屏幕的输出为
/dev/hda1: 8463m(cck)
则可以用此命令看这个进程对应的程序名字:
ps 8463
然后可以用此命令结束此进程:
kill -9 8463 这样就可以正常卸载分区了
自动挂载:让Linux系统启动时自动挂载windows分区,可以把上述的命令写入 /etc/fstab 文件,如:
/dev/hda9 / ext3 defaults 0 1
/dev/hda13 none swap sw 0 0
/dev/hdc /media/cdrom iso9660 ro,user,noauto 0 0
/dev/fd0 /media/floppy auto rw,user,noauto 0 0
/dev/hda10 /mnt/debian ext3 defaults 0 0
/dev/hda1 /mnt/C ntfs utf8,umask=022 0 0
/dev/hda5 /mnt/D vfat utf8,umask=0 0 0
查看服务列表
[root@localhost /]# chkconfig --list
[root@localhost /]# ntsysv --level 运行级别数
[root@localhost /]# setup
查询系统支持字符集 / 查询系统语言
[root@localhost /]# locale -a
修改系统当前字符集 / 修改系统语言
[root@localhost /]# export LANG=zh_CN.UTF-8
或
[root@localhost /]# vi /etc/sysconfig/i18n
LANG= zh_CN.UTF-8
#add new LANG here
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="lat0-sun16"
或
[root@localhost /]# cp /etc/sysconfig/i18n $HOME/.i18n
修改 $HOME/.i18n 文件,如
[root@localhost /]#vi $HOME/.i18n
添加内容:
LANG="en_US" # xwindow会显示英文界面
LANG="zh_CN.GB18030" # xwindow会显示中文界面
# 这样就可以改变个人的界面语言,而不影响别的用户。
显示系统支持字符集 / 显示系统语言
[root@localhost /]# echo $LANG
或
[root@localhost /]# export | less
# Windows 显示所有系统变量
C:\Documents and Settings\Lindows>set | more
# Windows 显示JAVA开头的变量
C:\Documents and Settings\Lindows>set java
# RedHat 设置环境变量
bash shell 写法:export JAVA_HOME=/home/lindows/jdk1.6
tcsh shell 写法:setenv JAVA_HOME /home/lindows/jdk1.6
# RedHat 删除环境变量 / 清除环境变量
[root@localhost /]# unset $变量名
一、注销,关机,重启
http://www.blogjava.net/loocky/archive/2007/07/17/130807.html
注销系统的logout命令
1,Logout 注销是登陆的相对操作,登陆系统后,若要离开系统,用户只要直接下达logout命令即可:
[root@localhost root]#logout
Red Hat Linuxrelease 9(Shike)
Kernel 2.4.20.8 on an i686
Login: ← 回到登陆的画面
2,关机或重新启动的shutdown命令
Shutdown命令可以关闭所有程序,依照用户的需要,重新启动或关机。
参数说明如下:
立即关机:-h 参数让系统立即关机。范例如下:
[root@localhost root]#shutdown –h now ← 要求系统立即关机
指定关机时间:time参数可指定关机的时间;或设置多久时间后运行shutdown命令,范例如下:
[root@localhost root]#shutdown now ← 立刻关机
[root@localhost root]#shutdown +5 ← 5分钟后关机
[root@localhost root]#shutdown 10:30 ← 在10:30时关机
关机后自动重启:-r 参数设置关机后重新启动。范例如下:
[root@localhost root]#shutdown -r now ← 立刻关闭系统并重启
[root@localhost root]#shutdown -r 23:59 ← 指定在23:59时重启动
3,重新启动计算机的reboot命令
顾名思义,reboot命令是用来重新启动系统的。常用的参数如下:
-f 参数:不依正常的程序运行关机,直接关闭系统并重新启动计算机。
-I 参数:在在重新启动之前关闭所有网络接口。
虽然reboot命令有个参数可以使用,但是一般只需要单独运行reboot命令就可以了
华硕p5q-em不能进入centos 5.3的问题
http://hi.baidu.com/kson34/blog/item/7d5f6919d20c5276dab4bd54.html
启动RHEL5或CentOS时,出现以下错误提示:
ACPI: bus type pci registered
PCI: BIOS Bug: MCFG area at f0000000 is not E820-reserved <--
PCI: Not using MMCONFIG.
解决方法: 直接在内核后面加上:pci=nommconf
kernel /boot/vmlinuz-2.6.18-164.11.1.el5PAE ro root=LABEL=/1 rhgb quiet pci=nommconf
LINUX软件安装指南→tar.gz、rpm和bin格式!!!!!
http://www.linuxsir.org/bbs/showthread.php?t=217065
1、tar.gz安装,卸载
最常用的安装方式就是1>解压tar zxvf file.tar.gz 2>进入刚解开的目录 运行./Configure 配置相关编译配置文件;3>make;make install,这就完成了此类软件的安装。当然,肯定不会所有此格式的软件包都要这样装,最可靠的还是看看目录中的readme或是install文 件, 里面一般都会说清楚软件的安装方法。
有关它的删除可能就有些麻烦了, 有些软件在make install后, 会把执行文件或是库文件放到系统文件夹中,如果软件提供相应的uninstall命令就好, 如果不提供, 可能就得一个一个文件慢慢删了,不过也有相关SHELL命令组合可以记住它倒底放了哪些东西在哪里, 且应该可以用SHELL命令组合直接删掉那些文件,可怜我不会,还希望哪位大侠提供一下。当然, 也有不在系统文件中放东西的软件包, 那样就直接删掉那个被解开的文件夹应该就行了,
2、rpm的安装,卸载
http://hi.baidu.com/cxyking/blog/item/de0dfe0f1c073ceaaa6457c2.html
rpm包卸载前检测该包的依赖关系
rpm -ev --test mysql-5.0.45-7.el5
rpm 卸载mysql错误
http://bugs.mysql.com/bug.php?id=37678
http://opensource.csdn.net/discuss/thread/128
http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/5/html-single/Release_Notes/
[root@localhost /]# rpm -e mysql
error: Failed dependencies:
libmysqlclient.so.15 is needed by (installed) dovecot-1.0.7-2.el5.i386
libmysqlclient.so.15(libmysqlclient_15) is needed by (installed) dovecot-1.0.7-2.el5.i386
查看dovecot包依赖关系
rpm -ev --test dovecot-1.0.7-2.el5.i386
卸载dovecot包
yum -y remove dovecot-1.0.7-2.el5.i386
查看mysql和dovecot包依赖关系,并卸载mysql
rpm -e mysql
rpm包卸载
rpm -e mysql-5.0.45-7.el5 # --nodep忽略依赖性安装 --replace重新安装
rpm包安装
rpm -ivh file.rpm #参数i 安装, v 校验,h 进度条
rpm包升级
rpm -Uvh file.rpm #参数U是升级安装,也可以用它进行安装
yum命令安装和卸载RPM包
http://hukunlin.blog.51cto.com/545402/144071
3、bin安装,卸载
bin包是编译好的二进制可执行文件,在用chmod 755可执行权限之后, 可以直接运行
./file.bin就能安装, 至于卸载,我还不是很清楚, 好象也是删除它所产生的目录就行了 。
3、bundle安装,卸载
bundle包是编译好的二进制可执行文件,在用chmod 755可执行权限之后, 可以直接运行
./file.bundle就能安装, 至于卸载,我还不是很清楚, 好象也是删除它所产生的目录就行了 。
Yum Server - configure on RHEL 5
http://linux.ittoolbox.com/groups/technical-functional/linuxadmin-l/yum-server-configure-on-rhel-5-4039273
Update RHEL5 using YUM package via CentOS online sources
http://it.megocollector.com/?p=1313
RHEL5 YUM的使用
http://blog.csdn.net/gausing/article/details/3706109
Linux-yum安装整个过程讲解(图)
http://www.bycnboy.com/article.asp?id=1087
RHEL5.X配置本地yum (图文示例)
http://blog.163.com/longsu2010@yeah/blog/static/173612348201161112730235/
配置Redhat Enterprise Linux 5.3使用CentOS的更新源
http://www.iteye.com/topic/690481
另外,如果服务器需要通过代理上网,则需要设置一下代理服务器才能进行联网更新:
在 /etc/yum.conf文件加入下面一行内容,指定一下代理服务器参数:
[root@localhost lindows]# Set http proxy
proxy=http://192.168.1.100:8000
RHEL5.X配置本地yum
"C:\Program Files\NetSarang\Xmanager Enterprise 3\Xbrowser.exe"
-- 192.168.100.149
-- Application -- Add/Remove Software -- Pakage Manager -- Edit -- Respositories Manager -- add
-- Add New Redpository
[root@b2cbbstest yum.repos.d]# more /etc/yum.repos.d/lindowsname.repo
[lindowsname] enabled = 1 name = lindowsdesc baseurl = http://192.168.134.16/pub/rhel5/Server/ gpgcheck = 0
[root@b2cbbstest soft]# yum clean all
Loaded plugins: rhnplugin, security
Repository base is listed more than once in the configuration
Existing lock /var/run/yum.pid: another copy is running as pid 4822.
Another app is currently holding the yum lock; waiting for it to exit...
[root@b2cbbstest soft]# yum clean all
Loaded plugins: rhnplugin, security
Repository base is listed more than once in the configuration
Cleaning up Everything
VirtualBox下RedHat 5.4 使用DVD光盘作为yum源 / vmware下配置CDROM的yum源 , 镜像文件:rhel-server-5.5-x86_64-dvd.iso
http://blog.csdn.net/biplusplus/article/details/7080749
1.挂载rhel-server-5.5-x86_64-dvd.iso
[root@localhost media]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/VolGroup00-LogVol00
16G 4.3G 11G 30% /
/dev/sda1 99M 14M 81M 15% /boot
tmpfs 1.8G 0 1.8G 0% /dev/shm
none 1.8G 104K 1.8G 1% /var/lib/xenstored
/dev/hdc 3.5G 3.5G 0 100
2.配置cdrom的yum源
[root@localhost Server]# cat > /etc/yum.repos.d/cdrom.repo<<EOF
> [cdrom]
> name=cdrom Server
> baseurl=file:///media/RHEL_5.5\ x86_64\ DVD/Server
> enable = 1
> gpgcheck = 0
> EOF
[root@localhost Server]# yum clean all
Loaded plugins: rhnplugin, security
Options Error: Error parsing 'file:///media/RHEL_5.5\\ x86_64\\ DVD/Server': URL must be http, ftp, file or https not ""
注:由于文件路径中有空格,所以需要将其转义成%20
[root@localhost Server]# cat > /etc/yum.repos.d/cdrom.repo<<EOF
> [cdrom]
> name=cdrom Server
> baseurl=file:///media/RHEL_5.5%20x86_64%20DVD/Server
> enable = 1
> gpgcheck = 0
> EOF
[root@localhost yum.repos.d]# yum clean all
Loaded plugins: rhnplugin, security
Cleaning up Everything
查看Windows所有用户列表
C:\Documents and Settings\Lindows>net user
查看redhat所有用户列表
[lindows@localhost ~]$ cat /etc/passwd
--这种su不带参数方式进入root用户时输入某些命令不可用。
[lindows@localhost ~]$ su
口令:
[root@localhost lindows]# ifconfig
bash: ifconfig: command not found
或
[lindows@localhost ~]$ su
或
[lindows@localhost ~]$ su -
或
[lindows@localhost ~]$ su - root
#注:查看用户的UID和GID信息 ,主要是看是否切换过来了
[root@localhost ~]# id
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel) context=root:system_r:unconfined_t
http://renren4.iteye.com/blog/277916
RedHat 网络管理 RedHat Enterprise 基本网络配置
http://www.5dlinux.com/article/7/2009/linux_35279.html
http://xiejianying.blog.51cto.com/837040/262341
怎样修改Linux的hostname
http://liuleijsjx.iteye.com/blog/427900
http://hi.chinaunix.net/?uid-13066923-action-viewspace-itemid-30947
http://blog.infernor.net/how-to-change-hostname /
http://wenku.baidu.com/view/ff6cb984d4d8d15abe234e77.html###
Redhat Linux 修改主机名(HOSTNAME)
http://www.hackbase.com/tech/2011-09-15/65257.html
看机器名:uname -a
修改机器名:
redhat中修改主机名
第一步:#hostname oratest
第二步:修改/etc/sysconfig/network中的hostname
第三步:修改/etc/hosts文件
suse linux:
修改/etc/HOSTNAME文件,在此文件中保存主机名,例如:homer100
然后运行命令设置主机名# /etc/rc.d/boot.localnet start
#查看当前主机的主机名
[root@B2Cmonitor sysconfig]# hostname
#临时修改当前主机名
[root@B2Cmonitor sysconfig]# hostname NEWHOSTNAME
#通过配置文件修改主机名
[root@B2Cmonitor sysconfig]# vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=NEWHOSTNAME
#通过配置文件修改主机名
[root@B2Cmonitor sysconfig]# vi /etc/hosts
1.修改运行时Linux系统的hostname ,即不需要重启系统
2.永久更改Linux的hostname
3.hostname 与/etc/hosts的关系
4.hostname 带选项查询
hosts文件格式是一行一条记录,分别是IP地址 hostname aliases,三者用空白字符分隔,aliases可选.
http://bbs.chinaunix.net/viewthread.php?tid=16141
修改HOSTNAME一行为"HOSTNAME=主机名"(没有这行?那就添加这一行吧)
[root@B2Cmonitor sysconfig]# vim /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=B2Cmonitor
GATEWAY=192.168.100.254
[root@B2Cmonitor sysconfig]#hostname B2Cmonitor
一般还要修改/etc/hosts文件 中的主机名。这样,无论你是否重启,主机名都修改成功。
[root@B2Cmonitor sysconfig]# more /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 B2Cmonitor localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
192.168.100.149 b2cmonitor b2cmonitor.cnsuning.com
[root@B2Cmonitor sysconfig]# ping b2cmonitor
PING B2Cmonitor (127.0.0.1) 56(84) bytes of data.
64 bytes from B2Cmonitor (127.0.0.1): icmp_seq=1 ttl=64 time=0.022 ms
64 bytes from B2Cmonitor (127.0.0.1): icmp_seq=2 ttl=64 time=0.028 ms
-- RedHat 查看网卡 //显示指定接口的信息
[root@localhost ~]#ifconfig eth0
-- RedHat 查看网卡 //显示指定接口的信息(无论是否活跃)
[root@localhost ~]#ifconfig -a
-- RedHat 查看网卡是否有网线物理连接
[root@localhost ~]#/sbin/mii-tool
eth0: negotiated 100baseTx-FD flow-control, link ok
-- RedHat 禁用网卡
[root@localhost ~]#ifconfig eth0 down
-- RedHat 启用网卡
[root@localhost ~]#ifconfig eth0 up
-- RedHat 重启 网卡
[root@localhost ~]# service network restart
-- 查看网卡路由和网关
http://jythoner.iteye.com/blog/312588
[root@teps ~]# route -n
[lindows@localhost ~]$ cat /etc/sysconfig/network-scripts/ifcfg-eth0
[root@lindows112 ~]# /sbin/route
或
[root@lindows112 ~]# /sbin/route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
172.17.25.235 172.17.25.254 255.255.255.255 UGH 0 0 0 eth0
172.17.25.0 * 255.255.255.0 U 0 0 0 eth0
169.254.0.0 * 255.255.0.0 U 0 0 0 eth0
default 172.17.25.253 0.0.0.0 UG 0 0 0 eth0
-- 临时添加默认网关
[root@lindows112 ~]# route add default gw 172.17.25.253
-- 临时删除默认网关
[root@lindows112 ~]# route del default gw 172.17.25.253
-- 临时添加静态路由
[root@lindows112 ~]# route del default gw 172.17.25.253
-- 添加静态路由表
[root@lindows112 ~]# route add -net 192.168.1.0/24 gw 172.17.25.254
或
http://sobar.soso.com/tie/18672432.html
[root@lindows112 network-scripts]# ./route-eth0 GATEWAY0=10.10.0.1 NETMASK0=255.0.0.0 ADDRESS0=10.0.0.0 GATEWAY1=10.2.0.1 NETMASK1=255.255.0.0 ADDRESS1=192.168.0.0
-- 查看静态路由表
[root@lindows112 ~]# cat /etc/sysconfig/network-scripts/route-eth0
RedHat 时区管理
查看/修改Linux时区和时间
http://pterodactyl.iteye.com/blog/399012
# 修改linux日期
2. [root@localhost ~]# date -s 03/04/2010
# 修改linux时间
4. [root@localhost ~]# date -s 21:55:00
RedHat 用户管理
-- 使用scp远程拷贝文件/文件夹
注意:使用这个命令的前提条件是需要开通ssh服务。
拷贝文件:
scp 文件或文件夹 需要拷贝至目标机器IP:需要保持目录
scp 本地用户名 @IP 地址 : 文件名 1 远程用户名 @IP 地址 : 文件名 2
scp -r [email protected]:/root/tapserver_c02/ODP.zip ./
例题:scp /iso/install.tar 10.128.100.116:/home/
拷贝文件夹:
scp -r db/ 10.128.100.117:/temptest/
用户设置Linux SSH登录前后的欢迎信息
http://www.blogjava.net/baizhihui19870626/articles/372694.html
Linux可以设置登录前后的欢迎信息,虽然没什么实际用处,纯粹为了好玩,体现一下自己系统的一点个性!
在登录系统输入用户名之前,可以看到上方有WELCOME......之类的信息,这里会显示LINUX发行版本名称,内核版本号,日期,机器信息等等信息,要设置的话,首先打开/etc/issue文件,可以看到里面是这样一段"Welcome to <LINUX 发行版本名称>-kernel 后接各项参数\"
后接的参数的各项说明:
\r 显示KERNEL内核版本号;
\l 显示虚拟控制台号;
\d 显示当前日期;
\n 显示主机名;
\m 显示机器类型,即CPU架构,如i386等;
了解了参数的意义,就来修改,将上面一段欢迎信息修改如下,可以显示所有必要的信息:
Welcome to <LINUX 发行版本名称>-kernel \r (\l) \d \n \m.
要看效果,EXIT退出登录后看看!
还有/etc/motd这个文件,可以在里面加入自己喜欢的任何欢迎信息,这段信息将会在登录成功后显示!
Connecting to 10.19.95.19:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]
Last login: Fri Mar 21 15:50:26 2014 from 10.19.115.178
--------------------------------
|欢迎登录性能测试组专用五星神机|
| ★★★★★ |
--------------------------------
# find / -type f -print | xargs grep "device"//用grep命令在所有的普通文件中搜索device这个词
http://lindows.iteye.com/admin/blogs/1834884
[root@Loadrunner19 ~]# find /etc -type f -print | xargs grep "五星"
/etc/motd:|欢迎登录性能测试组专用五星神机|
Linux 用户管理一
http://13233.blog.51cto.com/3233/82555
Linux 用户管理二
http://13233.blog.51cto.com/3233/82553
Linux 用户管理三
http://13233.blog.51cto.com/3233/82552
Linux 用户管理四
http://13233.blog.51cto.com/3233/82550
Linux 用户管理五
http://13233.blog.51cto.com/3233/82549
http://topic.csdn.net/t/20020816/14/946227.html
http://chenjia66804610.iteye.com/blog/437469
Linux 用户管理 如何在linux下踢人 / Linux 踢用户(pkill)
http://www.yanghengfei.com/archives/223/
http://icarusli.iteye.com/blog/645880
[root@localhost ~]# pkill -kill -t pts/1
[root@localhost ~]# pkill -kill -t pts/2
Linux 用户(user)和用户组(group)管理概述
http://fedora.linuxsir.org/main/?q=node/91
用户(User)和用户组(Group)配置文件详解
http://fedora.linuxsir.org/main/?q=node/98
Linux 用户(User)查询篇
http://fedora.linuxsir.org/main/?q=node/105
Linux 用户管理工具介绍
http://fedora.linuxsir.org/main/?q=node/106
Linux 系统中的超级权限的控制
http://fedora.linuxsir.org/main/?q=node/104
在Linux系统中,批量添加用户的操作流程
http://fedora.linuxsir.org/main/?q=node/109
【求助】linux下怎么锁屏?
https://bbs.et8.net/bbs/showthread.php?t=905240
gnome kernel: ctrl+alt+l (快捷键可以在控制中心更改)
kde kernel: ctrl+alt+l (kde里面好像默认没开启)
Fedora 的 KDE 里是缺省设置。
KDE 菜单 -> 控制中心 -> 区域和辅助功能 -> 键盘快捷键 -> 全局快捷键 -> 桌面 -> 锁住会话
KMenu -> Control Center-> Regional & Accessibility -> Keyboard Shortcuts -> ...
安装xscreensaver包,然后可以用xscreensaver-command -lock 激活屏保。
root用户默认好像不能锁屏,装个xlock就行
-- Linux 批量新建用户
http://daliang1215.iteye.com/blog/816950
文章來源於 sina 煙鬼博客 寫於 2009-05-02 09:59
OS:REDHAT linux AS 5
1. 首先在/etc/passwd 文件中,查看当前用户,以免一会新建用户跟现有用户重名,从而导致失败,
[root@localhost ~]vim /etc/passwd
2.新建文件stu.txt里面内容如下,(注意要和/etc/passwd下的格式一样,否则会出现失败的提示)
/etc/passwd 文件是一个纯文本文件,每行采用了相同的格式:
name:password:uid:gid:comment:home:shell
说明
name 用户登录名
password用户口令。
此域中的口令是加密的。当用户登录系统时,系统对输入的口令采取相同的算法,与此域中的内容进行比较。如果此域为空,表明该用户登录时不需要口令。
uid 指定用户的 UID。
用户登录进系统后,系统通过该值,而不是用户名来识别用户。
gid
GID。如果系统要对相同的一群人赋予相同的权利,则使用该值。
comment
用来保存用户的真实姓名和个人细节。
home
指定用户的主目录的绝对路径。
shell
如果用户登录成功,则要执行的命令的绝对路径放在这一区域中。它可以是任何命令。
3.执行命令[root@localhost ~]pwunconv
这样使原来加密的 /etc/passwd 的文件以明码的形式显示。
4.批量添加新用户
[root@localhost ~]newusers stu.txt
这里不用重定向也可以,如果用的话是:newusers < stu.txt
6.为新建批量用户设置密码,文件为pass
7.
设置密码:
[root@localhost ~]chpasswd < pass
这样就把密码都设置给了新用户
8.为所有用户全部加密
[root@localhost ~]pwconv
9.再次查看/etc/passwd文件
11.批量建用户成功!
-- Linux 批量删除用户
插曲:Linux 批量删除类似文件 / linux 批量删除文件
http://8366.iteye.com/picture/51688
[root@STHV6401 testWIEjb]# find . -name "orbtrc.*" | xargs rm -rf "orbtrc.*"
[root@localhost /] vi userdel.sh
#内容如下:
userdel -r test1
userdel -r test2
userdel -r test3
[root@localhost /] sh userdel.sh
RedHat Linux release 9 (Shrike)
-- 改变用户所属组 /
-- http://www.iteye.com/topic/423753
[root@localhost ~]# usermod -g testgroup testuser //改变testuser用户组为testgroup
[root@localhost ~]# ls /usr/sbin | grep user
adduser
lnewusers
luseradd
luserdel
lusermod
newusers
sasldblistusers2
useradd
userdel
userhelper
userisdnctl
usermod
usernetctl
#查看当前登录用户
[root@localhost /]# whoami
[root@localhost /]# who
[root@localhost /]# w
或
[root@localhost /]# logname
# 显示user前n次登陆情况
[root@localhost /]# logname
#查看历史登录用户
[root@localhost /]#last
#查看
http://linux.chinaunix.net/bbs/viewthread.php?tid=271500
useradd和adduser通用,一个是另一个的符号链接。但只有root用户可以使用它个命令。
http://fedora.linuxsir.org/main/?q=node/91
[lindows@localhost lindows]$su //进入超级用户root
[root@localhost lindows]#exit //推出超级用户root
//以su方法进入root用户进行:用户“增删改”及用户组“增删改” 是无效的。
//须以 注销 直接用 root 账户登录 进行 用户及其组 赋值 "增删改"等权限。
[root@localhost root]#userdel test //删除test用户
[root@localhost root]#userdel -r test //删除test用户及主目录
[root@localhost root]#useradd test //添加test用户
[root@localhost root]#passwd test //添加test用户密码
[root@localhost root]#groupdel testgroup //删除testgroup用户组
[root@localhost root]#groupdel -d test testgroup //把test用户从testgroup组中剔除
[root@localhost root]#groupadd -a test testgroup //把test用户从testgroup组中加入
[root@localhost root]#usermod -g gourp1 test //改test用户从goup1中加入
[root@localhost root]#cat /etc/passwd //查看用户列表
RedHat 邮件服务器 devecot
RHEL5默认使用Dovecot做POP3(S)/IMAP(S)服务器
http://www.itus.cn/network/12/server-56507.shtml
《RHCE Study Guide,5th Edition》第12章译文
http://blog.chinaunix.net/u2/79216/showart_1190398.html
http://blogimg.chinaunix.net/blog/upfile2/081011010034.zip
rrdtool+cacti@lamp笔记整理
http://sinoethic.org/don/2009/03/rrdtoolcactilamp/?
Xmanger连接RedHat 启动不了图形界面
redhat图形界面无法启动故障处理
http://blog.chinaunix.net/u/12442/showart_476366.html
RHEL5配置gdm让远程机器登录X window
http://blog.chinaunix.net/u/3177 4/showart_1960590.html
RedHat Linux AS4远程控制管理配置的三种方式
http://daweiangel.iteye.com/blog/508781
redhat xmanager 图形界面解决
解决1:
[root@b2ctestdb ~]# /usr/sbin/gdm --version
GDM 2.16.0
[root@b2ctestdb ~]# startx
xauth: creating new authority file /root/.serverauth.14108
Fatal server error:
Server is already active for display 0
If this server is no longer running, remove /tmp/.X0-lock
and start again.
Xlib: connection to ":0.0" refused by server
Xlib: Invalid MIT-MAGIC-COOKIE-1 key
giving up.
xinit: unable to connect to X server
xinit: No such process (errno 3): Server error.
[root@b2ctestdb ~]# ps -ef | grep gdm
root 4195 1 0 00:06 ? 00:00:00 /usr/sbin/gdm-binary restart
root 4196 4195 0 00:06 ? 00:00:00 /usr/sbin/gdm-binary restart
root 4198 1 0 00:06 ? 00:00:00 /usr/libexec/gdm-rh-security-token-helper
root 4201 4196 7 00:06 tty7 00:00:00 /usr/bin/Xorg :0 -br -audit 0 -auth /var/gdm/:0.Xauth -nolisten tcp vt7
gdm 4222 4196 13 00:06 ? 00:00:00 /usr/libexec/gdmgreeter
root 4224 4140 0 00:06 pts/1 00:00:00 grep gdm
[root@b2ctestdb ~]# killall gdm
[root@b2ctestdb ~]# pkill gdm
[root@b2ctestdb ~]# /usr/sbin/gdm restart
[root@b2ctestdb ~]# netstat -an | grep 177
udp 0 0 0.0.0.0:177 0.0.0.0:*
解决2
[root@teps ~]cp /usr/share/gdm/defaults.conf /usr/share/gdm/defaults.conf.bak20100317
[root@teps ~]vi /usr/share/gdm/defaults.conf
修改如下内容
[xdmcp]
263 Enable=true 或 Enable=1
279 DisplaysPerHost=10
284 Port=177
[security]
214 AllowRemoteRoot=true
# 最后关闭防火墙
[root@teps ~] service iptables stop
[root@teps ~] service iptables status
Firewall is stopped.
ok
RedHat 安全管理
http://lindows.iteye.com/admin/blogs/663049
-- 查看环境变量
[root@b2cbbs ~]# env
10.19.95.19
[root@Loadrunner19 wyg]# ls -l /root/wyg/*
-rwxr-xr-x 1 root root 236 Jun 11 2012 /root/wyg/CheckPort.sh
-rwxr-xr-x 1 root root 150 Jun 11 2012 /root/wyg/CheckTCPPortStat.sh
-rw-r--r-- 1 root root 1999 Jun 7 2012 /root/wyg/function.inc
-rwxr-xr-x 1 root root 237 Jun 11 2012 /root/wyg/GetProcCpu.sh
-rwxr-xr-x 1 root root 450 Jun 11 2012 /root/wyg/GetProcDes.sh
-rwxr-xr-x 1 root root 458 Jun 11 2012 /root/wyg/GetProcMem.sh
-rwxr-xr-x 1 root root 282 Jun 11 2012 /root/wyg/GetProcPid.sh
-rwxr-xr-x 1 root root 2797 Jun 11 2012 /root/wyg/MonSystem.sh
-rwxr-xr-x 1 root root 227324 Jan 3 2014 /root/wyg/RPSPREDB.snapshot_sql.2014-01-03-16.17.03
-rwxr-xr-x 1 root root 88 Jan 14 2014 /root/wyg/testExit.sh
-rwxr-xr-x 1 root root 642 Jan 13 2014 /root/wyg/testMem.sh
-rwxr-xr-x 1 root root 7887 Oct 29 2013 /root/wyg/transfer.pl
-rw-r--r-- 1 root root 17381 Jan 3 2014 /root/wyg/transfer.txt
/root/wyg/splunk:
total 4
drwx------ 3 root root 4096 Feb 24 2014 splunk
[root@Loadrunner19 wyg]# more CheckPort.sh
#!/bin/bash . ./function.inc if [ $# -ne 1 ] then { echo "Need input the port" exit 0; } fi isListen=`Listening $1` if [ $isListen -eq 1 ] then { echo "The port is listening" } else { echo "The port is not listening" } fi[root@Loadrunner19 wyg]# more CheckTCPPortStat.sh
#!/bin/bash . ./function.inc if [ $# -ne 1 ] then { echo "Need input the port" exit 0; } fi output=`Chech_Tcp_Server_Port_Stat $1` echo $output[root@Loadrunner19 wyg]# more GetProcCpu.sh
#!/bin/bash . ./function.inc if [ $# -ne 2 ] then { echo "Need the user name and process parameters" exit 0; } fi PID=`GetPID $1 $2` if [ "-$PID" == "-" ] then { echo "The process is not found" } else { CheckCpu $PID } fi
[root@Loadrunner19 wyg]# more GetProcDes.sh
#!/bin/bash . ./function.inc if [ $# -ne 2 ] then { echo "Need the user name and process parameters" exit 0; } fi PID=`GetPID $1 $2` if [ "-$PID" == "-" ] then { echo "The process is not found" } else { des=`GetDes $PID` echo "The number of des is $des" if [ $des -gt 900 ] then { echo "The number of des is larger than 900" } else { echo "The number of des sis normal" } fi } fi
[root@Loadrunner19 wyg]# more GetProcMem.sh
#!/bin/bash . ./function.inc if [ $# -ne 2 ] then { echo "Need the user name and process parameters" exit 0; } fi PID=`GetPID $1 $2` if [ "-$PID" == "-" ] then { echo "The process is not found" } else { mem=`GetMem $PID` echo "The usage of memory is $mem M" if [ $mem -gt 1600 ] then { echo "The usage of memory is larger than 1.6G" } else { echo "The usage of memory is normal" } fi } fi
[root@Loadrunner19 wyg]# more GetProcPid.sh
#!/bin/bash . ./function.inc if [ $# -ne 2 ] then { echo "Need the user name and process parameters" exit 0; } fi PID=`GetPID $1 $2` if [ "-$PID" == "-" ] then { echo "The process does not exist." } else { echo "The process exist." echo "It's id is $PID" } fi
[root@Loadrunner19 wyg]# more MonSystem.sh
#!/bin/bash . ./function.inc #Whether to monitor the disk space. 0: no,1: yes IS_MO_SYS_SPACE=1 #Whether to detect the system CPU.0: no,1: yes IS_MO_SYS_CPU=1 #Interval for monitoring the system: second S_MO_CHK_INTERVAL=60 #Number of times for continuously monitoring the system. S_MO_CHK_TIMES=3 #Maximum Usage of the system space MAX_SYS_SPACE_USE=90 #Maximum CPU usage of the system. MAX_SYS_CPU_USE=70 Host_Name=`hostname` CheckDiskDir[0]="/dev" CheckDiskDir[1]="/boot" while true do { if [[ $IS_MO_SYS_SPACE -eq 1 ]] then { C=0 for CheckDisk in ${CheckDiskDir[@]} do { CheckTime=$S_MO_CHK_TIMES while (( CheckTime > 0 )) do { DiskSpaceNum=`GetDiskSpc ${CheckDiskDir[$C]}` if [[ "-$DiskSpaceNum" = "-" ]] then { echo "Diretory(${CheckDiskDir[$C]}) is not exist." break } fi if [ $DiskSpaceNum -le $MAX_SYS_SPACE_USE ] then { echo "Current DiskSpace[${CheckDiskDir[$C]}] is $DiskSpaceNum%." break } fi echo "Current DiskSpace[${CheckDiskDir[$C]}] $DiskSpaceNum% is more than $MAX_SYS_SPACE_USE%." (( CheckTime = CheckTime - 1 )) if [ $CheckTime -eq 0 ] then { echo "continue check $S_MO_CHK_TIMES times but DiskSpace[${CheckDiskDir[$C]}][$DiskSpaceNum%] is more than $MAX_SYS_SPACE_USE% yet." echo "Send Alarm about the DIsk Space" break } fi sleep $S_MO_CHK_INTERVAL } done ((C+=1)) continue; } done } fi if [[ $IS_MO_SYS_CPU -eq 1 ]] then { CheckTime=$S_MO_CHK_TIMES while (( CheckTime > 0 )) do { CpuNum=`GetSysCPU` if [ $CpuNum -le $MAX_SYS_CPU_USE ] then { echo "Current CPU $CpuNum%." break } fi echo "SYSCPU:Current CPU $CpuNum% is more than $MAX_SYS_CPU_USE%." (( CheckTime = CheckTime - 1 )) if [ $CheckTime -eq 0 ] then { echo "continue check $S_MO_CHK_TIMES times but SYSCPU[$CpuNum%] is more than $MAX_SYS_CPU_USE% yet." echo "Send Alarm about the system CPU" break } fi sleep $S_MO_CHK_INTERVAL } done } fi sleep $S_MO_CHK_INTERVAL } done
[root@Loadrunner19 wyg]# more testExit.sh
#!/bin/bash echo "test 1" if (1<2) then { echo "test 2" exit 1 } fi echo "test 3"
[root@Loadrunner19 wyg]# more testMem.sh
#! /bin/bash echo -n "PidName " > /root/script/pid.f echo "MeMery " >> /root/script/pid.f PIDPATH=/proc/ TOTLE=0 cd $PIDPATH DOC=`ls` for DOCNAME in $DOC do if [ -d $DOCNAME ]; then cd $DOCNAME if [ -f status ];then MEMERY=`grep VmRSS status | awk -F':' '{print $2}' | awk '{print $1}'` PIDNAME=`grep Name status | awk -F':' '{print $2}'` if [ $MEMERY ]; then echo -n $PIDNAME >> /root/script/pid.f echo -n " " >> /root/script/pid.f echo $MEMERY >> /root/script/pid.f TOTLE=`expr $TOTLE + $MEMERY` cd .. else cd .. fi else cd .. fi fi done TOTLE=`expr $TOTLE / 1024` echo "TOTLE USERD: $TOTLE MB" >> /root/script/pid.f cat /root/script/pid.f
[root@Loadrunner19 wyg]# more transfer.pl
#Transfer snapshot.txt to stmt.txt use strict; use IO::File; use Time::Local; #Open the snapshot.txt unless (open(FILE1,$ARGV[0])) { die ("Please enter the snapshot.txt\n"); } my $date; my $line; my @array; my $NumberExecutions; my $NumberCompilations; my $WorstPreparation; my $BestPreparation; my $TotalExecutionTime; my $InternalRowsDeleted; my $InternalRowsInserted; my $InternalRowsupdated; my $StatementText; my $Statementsorts; my $Statementsortoverflows; my $Totalsorttime; my $Rowsread; my $AverageRowRead; my $Rowswritten; my $AverageRowSelect; my $BPDLR; my $BPDPR; my $BPILR; my $BPIPR; my $BPTDLR; my $BPTDPR; my $BPTILR; my $BPTIPR; my $BPRatio; my $flag = 0; my $position; my $AverageTime; my $TUsrTm; my $TSysTm; #Show start time. $date=localtime(time); print "Start from ".$date; #Write the tag to the txt. open (OUTFILE, ">transfer.txt"); print OUTFILE (" NumEx;NumComp;WorstP;BestP;IntRDel;IntRIns;RowsRead;IntRUpd;RowsWri;Sorts;SortOflo;TSortTm;BPDLR;BPDPR;BPTDLR;BPTDPR;BPILR;BPIPR;BPTILR;BPTIPR;TELapTm;TUsrTm;TSysTm;AvgElap;AverageRowRead;AverageRowSelect;BPRatio;Text;\n"); #Close the file handle. close(OUTFILE); print("\nBegin to transfer,please wait!\n"); #Read the data from snapshot.txt. while($line = <FILE1>) { if($line=~/Number\sof\sexecutions/){ $NumberExecutions=$line; $position=index($NumberExecutions,"="); $NumberExecutions=substr($NumberExecutions,$position+1,); if($NumberExecutions=~/\s0.*\s/){ $flag=1; $NumberExecutions=""; next; }else{ $flag=2; #print $NumberExecutions; } $NumberExecutions=~s/\s//g; } if($line=~/Number\sof\scompilations/ && $flag==2){ $NumberCompilations=$line; $position=index($NumberCompilations,"="); $NumberCompilations=substr($NumberCompilations,$position+1,); $NumberCompilations=~s/\s//g; #print $NumberCompilations; } if($line=~/Worst\spreparation\stime/ && $flag==2){ $WorstPreparation=$line; $position=index($WorstPreparation,"="); $WorstPreparation=substr($WorstPreparation,$position+1,); $WorstPreparation=~s/\s//g; #print $WorstPreparation; } if($line=~/Best\spreparation\stime/ && $flag==2){ $BestPreparation=$line; $position=index($BestPreparation,"="); $BestPreparation=substr($BestPreparation,$position+1,); $BestPreparation=~s/\s//g; #print $BestPreparation; } if($line=~/Internal\srows\sdelete/ && $flag==2){ $InternalRowsDeleted=$line; $position=index($InternalRowsDeleted,"="); $InternalRowsDeleted=substr($InternalRowsDeleted,$position+1,); $InternalRowsDeleted=~s/\s//g; #print $InternalRowsDeleted; } if($line=~/Internal\srows\supdated/ && $flag==2){ $InternalRowsupdated=$line; $position=index($InternalRowsupdated,"="); $InternalRowsupdated=substr($InternalRowsupdated,$position+1,); $InternalRowsupdated=~s/\s//g; #print $InternalRowsupdated; } if($line=~/Internal\srows\sinserted/ && $flag==2){ $InternalRowsInserted=$line; $position=index($InternalRowsInserted,"="); $InternalRowsInserted=substr($InternalRowsInserted,$position+1,); $InternalRowsInserted=~s/\s//g; #print $InternalRowsInserted; } if($line=~/Statement\ssorts/ && $flag==2){ $Statementsorts=$line; $position=index($Statementsorts,"="); $Statementsorts=substr($Statementsorts,$position+1,); $Statementsorts=~s/\s//g; #print $Statementsorts; } if($line=~/Statement\ssort\soverflows/ && $flag==2){ $Statementsortoverflows=$line; $position=index($Statementsortoverflows,"="); $Statementsortoverflows=substr($Statementsortoverflows,$position+1,); $Statementsortoverflows=~s/\s//g; #print $Statementsortoverflows; } if($line=~/Total\ssort\stime/ && $flag==2){ $Totalsorttime=$line; $position=index($Totalsorttime,"="); $Totalsorttime=substr($Totalsorttime,$position+1,); $Totalsorttime=~s/\s//g; #print $Totalsorttime; } if($line=~/Total\sexecution\stime/ && $flag==2){ $TotalExecutionTime=$line; $position=index($TotalExecutionTime,"="); $TotalExecutionTime=substr($TotalExecutionTime,$position+1,); $TotalExecutionTime=~s/\s//g; #print $TotalExecutionTime; } if($line=~/Rows\sread/ && $flag==2){ $Rowsread=$line; $position=index($Rowsread,"="); $Rowsread=substr($Rowsread,$position+1,); $Rowsread=~s/\s//g; #print $Rowsread; } if($line=~/Rows\swritten/ && $flag==2){ $Rowswritten=$line; $position=index($Rowswritten,"="); $Rowswritten=substr($Rowswritten,$position+1,); $Rowswritten=~s/\s//g; #print $Rowswritten; } if($line=~/Buffer\spool\sdata\slogical\sreads/ && $flag==2){ $BPDLR=$line; $position=index($BPDLR,"="); $BPDLR=substr($BPDLR,$position+1,); $BPDLR=~s/\s//g; #print $BPDLR; } if($line=~/Buffer\spool\stemporary\sdata\slogical\sreads/ && $flag==2){ $BPTDLR=$line; $position=index($BPTDLR,"="); $BPTDLR=substr($BPTDLR,$position+1,); $BPTDLR=~s/\s//g; #print $BPTDLR; } if($line=~/Buffer\spool\sdata\sphysical\sreads/ && $flag==2){ $BPDPR=$line; $position=index($BPDPR,"="); $BPDPR=substr($BPDPR,$position+1,); $BPDPR=~s/\s//g; #print $BPDPR; } if($line=~/Buffer\spool\stemporary\sdata\sphysical\sreads/ && $flag==2){ $BPTDPR=$line; $position=index($BPTDPR,"="); $BPTDPR=substr($BPTDPR,$position+1,); $BPTDPR=~s/\s//g; #print $BPTDPR; } if($line=~/Buffer\spool\sindex\slogical\sreads/ && $flag==2){ $BPILR=$line; $position=index($BPILR,"="); $BPILR=substr($BPILR,$position+1,); $BPILR=~s/\s//g; #print $BPILR; } if($line=~/Buffer\spool\stemporary\sindex\slogical\sreads/ && $flag==2){ $BPTILR=$line; $position=index($BPTILR,"="); $BPTILR=substr($BPTILR,$position+1,); $BPTILR=~s/\s//g; #print $BPTILR; } if($line=~/Buffer\spool\sindex\sphysical\sreads/ && $flag==2){ $BPIPR=$line; $position=index($BPIPR,"="); $BPIPR=substr($BPIPR,$position+1,); $BPIPR=~s/\s//g; #print $BPIPR; } if($line=~/Buffer\spool\stemporary\sindex\sphysical\sreads/ && $flag==2){ $BPTIPR=$line; $position=index($BPTIPR,"="); $BPTIPR=substr($BPTIPR,$position+1,); $BPTIPR=~s/\s//g; #print $BPTIPR; } if($line=~/Total\suser\scpu\stime/ && $flag==2){ $TUsrTm=$line; $position=index($TUsrTm,"="); $TUsrTm=substr($TUsrTm,$position+1,); $TUsrTm=~s/\s//g; #print $TUsrTm; } if($line=~/Total\ssystem\scpu\stime/ && $flag==2){ $TSysTm=$line; $position=index($TSysTm,"="); $TSysTm=substr($TSysTm,$position+1,); $TSysTm=~s/\s//g; #print $TSysTm; } if($line=~/Statement\stext/ && $flag==2){ $StatementText=$line; $position=index($StatementText,"="); $StatementText=substr($StatementText,$position+1,); #print $StatementText; } else{ next; } if($flag==2){ $AverageTime=sprintf("%.15f", ($TotalExecutionTime)/($NumberExecutions)); $AverageRowRead=sprintf("%.5f", ($Rowsread)/($NumberExecutions)); if($Rowsread==" 0"||$Rowswritten==" 0"){ $AverageRowSelect=0; }else{ $AverageRowSelect=sprintf("%.5f", ($Rowswritten)/($Rowsread)); } if(($BPDLR+$BPILR)==0||($BPIPR+$BPDPR)==0){ $BPRatio=100; }else{ $BPRatio = (1-($BPIPR+$BPDPR)/($BPDLR+$BPILR))*100; } open (OUTFILE, ">>transfer.txt"); print OUTFILE ($NumberExecutions.";".$NumberCompilations.";".$WorstPreparation.";".$BestPreparation.";".$InternalRowsDeleted.";".$InternalRowsInserted.";".$Rowsread.";".$InternalRowsupdated.";".$Rowswritten.";".$Statementsorts.";".$Statementsortoverflows.";".$Totalsorttime.";".$BPDLR.";".$BPDPR.";".$BPTDLR.";".$BPTDPR.";".$BPILR.";".$BPIPR.";".$BPTILR.";".$BPTIPR.";".$TotalExecutionTime.";".$TUsrTm.";".$TSysTm.";".$AverageTime.";".$AverageRowRead.";".$AverageRowSelect.";".$BPRatio.";".$StatementText); $StatementText=""; $TotalExecutionTime=""; $NumberExecutions=""; $Statementsorts=""; $Statementsortoverflows=""; $Totalsorttime=""; $TUsrTm=""; $TSysTm=""; } } #Show end time. $date=localtime(time); print "End at ".$date; #Close the file handle. close(OUTFILE); close(FILE1)
http://www.futurehandw.com/db2_performance/db2-%E6%80%A7%E8%83%BD%E4%B9%8B%E6%97%85%E4%BA%94
DB2 性能之旅(二)中提到了使用DB2的snapshot分析,发现现行的snapshot分析工具非常差。
有空的时候,Jason自己code了一个perl脚本,可以快速的分析snapshot,由于DB2的snapshot的内容比较大,perl处理速度还有待加强,呵呵。
我们需要装有ActivePerl-5.8.8.822-MSWin32-x86-280952(free)或更高版本的环境来执行脚本。
使用命令行执行transfer.pl,后面参数为您snapshot的路径。例如:”transfer.pl d:\perl\all.txt”.
开始执行后,在perl脚本的文件夹中会生成transfer.txt,然后你就可以用新建的excel文件打开transfer.txt,注意用分号隔开(Delimited with Semicolon)。
以将程序上传到sourceforge上,下载地址如下:
这里。
Jason近期会上传定时爬虫抓取weblogic页面的程序。
———EOF———
作者: 吴颖敏 | www.futurehandw.com
Email: [email protected]
Linux 图形界面 / exportDISPLAY=:0.0的解释
http://www.2cto.com/os/201404/293597.html
在Linux/Unix类操作系统上, DISPLAY用来设置将图形显示到何处. 直接登陆图形界面或者登陆命令行界面后使用startx启动图形, DISPLAY环境变量将自动设置为:0:0, 此时可以打开终端, 输出图形程序的名称(比如xclock)来启动程序, 图形将显示在本地窗口上, 在终端上输入printenv查看当前环境变量, 输出结果中有如下内容:
DISPLAY=:0.0
使用xdpyinfo可以查看到当前显示的更详细的信息.
DISPLAY 环境变量格式如下host:NumA.NumB,host指Xserver所在的主机主机名或者ip地址, 图形将显示在这一机器上, 可以是启动了图形界面的Linux/Unix机器, 也可以是安装了Exceed, X-Deep/32等Windows平台运行的Xserver的Windows机器. 如果Host为空, 则表示Xserver运行于本机, 并且图形程序(Xclient)使用unix socket方式连接到Xserver,而不是TCP方式. 使用TCP方式连接时, NumA为连接的端口减去6000的值, 如果NumA为0, 则表示连接到6000端口; 使用unix socket方式连接时则表示连接的unix socket的路径, 如果为0, 则表示连接到/tmp/.X11-unix/X0 . NumB则几乎总是0.
如果使用su username或者su - username切换到别的用户, 并且使用命令
export DISPLAY=:0.0
设置DISPLAY环境变量, 运行图形程序(如xclock)时会收到如下错误:
Xlib: connection to ":0.0"refused by server
Xlib: No protocol specified
Error: Can't open display: :0.0
这是因为Xserver默认情况下不允许别的用户的图形程序的图形显示在当前屏幕上. 如果需要别的用户的图形显示在当前屏幕上, 则应以当前登陆的用户, 也就是切换身份前的用户执行如下命令
xhost +
这个命令将允许别的用户启动的图形程序将图形显示在当前屏幕上.
在2台Linux机器之间, 如果设置服务器端配置文件/etc/ssh/sshd_config中包含:
X11Forwarding no
客户端配置文件/etc/ssh/ssh_config包含:
ForwardX11 yes
则从客户端ssh到服务器端后会自动设置DISPLAY环境变量, 允许在服务器端执行的图形程序将图形显示在客户端上. 在服务器上查看环境变量显示如下(这个结果不同的时候并不相同)
DISPLAY=localhost:10.0
在客户机上用netstat -lnp可以看到有程序监听了6010端口
tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN 4827/1
如果希望允许远程机器上的图形程序将图形显示在本地机器的Xserver上, 除了要设置远端机器的DISPLAY环境变量以外, 还需要设置本地机器的Xserver监听相应的TCP端口. 而现在的Linux系统出于安全的考虑, 默认情况下不再监听TCP端口. 可通过修改/etc/X11/xinit/xserverrc文件, 将
exec /usr/bin/X11/X -dpi 100 -nolistentcp
修改为
exec /usr/bin/X11/X -dpi 100
允许在直接使用startx启动图形时启动对TCP端口的监听.
修改/etc/kde3/kdm/kdmrc, 将
ServerArgsLocal=-nolisten tcp
修改为
ServerArgsLocal=
允许kdm作为显示管理器时, 启动会话时监听相应的TCP端口.
修改/etc/gdm/gdm.conf, 在[Security]一节增加
DisallowTCP=false
或者在登陆窗口选择"Options" -> "Configure Login Manager..."的Security页面, 取消"DenyTCP connections to Xserver", 允许gdm作为显示管理器时, 启动会话时监听相应的TCP端口.
end