好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

linux中supportconfig安装与使用方法 - linux教程

linux中supportconfig安装与使用方法

由于工作原因,平时需要suse的工程师做二线技术支持,除了经常会提交kdump分析的结果给suse 工程师定位根因,而在没有kdump生成时,经常会用的指令就是supportconfig收集系统信息,其收集内容基本涵盖了内核、模块、系统、服务等几乎所有我们能想到的信息,另外还会出一份简单的health check报告,其除了适用于suse企业版外,同样在opensuse上也可以使用,本篇就结合现网使用的场景对supportconfig命令做一个简单的概括.

一、supportconfig的安装

可以通过yast进行安装,也可以通过zypper命令进行安装,安装命令如下.

直接使用源进行安装,代码如下:#zypper install supportutils

也可以将rpm包下载下来使用yast进行安装或者在yast的管理界面里查找安装:

#yast install supportutils-xxx.rpm

注: 根据系统的版本不同,包名也可能是supportconfig.

安装完成后可以使用rpm -ql supportutils 查看包中具体包含的文件信息,如下:

  • # rpm -ql supportutils  
  • /etc/schealth.conf 
  • /etc/supportconfig.conf 
  • /sbin/chkbin 
  • /sbin/supportconfig 
  • /usr/bin/schealth 
  • /usr/share/man/man5/supportconfig.conf.5.gz 
  • /usr/share/man/man8/chkbin.8.gz 
  • /usr/share/man/man8/supportconfig.8.gz 

    注: 上面的结果是在 suse11 sp1企业版上的测试的结果,在opensuse 13上目录结构会略有不同,其上使用的是新版本的supportconfig.

    二、supportconfig用法

    以下是supportconfig的帮助输出,代码如下:

  • # supportconfig -h  
  • ============================================================================= 
  •                      Support Utilities - Supportconfig 
  •                           Script Version: 2.25-197 
  •                           Script Date: 2010 04 02 
  • ============================================================================= 
  •  Usage: supportconfig [OPTION [OPTION ...]] 
  •   -h This screen 
  •   -A Activates all supportconfig functions with  additional logging and full 
  •      rpm verification. 
  •   -B <string> Custom tar ball file name element 
  •   -C Creates a new   default  /etc/supportconfig.conf 
  •   -D Use defaults; ignore  /etc/supportconfig.conf 
  •   -E <string> Contact email address 
  •   -F Display available supportconfig feature keywords (case -sensitive) used 
  •      with  -i and -x 
  •   -G <gpg_uid> The GPG recipient's user ID used to encrypt the supportconfig tarball 
  •   -H <number> Limit number of included HA Policy engine files 
  •   -I <number> Default log file line count 
  •   -L Create a full file listing from '/'  
  •   -M <string> Contact terminal ID 
  •   -N <string> Contact name 
  •   -O <string> Contact company name 
  •   -P <string> Contact phone number 
  •   -Q Run in  silent mode 
  •   -R <path> Log output directory 
  •   -S <number> Limit number of included SAR files 
  •   -T <seconds> Binary execution timeout 
  •   -U <URI string> Sets upload target URL and initiates an upload, supported 
  •                   services include: ftp, scp, http, https 
  •   -M <string> Contact store ID 
  •   -X <number> Max system logs line count 
  •   -a Upload the tar ball to the specified alternate target VAR_OPTION_UPLOAD_ALT 
  •   -b Screen buffer mode 
  •   -d Exclude detailed disk info and scans 
  •   -e Search root file system for  eDirectory instances; -L implied. Be patient. 
  •   -f From directory. Don't collect report files, just use files in  that 
  •      directory. 
  •   -g Use gzip instead of the default  bzip2 compression. 
  •   -i <keyword list> 
  •      Include keywords. A comma separated list of feature keywords that specify 
  •      which features to include. Use -F to see a list of valid keywords. 
  •   -l Gathers additional rotated logs 
  •   -m Only gather a minimum amount of info: basic env, basic health, hardware, 
  •      rpm, messages, y2logs 
  •   -o Toggle listed features on or off 
  •   -p Disable all plugins 
  •   -q Add a uuid to the tar ball filename to ensure uniqueness 
  •   -r <srnum> 
  •      Includes the Novell 11 digit service request number when uploading 
  •      the tar ball to Novell 
  •   -s Include full SLP service lists 
  •   -t Target directory. Just save log files here, do  not create tarball. 
  •   -u Upload the tar ball to the specified VAR_OPTION_UPLOAD_TARGET. 
  •   -v Performs an rpm -V for  each installed rpm  NOTE: This takes a  long  time 
  •      to complete 
  •   -x <keyword list> 
  •      Exclude keywords. A comma separated list of feature keywords that specify 
  •      which features to exclude. Use -F to see a list of valid keywords. 
  •   -y Only gather the minimum y2log files. 
  •   Use Ctrl- to try  and skip a  function  that is hanging. 
  • ----------------------------------------------------------------------------- 
  •   NOTE: 
  •   This tool will create a tar ball in  the / var /log directory. Please attach 
  •   the log file tar ball to your open Service.  Request at the following URL: 
  • https://secure-support.novell.com/eService_enu  
  •   If you cannot attach the tar ball to the SR, then email it to the engineer. 
  •   Please submit bug fixes or comments via: 
  • http://en.opensuse.org/Supportutils#Reporting_Bugs  
  • ============================================================================= 
  •                      Support Utilities - Supportconfig 
  •                           Script Version: 2.25-197 
  •                           Script Date: 2010 04 02 
  • ============================================================================= 

    默认supportconfig或supportconfig -A执行后会将收集后的结果打包为一个nts_主机名_日期.tbz 文件,同时会生成一个以该文件名加.md5后缀的文件.

    三、supportconfig常用示例

    1、supportconfig -A 收集所有日志,代码如下:

  • # supportconfig 
  • ============================================================================= 
  •                      Support Utilities - Supportconfig 
  •                           Script Version: 2.25-290 
  •                           Script Date : 2011 07 14 
  • ============================================================================= 
  • Gathering system information 
  •   Data Directory:    /var/log/nts_361way.com_140825_1504 
  •   Basic Server Health Check ...                 Done 
  •   RPM Database ...                              Done 
  •   Basic Environment...                         Done 
  •   Basic Health Report...                       Done 
  •   System Modules...                            Done 
  •   Memory Details...                            Done 
  •   Disk I/O...                                  Done 
  •   YaST Files...                                Done 
  •   Auditing...                                  Done 
  •   Crash Info...                                Done 
  •   NTP...                                       Done 
  •   PROC...                                      Done 
  •   Boot Files...                                Done 
  •   SLERT...                                     Skipped 
  •   Updates...                                   Done 
  •   SMT...                                       Skipped 
  •   Novell eDirectory...                         Please Wait... Skipped 
  •   Novell LUM...                                Skipped 
  •   Novell NCP...                                Skipped 
  •   Novell NSS...                                Skipped 
  •   Novell DFS...                                Skipped 
  •   Novell SMS...                                Skipped 
  •   Novell NCS...                                Skipped 
  •   Novell AFP...                                Skipped 
  •   Novell CIFS...                               Skipped 
  •   Novell iManager...                           Skipped 
  •   HA Cluster...                                Skipped 
  •   OCFS2...                                     Skipped 
  •   DRBD...                                      Skipped 
  •   PAM...                                       Done 
  •   LDAP...                                      Done 
  •   CIMOM...                                     Done 
  •   Open  Files...                                Done 
  •   Environment...                               Done 
  •   ETC...                                       Done 
  •   SYSCONFIG...                                 Done 
  •   SYSFS...                                     Done 
  •   System Daemons...                            Done 
  •   CRON...                                      Done 
  •   AT ...                                        Done 
  •   UDEV...                                      Done 
  •   LVM...                                       Please Wait... Base Detail Done 
  •   EVMS...                                      Skipped 
  •   Software Raid...                             Done 
  •   Multipathing...                              Done 
  •   Networking...                                Done 
  •   Web...                                       Done 
  •   InfiniBand...                                Done 
  •   DNS...                                       Done 
  •   DHCP...                                      Done 
  •   SLP...                                       Done 
  •   SSH...                                       Done 
  •   iSCSI...                                     Done 
  •   Samba...                                     Done 
  •   NFS...                                       Done 
  •   AUTOFS...                                    Done 
  •   SAR Files...                                 Done 
  •   AppArmor...                                  Done 
  •   Xen...                                       Done 
  •   KVM...                                       Done 
  •   X...                                         Done 
  •   Printing...                                  Done 
  •   SMART Disks...                               Excluded 
  •   Hardware...                                  Please Wait... Done 
  •   File System List...                          Skipped 
  •   Supportability Analysis...                   Please Wait... Done 
  •   System Logs...                               Done 
  • Creating Tar Ball 
  • ==[ DONE ]=================================================================== 
  •   Log file tar ball: /var/log/nts_361way.com_140825_1504.tbz 
  •   Log file size :     4.0M 
  •   Log file md5sum:   484b111cda54ca04419facd82a1da7d7 
  •   Please attach the log file tar ball to  your  open  Service Request  at  the 
  •   following URL: 
  • https://secure-support.novell.com/eService_enu 
  •   You can also upload the tar ball to  ftp.novell.com/incoming,  or  just use 
  •   supportconfig -ur <srnum>, to  upload the tar ball automatically. 
  •   If you cannot attach the tar ball to  the SR,  then  email it  to  the engineer. 
  • ============================================================================= 

    其他常用用法:

  • //以最小选项搜集所需的信息  
  • # supportconfig -m  
  • //在输出中包含附加的联系人信息  
  • # supportconfig -E tux@example.org -N "Tux Penguin" -O "Penguin Inc." ...  
  • //要查看完整的功能列表  
  • # supportconfig -F  
  • //仅收集某个模块的用法,如LVM相的信息  
  • # supportconfig -i LVM  
  • //-x 的功能与-i刚好相反,是排除某个模块不收集  
  • # supportconfig -x LVM  
  • //使用-U url 可以将收集的结果上传到服务器上,直接的服务有ftp, scp, http, https,如:  
  • # supportconfig -A -U http://www.361way.com/files/  

    具体可以参看官方的常用的supportconfig选项部分,supportconfig收集的系统健康报告,代码如下:

  • # supportconfig -A 
  • # cd /var/log 
  • # tar jxvf nts_361way.com_140825_1504.tbz 
  • # more basic-health-report.txt 
  • #==[ Command ]======================================# 
  • # /usr/bin/schealth -q 
  • ###################################################################### 
  • Supportconfig Health Check  Report Tool v1.00-5 
  • Date  Checked: 09/12/14 04:40:37 
  • ###################################################################### 
  • Health Check  Files                                         [  Green  ] 
  • Processes Waiting for  Run Queue                            [  Green  ] 
  • Kernel Taint Status                                        [   Red   ] 
  •  Kernel Tainted: 64 > 0 
  • CPU Utilization                                            [  Green  ] 
  • Interrupts Per Second                                       [  Green  ] 
  • Context Switches Per Second                                 [  Green  ] 
  • Free  Memory  and  Disk Swapping                              [  Green  ] 
  • Used Disk Space                                             [  Green  ] 
  • Uninterruptible Processes                                  [  Green  ] 
  • Zombie Processes                                           [  Green  ] 
  • ###################################################################### 
  • Status:   Red Flag 
  • Checked:  /var/log/nts_361way.com_140825_1504/basic-health-check .txt 
  • Report:   /var/log/nts_361way.com_140825_1504/basic-health-report.txt 
  • ###################################################################### 

    上面的报告中,我们发现kernel Tainted 状态为red,该处是通过cat  /proc/sys/kernel/tainted 进行判断的,如果值不为0,则是内核受到污染,显的值不同,具体可以参看/usr/src/linux/Documentation/sysctl/kernel 文件,具体的值不一样,代表的意义也不一样,64报红是由于加载了非系统官方或非开源的模块所致,Unsupported modules loaded.

    四、supportconfig配置文件

    supportconfig的默认配置文件是 /etc/supportconfig.conf,其默认内容如下:

  • # cat /etc/supportconfig.conf 
  • #################################### 
  • Default  Options 
  • #################################### 
  • OPTION_AFP=1 
  • OPTION_APPARMOR=1 
  • OPTION_AUDIT=1 
  • OPTION_AUTOFS=1 
  • OPTION_BOOT=1 
  • OPTION_CHKCONFIG=1 
  • OPTION_CIFS=1 
  • OPTION_CIMOM=1 
  • OPTION_CRASH=1 
  • OPTION_CRON=1 
  • OPTION_DFS=1 
  • OPTION_DHCP=1 
  • OPTION_DISK=1 
  • OPTION_DNS=1 
  • OPTION_EDIR=1 
  • OPTION_ENV=1 
  • OPTION_ETC=1 
  • OPTION_EVMS=1 
  • OPTION_HA=1 
  • OPTION_HCREPORT=1 
  • OPTION_IB=1 
  • OPTION_ISCSI=1 
  • OPTION_LDAP=1 
  • OPTION_LUM=1 
  • OPTION_LVM=1 
  • OPTION_MEM=1 
  • OPTION_MOD=1 
  • OPTION_MPIO=1 
  • OPTION_NCP=1 
  • OPTION_NCS=1 
  • OPTION_NET=1 
  • OPTION_NFS=1 
  • OPTION_NSS=1 
  • OPTION_NTP=1 
  • OPTION_OCFS2=1 
  • OPTION_OFILES=1 
  • OPTION_PAM=1 
  • OPTION_PRINT=1 
  • OPTION_PROC=1 
  • OPTION_SAM=1 
  • OPTION_SAR=1 
  • OPTION_SLERT=1 
  • OPTION_SLP=1 
  • OPTION_SMART=0 
  • OPTION_SMB=1 
  • OPTION_SMS=1 
  • OPTION_SMT=1 
  • OPTION_SRAID=1 
  • OPTION_SSH=1 
  • OPTION_SYSCONFIG=1 
  • OPTION_SYSFS=1 
  • OPTION_UDEV=1 
  • OPTION_UP=1 
  • OPTION_UPD=1 
  • OPTION_WEB=1 
  • OPTION_X=1 
  • OPTION_XEN=1 
  • ADD_OPTION_EDIR=0 
  • ADD_OPTION_FSLIST=0 
  • ADD_OPTION_LOGS=0 
  • ADD_OPTION_MINDISK=0 
  • ADD_OPTION_MINYAST=0 
  • ADD_OPTION_RPMV=0 
  • ADD_OPTION_SLP=0 
  • VAR_OPTION_BIN_TIMEOUT_SEC=300 
  • VAR_OPTION_CONTACT_COMPANY=""  
  • VAR_OPTION_CONTACT_EMAIL=""  
  • VAR_OPTION_CONTACT_NAME=""  
  • VAR_OPTION_CONTACT_PHONE=""  
  • VAR_OPTION_CONTACT_STOREID=""  
  • VAR_OPTION_CONTACT_TERMINALID=""  
  • VAR_OPTION_CUSTOM_ARCH=""  
  • VAR_OPTION_GPG_UID=""  
  • VAR_OPTION_LINE_COUNT=500 
  • VAR_OPTION_LOG_DIRS="/var/log /tmp"  
  • VAR_OPTION_MSG_MAXSIZE=500000 
  • VAR_OPTION_PENGINE_FILES_LIMIT=250 
  • VAR_OPTION_SAR_FILES_LIMIT=30 
  • VAR_OPTION_SBM=0 
  • VAR_OPTION_SILENT=0 //phpfensi.com
  • VAR_OPTION_UNIQUE_FILE=0 
  • VAR_OPTION_UPLOAD_ALT='https://secure-www.novell.com/upload?appname=supportconfig&file={tarball}'  
  • VAR_OPTION_UPLOAD_TARGET='ftp://ftp.novell.com/incoming'  

    配置文件中列出了默认收集的模块信息,公司信息、邮件、电话及上传的服务器目录等.

    五、supportconfig总结

    supportconfig是使用shell 编写的一个功能十分强大的工具,具体可以通过vim /sbin/supportconfig 查看,同时,由于linux命令上的通用性,我们甚至可以很简单的进行修改后将其移植到其他linux 发行版上,不过显然这是没必要的,因为还有一个比较通的用的开源工具sosreport和其作用差不多,而其适用性更强,后面会单独列一篇做一个总结.

    查看更多关于linux中supportconfig安装与使用方法 - linux教程的详细内容...

  •   阅读:204次