
# 制作轻量算力节点服务器操作系统
#### 场景描述
当前轻量算力节点服务器操作系统不满足用户诉求时，您可以使用BMS或ECS的制作镜像功能，将当前操作系统保存为新的镜像，方便用于其他轻量算力节点。
#### 约束限制
制作镜像需满足以下条件：当前轻量算力节点服务器状态为停止状态。
制作的镜像仅支持基于轻量算力节点当前的操作系统制作新的镜像，不支持其他场景制作镜像，例如从ISO开始制作等。
#### 制作操作系统步骤
1. 制作操作系统镜像前需要先清理一些临时文件，否则会导致镜像运行故障。登录轻量算力节点服务器中，清理操作系统中临时文件。可以执行以下命令，也可以制作成脚本批量运行。清理脚本参考[临时文件清理脚本]。
   1. 执行下面命令，清理用户登录记录。
      ```
      echo > /var/log/wtmp
      echo > /var/log/btmp
      ```
      
   
   2. 执行下面命令，清理相应目录下的临时文件。
      ```
      rm -rf /var/log/cloud-init*
      rm -rf /var/lib/cloud/*
      rm -rf /var/log/network-config.log
      rm -rf /opt/huawei/network_config/network_config.json
      rm -rf /opt/huawei/port_config/uplink_hash_config.log
      rm -rf /opt/huawei/firmware_check/firmware_check.log
      ```
      
   
   3. 执行下面命令，清理残留配置信息。
      - CentOS/EulerOS/HCE操作系统：查看"/etc/sysconfig/network-scripts/"文件夹下有哪些以"ifcfg"开头的文件，删除"ifcfg-lo"以外的以"ifcfg"开头的文件，以"ifcfg-lo"开头的文件不删除。 查看文件命令：
        ```
        ll /etc/sysconfig/network-scripts/
        ```
        删除文件命令：
        ```
        rm -rf /etc/sysconfig/network-scripts/ifcfgxxx
        ```
        
      
      - Ubuntu操作系统：
        ```
        rm -rf /etc/network/interfaces.d/50-cloud-init.cfg
        ```
        
       
   
   4. 执行下面命令清除参数面网络信息。
      ```
      echo >/etc/netplan/roce.yaml
      echo > /etc/hccn.conf
      ```
      
   
   5. 执行下面命令清除历史操作记录。
      ```
      history -w;echo > /root/.bash_history;history -c;history -c;history -c;
      ```
      
    
2. 将轻量算力节点服务器关机。
   1. 登录[ModelArts管理控制台](https://console.huaweicloud.com/modelarts)，在左侧导航栏中，选择"资源管理 \> 轻量算力资源 \> 轻量算力节点"页面。
   
   2. 在资源列表页的"普通节点"页面，单击右侧操作列的"关机"，对轻量算力节点资源对应的服务器，执行关机操作。
    
3. 在轻量算力节点服务器详情页，通过裸金属服务器地址或弹性云服务器地址跳转到对应控制台详情页。
   图1轻量算力节点服务器详情页   
   ![](https://support.huaweicloud.com/resmgmt-modelarts/figure/zh-cn_image_0000002423220830.png)
   ![](https://support.huaweicloud.com/resmgmt-modelarts/figure/zh-cn_image_0000002456940037.png)
   
4. 在裸金属服务器或ECS服务器控制台，返回到服务器列表页，在操作列中执行制作镜像操作。
   图2ECS服务器中创建镜像   
   ![](https://support.huaweicloud.com/resmgmt-modelarts/figure/zh-cn_image_0000002395658873.png)
   
   图3裸金属服务器制作镜像   
   ![](https://support.huaweicloud.com/resmgmt-modelarts/figure/zh-cn_image_0000002361995772.png "点击放大")
   在制作镜像界面，填入制作镜像的名称、企业项目，并勾选协议，单击下一步即可制作镜像，制作成功的镜像会保存在租户的IMS镜像服务的私有镜像列表中。详细操作请分别参见[ECS制作镜像](https://support.huaweicloud.com/usermanual-ecs/ecs_03_0202.html#section3)和[BMS制作镜像](https://support.huaweicloud.com/usermanual-bms/bms_01_0026.html)文档。
   制作完的镜像后续可以用于其他轻量算力节点，具体可以参考[切换或重置轻量算力节点服务器操作系统](https://support.huaweicloud.com/resmgmt-modelarts/usermanual-server-0020.html)。
   
 
 #### 临时文件清理脚本
```
#!/bin/bash
# 执行下面命令，清理用户登录记录。
echo > /var/log/wtmp
echo > /var/log/btmp
# 执行下面命令，清理相应目录下的临时文件。
rm -rf /var/log/cloud-init*
rm -rf /var/lib/cloud/*
rm -rf /var/log/network-config.log
rm -rf /opt/huawei/network_config/network_config.json
rm -rf /opt/huawei/port_config/uplink_hash_config.log
rm -rf /opt/huawei/firmware_check/firmware_check.log
# 执行下面命令，清理残留配置信息。
## CentOS/EulerOS/HCE操作系统：
## 查看“/etc/sysconfig/network-scripts/”文件夹下有哪些以“ifcfg”开头的文件，删除“ifcfg-lo”以外的以“ifcfg”开头的文件。以“ifcfg-lo”开头的文件不删除。
find /etc/sysconfig/network-scripts/ -name 'ifcfg*' ! -name 'ifcfg-lo' -type f | xargs rm -f
## Ubuntu操作系统：
rm -rf /etc/network/interfaces.d/50-cloud-init.cfg
# 执行下面命令清除参数面网络信息。
echo > /etc/netplan/roce.yaml
echo > /etc/hccn.conf
# 执行下面命令清除历史操作记录。
history -w;echo > /root/.bash_history;history -c;history -c;history -c;
echo > ~/.bash_history
exec bash
```
