分类 默认分类 下的文章

显示当前Raid信息

sudo ./storcli /c0 show

创建新阵列

s?这个盘设置为good

sudo ./storcli /c0/e32/s[?] set good

创建新的阵列

sudo ./storcli /c0 add vd r0 drives=32:[?]

列出所有阵列

sudo ./storcli /c0/vall show

列出所有磁盘

lsblk

创建新分区

sudo parted /dev/sd[?] mklabel gpt
sudo parted -a optimal /dev/sd[?] mkpart primary ext4 0% 100%

格式化

sudo mkfs.ext4 /dev/sdb[?]

背景

之前课题组使用 GitLab 进行版本控制,但在使用过程中遇到了以下问题:

  1. GitLab 运行较为缓慢,尤其在资源有限的服务器上。
  2. 之前的 GitLab 部署未使用 Docker 进行管理,维护较为繁琐。
  3. GitLab 默认的 SSH 端口无法轻松自定义,给远程访问带来了一些不便。

因此,决定采用 Gitea 作为替代方案,并通过 Docker 进行管理,以提升部署和维护的便捷性。

部署方案

采用 Docker 运行 Gitea,使用 docker-compose 进行管理,具体 docker-compose.yml 配置如下:

networks:
  gitea:
    external: false

services:
  server:
    image: docker.gitea.com/gitea:latest
    container_name: gitea
    environment:
      - USER_UID=1000
      - USER_GID=1000
      - GITEA__database__DB_TYPE=mysql
      - GITEA__database__HOST=db:3306
      - GITEA__database__NAME=gitea
      - GITEA__database__USER=gitea
      - GITEA__database__PASSWD=gitea
    restart: always
    networks:
      - gitea
    volumes:
      - /srv/gitea/gitea:/data
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
    ports:
      - "3000:3000"
      - "233:22"
    depends_on:
      - db

  db:
    image: docker.io/library/mysql:8
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=gitea
      - MYSQL_USER=gitea
      - MYSQL_PASSWORD=gitea
      - MYSQL_DATABASE=gitea
    networks:
      - gitea
    volumes:
      - /srv/gitea/mysql:/var/lib/mysql

部署步骤

  1. 安装 Docker 和 Docker Compose
  2. 创建 Gitea 目录并初始化 docker-compose.yml 文件
  3. 添加反向代理到127.0.0.1:3000

总结

相比 GitLab,Gitea 运行更轻量级,配合 Docker 部署管理更加方便。通过自定义 SSH 端口和 Web 访问端口,可以更好地适应不同网络环境。整个过程简单高效,适用于小型团队和个人使用。

背景

上个月发现 PyCharm 的历史记录有时间限制,无法长期保留代码修改记录。因此,改用本地 Git 进行版本管理。然而,随着课题组内协作需求的增加,代码传输方式(如 U 盘和微信)逐渐显得不便。为了解决这一问题,我们决定在本地服务器上部署 GitLab,以便团队成员可以高效协作。

部署步骤

1. 使用宝塔面板安装 GitLab

  • 安装宝塔面板
    在服务器上安装宝塔面板,方便管理 GitLab 相关服务。
  • 安装 GitLab
    通过宝塔面板安装 GitLab 并进行基本配置。
    2025-03-12T09:56:07.png

2. 设置语言

GitLab 默认语言设置在个人账户内修改,系统设置中不包含中文。

2025-03-12T09:57:46.png

3. 启用 SSL 加密

为了保证通信安全,我们使用 SSL 证书加密 GitLab 访问。

3.1 申请并配置 SSL 证书

我们使用 阿里云DNS 解析 到本地局域网。

3.2 修改 GitLab 配置文件

  • 修改 gitlab.rb 配置 SSL

    external_url 'https://git.j142.vip'
    
    nginx['ssl_certificate'] = "/www/server/panel/vhost/ssl/git.j142.vip/fullchain.pem"
    nginx['ssl_certificate_key'] = "/www/server/panel/vhost/ssl/git.j142.vip/privkey.pem"
  • 修改 gitlab.yml 确保 HTTPS 访问

    gitlab:
      ## Web server settings (note: host is the FQDN, do not include http://)
      host: git.j142.vip
      port: 80
      https: false
  • 开启LFS

    ### Git LFS
    gitlab_rails['lfs_enabled'] = true
    gitlab_rails['lfs_storage_path'] = "/var/opt/gitlab/gitlab-rails/shared/lfs-objects"

总结

通过本次部署,课题组成员可以在本地 GitLab 进行协作,不再依赖 U 盘传输或微信传代码,提高了效率和代码管理的规范性。

针对232机器:

设备信号:

arcconf list

Controllers found: 1
----------------------------------------------------------------------
Controller information
----------------------------------------------------------------------
   Controller ID             : Status, Slot, Mode, Name, SerialNumber, WWN
----------------------------------------------------------------------
   Controller 1:             : Optimal, Slot 2, RAID (Hide RAW), PM8204-2GB, RAPA17EK0665A40, 56C92BF006F6FB1E

Command completed successfully.

使用arcconf查看raid信息:

/root/linux_arcconf/arcconf getconfig 1

2025-01-01T07:30:11.png
raid需要相同磁盘大小,所以需要 0-5组成一个raid,6-7组成一个raid

针对220的机器

设备型号:

lspci | grep -i raid
1a:00.0 RAID bus controller: Broadcom / LSI MegaRAID SAS-3 3008 [Fury] (rev 02)

使用storcli

/opt/MegaRAID/storcli/storcli64 /c0/vall show

2025-01-01T08:10:10.png
0-1组一个raid,2-3组一个raid,4-7组一个raid

预计打算

  1. 先把220服务器同步到232服务器,重做220的raid
  2. 把232服务器同步到220服务器,重做232的raid

每一次断电后服务器的显卡都会消失,原来是有原因的

下载DKMS

它能够维护内核外的驱动程序,并且在内核版本变化后自动生成新的模块。

sudo apt-get install dkms

查看本机连接不上的驱动版本

ls -l /usr/src/ 

2024-12-15T03:45:38.png

使用dkms重新安装适合驱动

sudo dkms install -m nvidia -v 550.120