redhat虚拟机创建,shell脚本创建,快照

本文详细介绍了如何使用Redhat创建虚拟机,包括通过Virtual Machine Manager手动创建和使用shell脚本自动化创建。还讲解了虚拟机快照的创建与应用,以及虚拟机配置信息的查看。最后提到了一些常用的虚拟机管理命令。

建立虚拟机需要镜像文件。自己去整,不做介绍。

1,打开Virtual Machine Manager

终端命令virt-manager

或者右上角Applications  下拉菜单System Tools,右边列表中Virtual Machine Manager

 

2,虚拟机的建立

点击右上角的电视图标开始新建

第一个是用iso镜像创建

点击brower选择镜像路径

内存大小设置,一般没有特殊要求,都选默认值。

硬盘大小,默认值,感觉不够用的话多加点。

虚拟机名字,finish完成。

之后重启就进入到系统安装界面,这里主要说虚拟机的用法,系统安装比较简单,就不讲了。

 

3,shell脚本自动安装

vim vm_creat.sh    ##脚本文件
 

#!/bin/bash     
  virt-install \      表示该脚本是用来安装虚拟机的
  --cdrom /home/kiosk/Desktop/rhel-server-7.0-x86_64-dvd.iso \  安装源的位置
  --ram 1024 \        分配给虚拟机的内存大小为1024M
  --cpus 1 \          分配给虚拟机的cpu核数为1
  --disk /var/lib/libvirt/images/$1.qcow2,size=9,bus=virtio \    磁盘信息(在已有的虚拟机中查看)
  --name $1 \         虚拟机的名称$1表示在执行脚本命令后的第一串字符为虚拟机名称
  --network source=br0,model=virtio &    网络信息

可以看到脚本文件中有个变量$1,运行脚本是后面加上要创建的虚拟机名称,

eg:    /shell/vm_creat.sh linux        ##运行后一个叫linux的虚拟机就创建好了。

4,虚拟机快照

cd /var/lib/libvirt/images        ##虚拟机文件目录,这里面保存了电脑上的虚拟机文件。

 

qemu-img create -f qcow2 -b jay-1.qcow2 node1.qcow2    ##创建虚拟机快照

  create的意思是创建虚拟机
  -f qcow2是以qcow2的格式创建
  -b jay-1.qcow2是以jay-1为本体拍照,jay-1.qcow2是备份的对象

  node1.qcow2是快照的名称

创建完后这个文件夹下就有一个创建的node1.qcow2的快照文件。

然后我们用这个快照创建一个虚拟机,

这里选第四个,用快照创建,然后一步步(和上面类似)就创建完了,

快照虚拟机的好处是当你的虚拟机崩溃后,只需要重新创建(或覆盖)个快照,就能恢复到以前的虚拟机,

5,虚拟机的配置信息

/etc/libvirt/qemu/xxx.xml    ##xxx为虚拟机名字,这里面保存了虚拟机的配置信息,包括内存大小,名字等。   

cd /var/lib/libvirt/images/xxx.qcow2    ##虚拟机文件

6,shell自动创建快照

#!/bin/bash

qemu-img create -f qcow2 -b \
/var/lib/libvirt/images/$1.qcow2 \
/var/lib/libvirt/images/$2.qcow2    ##快照创建

virt-install \        
##--cdrom /home/kiosk/Desktop/rhel-server-7.0-x86_64-dvd.iso \
--ram 1024 \
--cpus 1 \
--disk /var/lib/libvirt/images/$1.qcow2,size=9,bus=virtio \
--name $2 \
--network source=br0,model=virtio \
--import &      ##虚拟家快照安装

注意有两个变量。

 

7,虚拟机中几个常用的命令

virsh list --all    ##显示主机中的所有虚拟机
virsh start desktop  ##打开指定的虚拟机    
virt-viewer desktop  ##显示打开的虚拟机
virsh shutdown desktop  ##关闭指定虚拟机(可能会没有任何作用)

 

virsh destory desktop   ##强行关闭虚拟机virsh list --all ##装的虚拟机

 

virsh create jay.xml    ##物理信息打开虚拟机,首先要有对应的虚拟机文件
virsh define jay.xml ##一次性打开,关闭后消失
 

### Redhat 虚拟机Shell 脚本后台运行方法 在 Redhat 虚拟机环境中,可以通过多种方式让 shell 脚本在后台运行。以下是几种常见的实现方法: #### 使用 `&` 符号 通过在脚本命令后面添加 `&` 符号可以让脚本以后台模式启动[^1]。这种方式简单易用,适合临时性的后台任务。 ```bash ./vm_creat.sh 参数名 & ``` 此方法会立即将脚本放入后台运行,并返回控制权到当前终端。 --- #### 使用 `nohup` 命令 如果希望即使关闭终端也能继续运行脚本,则可以使用 `nohup` 命令[^2]。它能够忽略挂起信号(SIGHUP),从而保持进程持续运行。 ```bash nohup ./vm_creat.sh 参数名 > output.log 2>&1 & ``` 上述命令中的 `> output.log 2>&1` 部分用于将标准输出和错误输出重定向至指定的日志文件 `output.log` 中。 --- #### 使用 `screen` 或 `tmux` 对于更复杂的场景,推荐使用 `screen` 或 `tmux` 工具来管理后台会话。这些工具允许用户创建独立于终端窗口的会话,在断开连接后再重新附着回去。 ##### 创建一个新的 screen 会话并运行脚本: ```bash screen -S mysession ./vm_creat.sh 参数名 Ctrl+A D (分离 session) ``` 之后可通过以下命令重新进入该会话: ```bash screen -r mysession ``` 同样地,也可以使用 tmux 实现类似功能。 --- #### 设置定时任务 (Cron Job) 当需要定期执行某些操作时,可以借助 cron 来安排脚本自动运行。编辑 crontab 文件以定义计划任务: ```bash crontab -e ``` 然后添加如下条目(假设每天凌晨两点执行一次): ```cron 0 2 * * * /path/to/vm_creat.sh 参数名 >> /var/log/script_output.log 2>&1 ``` 这会让系统按照设定的时间表自动触发脚本。 --- #### 注意事项 - 如果从 Windows 编辑器复制粘贴脚本到 Linux 平台上,请先转换换行符格式以防报错: ```bash yum install dos2unix -y dos2unix vm_creat.sh ``` - 确保赋予脚本可执行权限: ```bash chmod +x vm_creat.sh ``` 以上方法均适用于 Redhat 及其衍生版本的操作环境。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值