CentOS 8安装 KVM+Cockpit 作者: HAS 时间: 2025-11-09 分类: 学习笔记 评论 最小安装镜像源: ``` https://mirrors.aliyun.com/centos/8/BaseOS/aarch64/os ``` CentOS 8 系统软件源(dnf/yum) # 备份原 repo ```shell sudo mkdir -p /etc/yum.repos.d/backup sudo mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/ ``` # 下载阿里云 CentOS-Vault.repo ```shell sudo curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo ``` # 清理并生成缓存 ```shell sudo dnf clean all sudo dnf makecache ``` ## 1,安装 Cockpit 1. 安装kvm ```shell yum install qemu-kvm libvirt libvirt-daemon virt-install virt-manager libvirt-dbus systemctl start libvirtd.service ``` * 注意:如果访问虚拟机,点击虚拟机Create VM按钮是灰色的,就表示没有安装virt-install包 2. 首先执行如下命令安装 Cockpit: ```shell dnf install cockpit cockpit-machines ``` 2.安装完毕后执行如下命令启动 Cockpit 服务并设置为自动启动: ```shell systemctl start cockpit.socket systemctl enable cockpit.socket ``` 3.接着执行如下命令查看是否启动成功: ```shell systemctl status cockpit.socket ``` 4.由于 Cockpit 默认使用的是 9090 端口,执行如下命令打开这个端口: ```shell firewall-cmd --permanent --add-port=9090/tcp firewall-cmd --reload ``` 另外: ### 1.创建网桥 #### 在网络中点击添加网桥,设置名称br0,选择ens192上网的端口,最后点击确定就创建成功了 ### 2、修改默认kvm存储池 注意:kvm存储池默认存放在/var/lib/libvirt/images,也就是说,你所创建的虚拟机会生成在该目录下,建议挂载大磁盘空间,单独存放。 修改kvm存储池方法有很多种,我这里使用ln软连接来实现,我这里将libvirt整个目录软链存放在/data/kvm下。 ```shell mkdir -p /data/kvm mv /var/lib/libvirt /data/kvm/ ln -sv /data/kvm/libvirt /var/lib/libvirt ``` 独创建个目录用于存放ISO镜像包。 ```shell mkdir -p /data/iso ``` > !!!! 如果虚拟机不能启动需要 将 SELinux 设为宽容模式 ```shell sudo setenforce 0 ``` ### 3、磁盘扩容 virsh domblklist <虚拟机名称> 使用 qemu-img 扩容磁盘(以 qcow2 为例) #### 检查当前大小(可选) ```shell qemu-img info /var/lib/libvirt/images/centos-stream8_1.qcow2 ``` #### 扩容到 30GB ```shell sudo qemu-img resize /var/lib/libvirt/images/centos-stream8_1.qcow2 +20G ``` #### 或直接指定总大小: ```shell sudo qemu-img resize /var/lib/libvirt/images/centos-stream8_1.qcow2 30G ```
GBase 8s PHP8 作者: HAS 时间: 2024-10-10 分类: PHP 评论 1.安装完数据库之后需要安装 CSDK 解压 clientsdk_3.5.1_3X1.tar 然后执行 `[root@localhost csdk]# ./installclientsdk -i silent -DUSER_INSTALL_DIR=/opt/gbase -DLICENSE_ACCEPTED=TRUE ` DUSER_INSTALL_DIR 为数据库安装地址 参考 https://gbasedbt.com/index.php/archives/493/ 编译 pdo_gbasedbt.os 参考 https://gbasedbt.com/index.php/archives/68/ 注意 需要配置当前用户文件夹下面 的 bash_profile 文件 export GBASEDBTDIR=/opt/gbase export GBASEDBTSERVER=gbase01 export ONCONFIG=onconfig.$GBASEDBTSERVER export PATH=$GBASEDBTDIR/bin:$GBASEDBTDIR/sbin:$GBASEDBTDIR/sbin:${PATH} export GBASEDBTSQLHOSTS=/opt/gbase/etc/sqlhosts export SERVER_LOCALE=zh_CN.utf8 export DB_LOCALE=zh_CN.utf8 export CLIENT_LOCALE=zh_CN.utf8 export GL_USEGLU=1 # export NODEFDAC=yes export DBDATE="Y4MD-" export DBACCESS_SHOW_TIME=1 同时需要编辑 PHP-FPM 的 systemd 服务文件 [Service] Environment="GBASEDBTDIR=/opt/gbasedbt" Environment="ODBCINI=/etc/odbc.ini" Environment="LD_LIBRARY_PATH=/opt/gbasedbt/lib:/opt/gbasedbt/lib/cli:/opt/gbasedbt/lib/esql:$LD_LIBRARY_PATH"
TP5 报错 Cannot declare class Composer\Autoload\ComposerStaticInitc **** because the name is already in use 作者: HAS 时间: 2022-01-14 分类: PHP 评论  ## 原因是 TP5框架会自动引入 资源,不需要再次引用 autoload.php 把下面的代码注释了就行 ```php require dirname(__FILE__) .'/../vendor/autoload.php'; ```
Vue 子组件 修改父组件值 作者: HAS 时间: 2021-12-08 分类: Vue 评论 记录一下,防止自己忘了 ### 密码验证的组件:  ### 需要的功能: 当用户点击验证按钮并且密码正确时 将验证结果返回给父组件 这里是父组织使用子组件: 1.父组件定义公用值,就是为了让子组件用的,并把值给子组件,使用bind 把值绑给他 ```html ``` 2.然后在子组件里进行接收  3.子组件触发改动事件  在触发之前需要在父组件定义一个v-on事件和一个接收方法 接收方法:  我这里定义的是validationpwd,后面的是传递值 触发时: this.$emit("validationSecondary",1); 
PHP 生成二维码API 作者: HAS 时间: 2021-06-16 分类: PHP 评论 **手动生成地址**:https://qrcode.haser.top/ ------------ **API地址**:https://qrcode.haser.top/api.php?qrcode | 参数 | 是否必须 |说明| | ------------ | ------------ | | data | 是 | 生成的内容| | size | 否 |生成二维码的大小 取值范围:1-10| **完整示例**:https://qrcode.haser.top/api.php?qrcode&data=haser.top/&szie=9 生成效果: 