海运的博客

XenServer虚拟机VM挂起不能关机、重启解决

发布时间:August 13, 2012 // 分类:虚拟化 // No Comments

XenServer下虚拟机遇到死机或其它意外情况时通过XenCenter操作重启或关机时会遇到虚拟机挂起的状况,表现为XenCenter中虚拟机名字显示黄色状态,右键菜单只有属性可选,VM不能再进行其它操作,为此总结了一些解决方法。
首先尽量避免此类情况的发生,当虚拟机处于死机状态时尽量使用硬关机、硬重启:

xe vm-reboot force=true name-label=Centos5.7

当进行正常关机、重启时挂起可取消之前的任务操作,再进行硬操作:

xe task-list 
#查看当前任务列表和uuid
xe task-cancel uuid=<uuid>
#取消当前任务

如果以上不能解决可尝试以下:
销毁VM对应的domain id,VM会重启。

xe vm-list params=uuid name-label=<vm-name>
#或
xe vm-list name-label=<vm-name> --minimal
#获取指定VM的uuid
list_domains |grep <vm-uuid>
#获取VM对应的domain id
/opt/xensource/debug/destroy_domain -domid <domain-id>
#销毁VM对应的domain id

使VM崩溃:

xe vm-list params=actions-after-crash name-label=<vm-name>
#查看VM崩溃后的操作,默认为重启
xe vm-list params=uuid name-label=<vm-name>
#获取指定VM的uuid
list_domains |grep <vm-uuid>
#获取VM对应的domain id
/usr/lib/xen/bin/crash_guest <domain-id>
#触发VM崩溃

如果VM处于脱机状态,而VM在数据库中被标记为运行,可重置VM电源状态为关机:

xe vm-reset-powerstate force=true vm=<vm name>

其它可尝试重启xe工具,不要遇到xapi不能启动就好。。。

xe-toolstack-restart

GT701-WG刷OpenWRT系统

发布时间:August 11, 2012 // 分类:OpenWrt // No Comments

GT701-WG配置如下 ,玩玩OpenWRT带几台电脑绰绰有余。

CPU:160MHZ
RAM:16M
FLASH:4M

GT701-WG最新可用Openwrt官方固件下载:http://downloads.openwrt.org/backfire/10.03.1/ar7/openwrt-ar7-squashfs.bin
刷机步骤,开机3秒左右连接到路由FTP:

ftp 192.168.0.1
Connected to 192.168.0.1.
220 ADAM2 FTP Server ready.
Name (192.168.0.1:peter): adam2
331 Password required for adam2.
Password: adam2
230 User adam2 successfully logged in.
Remote system type is UNIX.
ftp> binary
200 Type set to I.
ftp> quote SETENV MAC_PORT,0
200 SETENV command successful
ftp> quote SETENV mtd5,0x90010000,0x903e0000
200 SETENV command successful
ftp> quote MEDIA FLSH
200 Media set to FLSH.
ftp> put "openwrt-ar7-squashfs.bin" "openwrt-ar7-squashfs.bin mtd5"
local: openwrt-ar7-squashfs.bin remote: openwrt-ar7-squashfs.bin mtd5
200 Port command successful.
150 Opening BINARY mode data connection for file transfer.
100% |************************************| 2560 KiB 129.35 KiB/s 00:00 ETA
226 Transfer complete.
2621444 bytes sent in 00:20 (122.30 KiB/s)
ftp> quote REBOOT
221-Thank you for using the FTP service on ADAM2.
221 Goodbye.
ftp> quit

网络配置:

config atm-bridge
    option unit     0
    option encaps   llc
    option vpi      0
    option vci      35
    option payload  bridged
config interface wan
    option ifname       nas0
    option proto        pppoe
    option username    "username"
    option password    "password"

刷新为原版系统,提供GT701-WG官方5.5中文固件下载

ftp 192.168.0.1
Connected to 192.168.0.1.
220 ADAM2 FTP Server ready.
Name (192.168.0.1:user): adam2
Password:
230 User adam2 successfully logged in.
Remote system type is UNIX.
ftp> binary
200 Type set to I.
ftp> quote UNSETENV mtd5
200 UNSETENV command successful
ftp> quote UNSETENV MAC_PORT
200 UNSETENV command successful
ftp> quote MEDIA FLSH
200 Media set to FLSH.
ftp> put nsp.ar7wrd.squashfs.img "nsp.ar7wrd.squashfs.img mtd0"
local: nsp.ar7wrd.squashfs.img remote: nsp.ar7wrd.squashfs.img mtd0
502 Command not implemented - Try HELP.
227 Entering Passive Mode (192,168,0,1,4,45).
150 Opening BINARY mode data connection for file transfer.
100% |*************************************|  1940 KB   82.54 KB/s    00:00 ETA
226 Transfer complete.
1986560 bytes sent in 00:23 (81.18 KB/s)
ftp> put ram_zimage_pad.ar7wrd.nsp.squashfs.bin "ram_zimage_pad.ar7wrd.nsp.squashfs.bin mtd1"
local: ram_zimage_pad.ar7wrd.nsp.squashfs.bin remote: ram_zimage_pad.ar7wrd.nsp.squashfs.bin mtd1
227 Entering Passive Mode (192,168,0,1,4,45).
150 Opening BINARY mode data connection for file transfer.
100% |*************************************|   640 KB   85.43 KB/s    00:00 ETA
226 Transfer complete.
655360 bytes sent in 00:07 (81.14 KB/s)
ftp> quote REBOOT
221-Thank you for using the FTP service on ADAM2.
221 Goodbye.
ftp> quit

Openwrt使用mtd和sysupgrade刷机、备份恢复系统配置

发布时间:August 11, 2012 // 分类:OpenWrt // 3 Comments

查看当前系统分区信息:

cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00020000 00020000 "CFE"
mtd1: 000dff00 00020000 "kernel"
mtd2: 00ee0000 00020000 "rootfs"
mtd3: 00840000 00020000 "rootfs_data"
mtd4: 00020000 00020000 "nvram"
mtd5: 00fc0000 00020000 "linux"

备份系统CFE:

dd if=/dev/mtd0 of=/mnt/cfe.bin

备份恢复Openwrt系统配置:

#备份自定义系统信息,包括新安装软件
dd if=/dev/mtd3 of=/mnt/overlay.bin
#恢复备份设置
mtd -r write /mnt/overlay.bin rootfs_data
#仅备份系统配置
sysupgrade -b /mnt/back.tar.gz
#恢复系统配置
sysupgrade -r /mnt/back.tar.gz

恢复Openwrt系统默认设置:

rm -rf /overlay/* && reboot
#删除/overlay分区所有文件,重启即恢复默认设置
mtd -r erase rootfs_data
#使用mtd清除/overlay分区信息后重启即恢复默认设置

刷新系统:

#使用mtd更新系统
mtd -r write openwrt.bin linux
#刷机并恢复系统配置,推荐
sysupgrade -f /mnt/back.tar.gz img.bin

Ubuntu/CentOS下编译OpenWRT固件

发布时间:August 10, 2012 // 分类:OpenWrt // 2 Comments

Ubuntu安装编译环境:

apt-get install gcc g++ binutils patch bzip2 flex bison make autoconf gettext texinfo unzip sharutils\ 
subversion libncurses5-dev ncurses-term zlib1g-dev 

CentOS安装编译环境:

yum install autoconf binutils bison bzip2 flex gawk gcc gcc-c++ gettext make ncurses-devel patch \
unzip wget zlib-devel

编译以非root用户运行,新建用户:

useradd -m openwrt
su -l openwrt

获取源码:

#开发版
#svn co svn://svn.openwrt.org/openwrt/trunk 
#10.03
#svn co svn://svn.openwrt.org/openwrt/branches/backfire
#12.09
#svn co svn://svn.openwrt.org/openwrt/branches/attitude_adjustment
#14.07
svn co svn://svn.openwrt.org/openwrt/branches/barrier_breaker
#指定svn版本
svn co svn://svn.openwrt.org/openwrt/branches/barrier_breaker -r 42625 
cd barrier_breaker
./scripts/feeds update -a
./scripts/feeds install -a

或Git获取源码:

#开发版
git clone git://git.openwrt.org/openwrt.git
#14.07
git clone git://git.openwrt.org/14.07/openwrt.git

更多见:
http://wiki.openwrt.org/doc/howto/buildroot.exigence#trunk_main_development_tree
https://dev.openwrt.org/wiki/GetSource
进入编译选项:

make menuconfig

可以在编译前添加/修改配置文件,所在目录:

package/base-files/files/

编译固件,编译成功后固件在当前目录bin目录下,可以先编译x86使用vmware测试openwrt固件

make
-j n #多线程,可使用CPUx2
V=99 #详细输出

编译单个软件,进入编译选项选择要编译的软件后,如果没有make需执行以下:

make tools/install
make toolchain/install

然后编译指定的软件:

make package/name/compile

遇到的问题:
/target-i386_i486_uClibc-0.9.33.2/stamp/.tools_install_yynyynynynyyyyyyyyyynyyyyyyyynyyyynyyyynnyynnnyyyy] Error 2
编译gcc的问题,使用系统自带gcc正常,见https://dev.openwrt.org/ticket/17805
然后又遇到barrier_breaker/include/toplevel.mk:171: recipe for target 'world' failed
删除之前gcc编译生成的文件,见https://dev.openwrt.org/ticket/11175

make dirclean

Centos5.8安装使用多功能网络工具hping3

发布时间:August 9, 2012 // 分类:网络工具 // No Comments

Hping3可以自定义发送多种类型的数据包,可以用来测试网络及服务器的安全。
Centos下安装:

yum install libpcap-devel tc-devel
ln -s /usr/include/pcap-bpf.h /usr/include/net/bpf.h
wget http://www.hping.org/hping3-20051105.tar.gz
tar zxvf hping3-20051105.tar.gz 
cd hping3-20051105
./configure 
make 
make install

使用参数:

usage: hping host [options]
  -c  --count     包数量
  -i  --interval  包间隔,默认单位秒
      --fast      u10000,每秒10个,u单位微秒
      --faster    u1000,每秒100个
      --flood      疯狂模式,尽最大能力发包,不显示回应。
  -n  --numeric   不进行域名解析
  -q  --quiet     安静模式,不输出详细信息
  -I  --interface 指定网卡界面,默认为路由网卡
  -V  --verbose   输出详细信息
Mode
  default mode     TCP
  -0  --rawip      RAW IP mode
  -1  --icmp       ICMP mode
  -2  --udp        UDP mode
  -8  --scan       SCAN mode.
  -9  --listen     listen mode
IP
  -a  --spoof      源地址欺骗
  --rand-dest      随机目标地址
  --rand-source    随机源地址
  -t  --ttl        TTL数值,默认64
  -N  --id         设定ID,默认随机
ICMP
  -C  --icmptype   ICMP类型,默认请求
  -K  --icmpcode   ICMP代码,如0请求,8回显请求
      --force-icmp 强制ICMP
      --icmp-gw    ICMP重定向
UDP/TCP
  -s  --baseport   源端口,默认随机
  -p  --destport   目标端口,默认0
  -k  --keep       保持源端口
  -M  --setseq     set TCP sequence number
  -L  --setack     set TCP ack
  -F  --fin        set FIN flag
  -S  --syn        set SYN flag
  -R  --rst        set RST flag
  -P  --push       set PUSH flag
  -A  --ack        set ACK flag
  -U  --urg        set URG flag
Common
  -d  --data       数据大小,默认0
  -E  --file       从文件中发送

应用示例:
端口扫描:

hping3 --scan 1-100 -S 192.168.1.1 
Scanning 192.168.1.1 (192.168.1.1), port 1-100
100 ports to scan, use -V to see all the replies
+----+-----------+---------+---+-----+-----+-----+
|port| serv name |  flags  |ttl| id  | win | len |
+----+-----------+---------+---+-----+-----+-----+
   21 ftp        : .S..A...  64     0  5840    46
   22 ssh        : .S..A...  64     0  5840    46
   53 domain     : .S..A...  64     0  5840    46
   80 www        : .S..A...  64     0  5840    46
All replies received. Done.

SYN Flooding

hping -S -i u1000 192.168.1.1 -a 8.8.8.8

ICMP Flooding

hping -1 -i u1000 192.168.1.1 -a 8.8.8.8
分类
最新文章
最近回复
  • opnfense: 谢谢博主!!!解决问题了!!!我之前一直以为内置的odhcp6就是唯一管理ipv6的方式
  • liyk: 这个方法获取的IPv6大概20分钟之后就会失效,默认路由先消失,然后Global IPV6再消失
  • 海运: 不好意思,没有。
  • zongboa: 您好,請問一下有immortalwrt設定guest Wi-Fi的GUI教學嗎?感謝您。
  • 海运: 恩山有很多。
  • swsend: 大佬可以分享一下固件吗,谢谢。
  • Jimmy: 方法一 nghtp3步骤需要改成如下才能编译成功: git clone https://git...
  • 海运: 地址格式和udpxy一样,udpxy和msd_lite能用这个就能用。
  • 1: 怎么用 编译后的程序在家里路由器内任意一台设备上运行就可以吗?比如笔记本电脑 m参数是笔记本的...
  • 孤狼: ups_status_set: seems that UPS [BK650M2-CH] is ...