当前位置:  建站>运营/SEO
本页文章导读:
    ▪hpux 操作系统磁带备份与恢复        一.扫描磁带机(注意:定期用清洗带为磁带机做清洗)   ioscan  -fnC tape Class     I  H/W Path        Driver S/W State   H/W Type  &nb.........
    ▪用C++编程调用libvirt的API来创建KVM虚拟机      1. 如果已经写好了创建kvm的配置文件(stand.xml)格式,那么创建kvm虚拟机只要使用命令即可: virsh define ./conf/stand.xml .........
    ▪hpux- hp小型机日常硬件故障处理case(一)      主机型号:ia64 hp superdome server SD32A 存储型号:XP24000 软件版本:hpux 11.31 + oracle 11g  LED显示:attention 红灯 故障现象:数据库down,主机down 日志: Log Entry 14389: 03/02/2013 12:46:00 Alert level 3: W.........

[1]hpux 操作系统磁带备份与恢复
    来源: 互联网  发布时间: 2013-11-01

 

一.扫描磁带机(注意:定期用清洗带为磁带机做清洗)

 

ioscan  -fnC tape
Class     I  H/W Path        Driver S/W State   H/W Type     Description
========================================================================
tape      2  0/0/11/1/1.3.0  stape   CLAIMED     DEVICE       HP      C5683A
                            /dev/rmt/2m            /dev/rmt/2mn           /dev/rmt/c3t3d0BEST    /dev/rmt/c3t3d0BESTn
                            /dev/rmt/2mb           /dev/rmt/2mnb          /dev/rmt/c3t3d0BESTb   /dev/rmt/c3t3d0BESTnb
tape      0  0/0/14/1/0.11.8.255.0.0.0  stape   CLAIMED     DEVICE       ARCHIVE Python
                            /dev/rmt/0m             /dev/rmt/0mn            /dev/rmt/c12t0d0BEST    /dev/rmt/c12t0d0BESTn
                            /dev/rmt/0mb            /dev/rmt/0mnb           /dev/rmt/c12t0d0BESTb   /dev/rmt/c12t0d0BESTnb
tape      1  0/0/14/1/0.11.8.255.0.0.1  stape   CLAIMED     DEVICE       ARCHIVE Python
                            /dev/rmt/1m             /dev/rmt/1mn            /dev/rmt/c12t0d1BEST    /dev/rmt/c12t0d1BESTn
                            /dev/rmt/1mb            /dev/rmt/1mnb           /dev/rmt/c12t0d1BESTb   /dev/rmt/c12t0d1BESTnb
tape      3  6/0/14/1/0.22.8.255.0.0.0  stape   CLAIMED     DEVICE       ARCHIVE Python
                            /dev/rmt/3m             /dev/rmt/3mn            /dev/rmt/c28t0d0BEST    /dev/rmt/c28t0d0BESTn
                            /dev/rmt/3mb            /dev/rmt/3mnb           /dev/rmt/c28t0d0BESTb   /dev/rmt/c28t0d0BESTnb
tape      4  6/0/14/1/0.22.8.255.0.0.1  stape   CLAIMED     DEVICE       ARCHIVE Python
                            /dev/rmt/4m             /dev/rmt/4mn            /dev/rmt/c28t0d1BEST    /dev/rmt/c28t0d1BESTn
                            /dev/rmt/4mb            /dev/rmt/4mnb           /dev/rmt/c28t0d1BESTb   /dev/rmt/c28t0d1BESTn

 

 

ioscan -fnC tape
Class     I  H/W Path     Driver S/W State   H/W Type     Description
=====================================================================
tape      0  0/1/1/1.3.0  stape CLAIMED     DEVICE       HP      C5683A
                         /dev/rmt/0m            /dev/rmt/0mn           /dev/rmt/c3t3d0BEST    /dev/rmt/c3t3d0BESTn   /dev/rmt/c3t3d0DDS     /dev/rmt/c3t3d0DDSn 
                         /dev/rmt/0mb           /dev/rmt/0mnb          /dev/rmt/c3t3d0BESTb   /dev/rmt/c3t3d0BESTnb  /dev/rmt/c3t3d0DDSb    /dev/rmt/c3t3d0DDSnb

 

二.进行磁带备份

根据磁带类型,放入同类型磁带

/opt/ignite/bin  (这个是make_tape_recovery  所在的目录)

make_tape_recovery  -A v       (默认磁带 /dev/rmt/0mn,此备份为常用备份方式)

注意:如果扫描出的磁盘是  /dev/rmt/0mn ,并且类型是HP,可以直接使用上述命令。

           如果扫描出的磁盘是 /dev/rmt/2mn(或者其他),并且类型是HP,就需要指定路径: make_tape_recovery  -A v       -a   /dev/rmt/2mn

-A : 指定要备份整个Root disk / Volume Group

-v : 用于显示备份过程的提示信息
-a:指定路径

 

备份成功显示信息如下:

* Creating local directories for configuration files and archive.

=======  07/09/13 18:05:23 EAT  Started make_tape_recovery. (Tue Jul 09 18:05:23 EAT 2013)

         @(#) Ignite-UX Revision C.6.0.115
         @(#) net_recovery (opt) $Revision: 10.655 $

       * Testing pax for needed patch
       * Passed pax tests.
       * Checking Versions of Ignite-UX filesets
       * Creating System Configuration.
       * /opt/ignite/bin/save_config -f
         /var/opt/ignite/recovery/2009-03-31,15:48/system_cfg vg00
       * Backing Up Volume Group /dev/vg00
       * /usr/sbin/vgcfgbackup /dev/vg00
       * Creating Map Files for Volume Group /dev/vg00
       * /usr/sbin/vgexport -p -m /etc/lvmconf/vg00.mapfile /dev/vg00

       * Creating Control Configuration.
       * Creating Archive File List
       * Creating Archive Configuration

       * /opt/ignite/bin/make_arch_config -c
         /var/opt/ignite/recovery/2009-03-31,15:48/archive_cfg -g
         /var/opt/ignite/recovery/2009-03-31,15:48/flist -n 2009-03-31,15:48 -r
         64 -d Recovery\ Archive -t -i 1 -m t
       * Saving the information about archive to
         /var/opt/ignite/recovery/previews
       * Creating The Tape Archive
Adding /opt/ignite/Version file to LIF.
68203+0 records in
68203+0 records out
      

    
[2]用C++编程调用libvirt的API来创建KVM虚拟机
    来源: 互联网  发布时间: 2013-11-01

1. 如果已经写好了创建kvm的配置文件(stand.xml)格式,那么创建kvm虚拟机只要使用命令即可:

virsh define ./conf/stand.xml                                                                                                                                  
virsh start rheltest3


2. 如果直接编程调用libvirt创建kvm虚拟机,则可用以下程序

/***************************************************************************
 * create_vm.cpp 
 *  create kvm machine(domain) based on conf.xml
 *  the first parameter is the conf xml files' name
 *  Note: the .xml must has two boot types (cdrom/hd) by any order
 *  compile command: 'g++ create_vm.cpp -o createvm -lvirt'
 *  running command: './createvm  /path/to/xml/example.xml'
 *  author  : Aborn Jiang
 *  date    : Aug.17, 2013
 *  version : v0.1
 ***************************************************************************/

#include <iostream>
#include <cstdio>
#include <string>
#include <fstream>
#include <sstream>
#include <libvirt/libvirt.h>
#include <libvirt/virterror.h>
#include <memory.h>

using namespace std;
int main(int argc, char* argv[])
{
	if ( 1 == argc ) {
		cout << "must and only need an argument, this is, configure .xml file name." << endl;
		return -1;
	} 
	if ( 3 <= argc ) {
		cout << "too many arguments. must and only need one, that is, .xml file name." << endl;
		return -1;
	}
	string xmlfile=argv[1];
	cout << "*************************" << endl;
	cout << "begin to build vm ..." << endl;
	cout << "xmlfile path:" << xmlfile <<endl;
	
	ifstream file(xmlfile.c_str());
	if (!file) {
		cout << "Cannot open file, permission denied." << xmlfile << endl;
		return -1;
	}
	stringstream buffer;
	buffer << file.rdbuf();
	string xmlcontents = buffer.str();
	file.close();
	
	/************************************************************************************* 
	 * deal with the original xml configuration file
	 * initxmlconts for transient guest domain(install os) configure (boot from cdrom)
	 * xmlcontents  for persistent guest domain configure (boot from hd)
	 ************************************************************************************/
	int pos_boot  = xmlcontents.find("boot");
	int pos_hd    = xmlcontents.find("hd", pos_boot);
	int pos_cdrom = xmlcontents.find("cdrom", pos_boot);
	cout << "pos_hd=" << pos_hd << "  pos_cdrom=" << pos_cdrom << endl;
	string initxmlconts(xmlcontents);
	if ( pos_hd > pos_cdrom ) {    // cdrom apears in first order
		cout << "cdrom apears in first order" << endl;
		xmlcontents.replace(pos_cdrom, 5 ,"hd");
		pos_hd=xmlcontents.find("hd", pos_cdrom + 2);
		xmlcontents.replace(pos_hd, 2, "cdrom");
	} else {                     // hd apears in first order
		cout << "hd apears in first order" << endl;
		initxmlconts.replace(pos_hd, 2, "cdrom");
		pos_cdrom=initxmlconts.find("cdrom", pos_hd + 5);
		initxmlconts.replace(pos_cdrom, 5, "hd");
	}

	// create and boot a transient initial domain, for vm os installation
	virConnectPtr conn = virConnectOpen("qemu:///system");
	if (NULL == conn ) {
		virErrorPtr error = virGetLastError();
		cout << error->message << endl;
		return -1;
	}
	virDomainPtr vmpi = virDomainCreateXML(conn, initxmlconts.c_str(), VIR_DOMAIN_START_AUTODESTROY);
	if (NULL == vmpi) {
		virErrorPtr error = virGetLastError();
		cout << error->message << endl;
		return -1;
	}
	cout << "os installation ongoing, it will spend some time..." << endl;
	while ( 1 == virDomainIsActive(vmpi) );                // waiting until installation finish.
	cout << "os installation finished..." << endl;
	if (NULL == conn)
		virConnectPtr conn = virConnectOpen("qemu:///system");
	cout << "start boot the vm machine..." << endl;

	// store xmlcontents configuration for a persistent guest domain and boot it.
	virDomainPtr vmp = virDomainDefineXML(conn, xmlcontents.c_str());
	if (NULL == vmp) {
		virErrorPtr error = virGetLastError();
		cout << error->message << endl;
		return -1;
	} else {
		cout << "define persistent domain success." << endl;
		if (virDomainCreate(vmp) < 0) {                   // boot the vm.
			cout << "Unable to boot guest configuration." << endl;
		} else {
			cout << "Boot the persistent defined guest ..." << endl;
		}
		cout << "build vm finished." << endl;
		cout << "*************************" << endl;
		return 0;
	}
}


3. 附stand.xml文件内容

<domain type='kvm'>
	<name>rheltest3</name>
	<uuid>32b95fab-6d78-4e28-beca-2d3988ff8c8f</uuid>
	<memory unit='KiB'>1048576</memory>
	<currentMemory unit='KiB'>1048576</currentMemory>
	<vcpu placement='static'>1</vcpu>
	<os>
		<type arch='x86_64' machine='pc-1.2'>hvm</type>
		<boot dev='hd'/>
		<boot dev='cdrom'/>
	</os>
	<features>
		<acpi/>
		<apic/>
		<pae/>
	</features>
	<clock offset='utc'/>
	<on_poweroff>destroy</on_poweroff>
	<on_reboot>restart</on_reboot>
	<on_crash>restart</on_crash>
	<devices>
		<emulator>/usr/bin/qemu</emulator>
		<disk type='file' device='disk'>
			<driver name='qemu' type='qcow2'/>
			<source file='/home/lisp/code/auto-rhel/virt/rheltest3.img'/>
			<target dev='hda' bus='ide'/>
			<address type='drive' controller='0' buss='0' target='0' unit='0'/>
		</disk>
		<disk type='file' device='cdrom'>
			<driver name='qemu' type='raw'/>
			<source file='/home/lisp/code/auto-rhel/rhelcustom.iso'/>
			<target dev='hdc' bus='ide'/>
			<readonly/>
		</disk>
		<controller type='usb' index='0'>
			<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
		</controller>
		<controller type='ide' index='0'>
			<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
		</controller>
		<interface type='bridge'>
			<mac address='52:54:00:78:f9:98'/>
			<source bridge='virbr0'/>
			<model type='virtio'/>
			<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
		</interface>
		<input type='mouse' bus='ps2'/>
		<graphics type='vnc' port='-1' autoprot='yes'/>
		<memballoon model='virtio'>
			<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
		</memballoon>
	</devices>
</domain>


作者:loveaborn 发表于2013-8-22 21:51:03 原文链接
阅读:20 评论:0 查看评论

    
[3]hpux- hp小型机日常硬件故障处理case(一)
    来源: 互联网  发布时间: 2013-11-01

主机型号:ia64 hp superdome server SD32A

存储型号:XP24000

软件版本:hpux 11.31 + oracle 11g 

LED显示:attention 红灯

故障现象:数据库down,主机down

日志:

Log Entry 14389: 03/02/2013 12:46:00
Alert level 3: Warning
Keyword: ERM
The Error Response Mode has been determined
Reporting Entity: System Firmware located in cabinet 0, slot 2, cpu 0
Text Message: "CONTINUE"
0x698001ee20e00c18 0x45554e49544e4f43
0x6b0001ee20e00c19 0x010000005131f488

Log Entry 14382: 03/02/2013 12:46:00
Alert level 3: Warning
Keyword: ERM
The Error Response Mode has been determined
Reporting Entity: System Firmware located in cabinet 0, slot 4, cpu 0
Text Message: "CONTINUE"
0x698001ee40e00c0a 0x45554e49544e4f43
0x6b0001ee40e00c0b 0x010000005131f488

 

处理情况:

1.启动主机,发现主机笼子不能正常加电

2.登陆主机MP管理系统查看日志与cell板信息,发现发现 cell 电源 CELL POWER BOARD, SDCPB 存在问题

3.更换主机笼子,更换CPB

4.登陆MP,启动主机,启动完毕,重启操作系统

5.启动数据库,查看数据库状态。

作者:xyy27 发表于2013-8-22 21:13:53 原文链接
阅读:57 评论:0 查看评论

    
最新技术文章:
▪SQVI和SAP查询QUERY的区别和使用注意事项    ▪彻底理解Cisco/Linux/Windows的IP路由    ▪Exchange 2010 处于禁止发送用户自动收到来自IT...
▪MB_CHANGE_DOCUMENT使用方法    ▪ALV的html表头    ▪【译】如何精确判断最终用户响应时间过长的...
▪apache2.4.4启用deflate压缩    ▪使用vmware 配置centos 6.0+ 网络出现的各种问题...    ▪十句话教你学会Linux数据流重定向
▪centos6.x已经安装的系统添加图形界面    ▪Linux查看CPU和内存使用情况    ▪win7问题解决,凭据管理器和无法访问,不允...
▪Dynamics CRM 2013 初体验(4):不再被支持的功...    ▪win7下制作ubuntu系统安装启动盘和U盘安装ubuntu...    ▪Linux cp -a用法
▪Windows Server时间服务器配置方法    ▪Tomcat+memcached实现Session共享    ▪Linux修改系统环境变量PATH路径的方法
▪Citrix 服务器虚拟化之二十七 XenApp6.5发布服务...    ▪搭建本地Ubuntu 镜像服务器    ▪Create local metadata resource of yum
▪tsm ANS0326E问题处理    ▪Windows SVN变化邮件通知(Python2.7实现)    ▪linux下的内核测试工具——perf使用简介
▪Nginx TCP Proxy模块的编译安装    ▪OSX: SSH密钥使用日记(2)    ▪OSX: SSH密钥使用日记(1)
▪Manually start and stop Oracle XE in Ubuntu    ▪Disable autostart of Oracle-xe in Ubuntu    ▪tar命令-linux
▪xtrabackup-2.1.2-611安装    ▪无废话ubuntu 13.4文件共享配置    ▪Unix文本处理工具之sed
▪hpux 操作系统 磁带备份与恢复    ▪HP DL360 G7通过iLO部署系统    ▪Redhat 6.0中VNC Server的配置方法
▪hpux 操作系统磁带备份与恢复    ▪用C++编程调用libvirt的API来创建KVM虚拟机    ▪hpux- hp小型机日常硬件故障处理case(一)
▪web集群时session同步的几种方法(统计)    ▪inux常用命令大全    ▪BAT 批处理实现循环备份N天文件夹
▪BIND9私有DNS服务器小环境搭建实验    ▪Exchange2013增量备份    ▪OSSEC Monitor your App log file
▪《深入理解Nginx》阅读与实践(三):使用upstre...    ▪如何给Fedora 15创建磁盘分区    ▪Packet Sniffer Code in C using sockets
▪Error, some other host already uses address    ▪修改uCOS_II以实现“优先级+时间片”联合调度    ▪weblogic开发模式与生产模式介绍
▪Wireshark 高级特性    ▪ubuntu13.04版本下安装RabbitVCS,类似windows的Tortoi...    ▪Apache 一台主机绑定多个域名及虚拟主机
▪linux安全设置    ▪RHEL双网卡绑定    ▪Linux shell if参数
▪Windows配置路由时可以指定源地址啦    ▪centos安装vim7.4    ▪S3C2410 实验三——块拷贝、字拷贝(寄存器的...
▪系统运维——日志处理    ▪ip_conntrack缓存neighbour    ▪关键在封装并发出了帧-IP冲突也无所谓
▪weblogic11g 安装——linux 无图形界面    ▪《数据通信与网络》笔记--SCTP    ▪《数据通信与网络》笔记--TCP中的拥塞控制
▪weblogic11g 安装集群 —— win2003 系统、单台主...    ▪weblogic11g 节点管理器 nodemanager    ▪Citrix 服务器虚拟化之二十六 应用程序虚拟化...
▪如何将windows下的文件夹挂载到linux虚拟机下    ▪在64位AIX6.1下安装SAP JCo    ▪Outlook启动时提示“找不到文件Outlook.pst文件”...
▪weblogic8.1 登陆5 ip 限制    ▪weblogic 内存 及 内存溢出    ▪手把手教你在Windows端搭建Redmine项目管理软件
▪启动及重新启动nginx,重启nginx后丢失nginx.pid问...    ▪Win7实现快速启动栏并实现靠左边的终极操作...    ▪《深入理解Nginx》阅读与实践(二):配置项...
▪显示grub引导菜单    ▪nagios监控主机    ▪linux各种数据流重定向
▪centOS安装chrome浏览器    ▪Slackware 14 安装完全指南    ▪SharePoint 2013的100个新功能之内容管理(三)
▪Citrix 服务器虚拟化之二十一 桌面虚拟化之部...    ▪[问,ask]ubuntu13.04安装vncserver后只显示桌面,不显...    ▪Win7中IIS出现“HTTP 错误 404.17 - Not Found 请求的...
▪CentOS快速安装最新版本的SaltStack    ▪CentOS 6.4 快速安装Nginx笔记    ▪磁盘管理——RAID 0
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3