ActPi's Blog

Share & Record

需求

CentOS 7 的版本安装好之后默认自带的是 gcc 4.8,为了支持编译 c++ 的更高版本需要安装高版本的 gcc,
由于手动下载编译高版本可能会导致一些不可预料的意外情况,故采用安装 devtoolset工 具来解决。

安装步骤

  1. 安装 centos-release-scl
    sudo yum install -y centos-release-scl

  2. 安装 devtoolset,这里可自行对照选择相应的版本号
    sudo yum install -y devtoolset-8

  3. 激活 gcc 环境

    1
    2
    3
    4
    5
    # 当前终端生效,临时使用一次的情况
    scl enable devtoolset-8 bash
    # 永久生效,写入 /etc/profile
    echo "source /opt/rh/devtoolset-8/enable" >> /etc/profile
    source /etc/profile
  4. 验证结果
    gcc -V

yum error

安装 centos-release-scl 后yum 报错:Cannot find a valid baseurl for repo: centos-sclo-rh/x86_64

1
2
3
4
5
6
cd /etc/yum.repos.d/
vim centos-sclo-rh.repo

注释 mirrorlist 行
baseurl 修改为:baseurl=http://vault.centos.org/centos/7/sclo/$basearch/rh/

LVM 简介

LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是 Linux 环境下对磁盘分区进行管理的一种机制。LVM 将一个或多个物理卷(PV)虚拟为一个卷组(VG),相当于一个大的硬盘,我们可以在上面划分一些逻辑卷(LV)。当卷组的空间不够使用时,可以将新的磁盘分区加入进来。也可以从卷组剩余空间上划分一些空间给空间不够用的逻辑卷使用。

扩容场景

通过LVM创建的逻辑卷磁盘空间不足需要新增硬盘进行扩容,大多数情况为添加一块物理磁盘并将此磁盘空间全部添加到指定分区。

阅读全文 »

什么是 GitLab CI

GitLab CI 是GitLab内置的进行持续集成的工具,只需要在仓库根目录下创建 .gitlab-ci.yml 文件,并配置GitLab Runner;每次提交代码的时候,gitlab 将自动识别并且使用 GitLab Runner 执行任务。

阅读全文 »

一个纯bash实现外部命令的脚本集合

读取文件到一个字符串中

替代 cat 命令.

1
file_data="$(<"file")"

创建一个空文件

替代 touch.

1
2
# 简短的方式.
>file
阅读全文 »

安装 CMake

  1. 安装gcc等依赖程序
    yum install -y gcc gcc-c++ wget

  2. 获取CMake源码包
    wget https://cmake.org/files/v3.23/cmake-3.23.2.tar.gz

  3. 解压并安装

    1
    2
    3
    4
    tar -xzvf cmake-3.23.2.tar.gz
    cd cmake-3.23.2
    ./bootstrap
    gmake && install
阅读全文 »

安装桌面环境

!!! info
安装了Centos任意桌面版可跳过此步骤

服务依赖于桌面环境的运行,CentOS7 默认最小安装是不带桌面环境的,所以安装 VNC 之前需要首先安装桌面环境

1
2
3
4
5
6
## 安装 GNOME 桌面环境
sudo yum groupinstall "GNOME Desktop"
## 设置默认启动方式为界面启动
sudo ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
## 重启服务器
sudo reboot
阅读全文 »

在使用Gitlab进行CI/CD的时候,希望在任务结束的时候(成功或失败)能有对应的消息通知机制, 通过钉钉发送消息。

前提

钉钉群添加机器人获取token,secret 备用

阅读全文 »
0%