上周因为需要重启一台虚拟机,结果发现半年前设置的密码忘记了。没办法,尝试进linux单用户重置。可xenserver不想实体机那么方便,默认的console界面不让你按e进去编辑grub启动项目。查了老半天手册,尝试出一下两个方式:

 
1.通过xencenter管理最为简便,在虚拟机名称上右键,Properties–>Startup Options–>OS Boot Parameters–>将boot parameters的默认项目graphical utf8修改为graphical utf8 single
 
2.基本思路:修改虚拟机linux系统的bootload文件。但是虚拟机此时无法进去,如果编辑呢,xenserver提供了一个接口,能让你在宿主机上编辑虚拟机boot分区所在磁盘块文件。下边来讲一讲步骤:
 
i.#xe vm-list
 
查询到需要修改boot文件(grub)所在的vm的uuid
 
ii.#xe-edit-bootloader -u <linux_vm_uuid> -p <partition_number>
 
通过这条指令可以打开vm 的grug.conf文件。如何修改grub.conf文件里头将机器从单用户启动就不用说了吧^_^