系统安装(一)CentOS 7 本地安装
CentOS与Ubuntu并称为Linux最著名的两个发行版,但由于笔者主要从事深度学习图像算法工作,Ubuntu作为谷歌和多数依赖库的亲儿子占据着最高生态位。但最近接手的一个项目里,甲方指定需要在CentOS7上运行项目代码,笔者被迫小小cos了一把运维的角色,在一台旧服务器上尝试配置了CentOS 7
一、安装介质准备
与大部分系统类似,CentOS7也需要一个安装盘之类的东西。首先我们需要下载iso文件:
对国内用户较为友好的是,CentOS官网提供了很多镜像站的下载链接,比如上图很明显的清华源和阿里云,下载ISO文件选择你需要的内核版本即可。
下一步使用ultraiso来从ISO文件制作硬盘镜像。首先用ultraiso打开ISO文件:
点击 启动-写入硬盘镜像
一些教程需要在写入前点击 便捷启动-写入新的驱动器引导扇区-Syslinux,在我这边的话,直接写入与提前写入引导都可以使用
出现刻录成功即可弹出u盘。
二、启动盘可能存在的bug
这是我在安装过程中遇到的一个问题,由于解决方式与启动盘制作有关,所以在安装前作说明。解决方法来源于这篇博客,感谢这位大佬。
-
复现条件:在UEFI启动而非MBR下使用启动盘进行安装
-
问题说明:出现如下提示
-
问题成因:CentOS7在安装过程中会按盘符进行搜索,但刻录u盘卷标可能与默认不一致或为空白,导致安装程序无法找到相关代码
-
解决办法:修改卷标与配置文件中对应部分
- 修改卷标。尽量避免使用空格等特殊符号和中文,尽量全部大写。卷标需低于十个字符
- 进入刻录后的u盘目录,分别编辑
EFI/BOOT/grub.cfg
、isolinux/isolinux.cfg
和isolinux/syslinux.cfg
,将其中的CentOS\x207\x20x86_64
字符串替换为你的卷标
三、进入安装过程
将启动盘插入待安装的PC或服务器,开机进入主机BIOS模式。如果主机开启了Secure Boot,在安装前将其关闭。
在Boot devices中选择启动盘,回车选择,等待弹出类似窗口:
选择第一项。由于前面设置了卷标,这里不会再报错。倘若你没有设置导致此处报错,则:
- 先在弹出的紧急模式bash中输入:
ls /dev/sd*
- 此处将会列出所有物理磁盘(/sda、/sdb…)及挂载点(/dev/sda1…)。若目标安装设备的磁盘为空,则此处有且仅会有最后一个物理磁盘有着挂载点,记下这个挂载点路径(如/dev/sdb4)
- 重启启动盘。待到上图界面后,按 e 进入配置编辑界面。
- 找到
hd:LABEL=CentOS\x207\x20x86_64 quiet
或类似语句。如何理解这行语句?就像前面说明的,安装程序会按照卷标(hd:LABEL)
为CentOS\x207\x20x86_64
的物理硬盘进行搜索,但我们刻录时的卷标不一定是这个,所以类似语句需改成hd:/dev/sdb4 quiet
,表示从此处寻找安装程序。修改后与下图类似:
- 按下 “ctrl +x” ,启动安装程序。
这样就可以进入图形安装界面。安装设置大同小异,可以参考:这篇博客。这里主要讲一下CentOS各挂载点及空间大小的设置。
/boot
:用于安装grub、存放Linux kernel以及initrd映像。这些都是启动时必需的东西,单独存在boot区便于管理。这个挂载点在安装结束后几乎不会再去添加或修改,500M即可。/boot/efi
:uefi分区安装专用,用于存储文件系统的引导文件。100~200M足够。SWAP
:用于物理硬盘与物理内存间进行数据交换。该挂载点的速度越快越好,大小通常设置为内存大小的0.5~2倍,取决于你内存和硬盘的速度,以及运行程序对内存的使用程度。也有博客认为过大的swap反而会掩盖服务器内存不足的问题,所以2G以下就行。我认为都很有道理,看你怎么选。/
:根目录,用户安装系统级程序及各用户目录。但通常情况下我们更加推荐这个目录只用于存储系统和系统程序。该目录推荐大小为50~300G,若你的物理磁盘空间够大,分配更多也是可以的。/home
:用户目录,用于存储用户数据,尽可能大,越大越好。/usr
:用于存放Unix操作系统软件资源。比如深度学习需要的cuda、cudnn等等,大点好,具体大小取决于实际用途,我分配了300G/var
:包括系统一般运行时要改变的数据。这个也建议分配一个大点的容量,以免服务器长时间运行跑满。我分配了50G。/opt
:用来安装附加软件包,比如firefox、email等等。我是做无界面的服务器来用,理论上不需要这个挂载点。设个几十G也可以。/tmp
:临时文件。理论上不用太大,但是根据之前的经验,使用jupyter notebook等回创建大量临时文件,建议分配100G。
四、安装结束
图形界面安装结束后,点击reboot重启至终端登录界面,代表安装成功:
相关文章:

系统安装(一)CentOS 7 本地安装
CentOS与Ubuntu并称为Linux最著名的两个发行版,但由于笔者主要从事深度学习图像算法工作,Ubuntu作为谷歌和多数依赖库的亲儿子占据着最高生态位。但最近接手的一个项目里,甲方指定需要在CentOS7上运行项目代码,笔者被迫小小cos了一…...

obsidian使用指南
插入代码块快捷键设置 插入代码块 用英文搜索快捷键名字 英文搜索的【Insert code block】对应的是 (6个点) 中文搜索的【代码块】对应的是 (2个点) 查看word、excel等非md文件设置 电脑端obsidian->设置->文件与链接->检测所有类型文件->…...

【ardunio】青少年机器人四级实操代码(2023年9月)
目录 一、题目 二、示意图 三、流程图 四、硬件连接 1、舵机 2、超声波 3、LED灯 五、程序 一、题目 实操考题(共1题,共100分) 1. 主题: 迎宾机器人 器件:Atmega328P主控板1块,舵机1个,超声波传感器1个&…...

MYSQL的存储过程
存储过程 存储过程是事先经过编译并存储在数据库中的一段 SQL 语句的集合,调用存储过程可以简化应用开发人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的。存储过程思想上很简单,就是…...
[kubernetes/docker] failed to resolve reference ...:latest: not found
问题描述: pod一直pending, kubectl describe pod ... 显示: Warning Failed 9s (x3 over 63s) kubelet Failed to pull image "mathemagics/my-kube-scheduler": rpc error: code NotFound desc failed to pull and unpack image "docker…...

彻底解决win11系统0x80070032
经过各种尝试,终于找到原因。第一个是电脑加密软件,第二个是需要的部分功能没有开启,第三个BIOS设置。个人觉得第三个不重要。 解决方法 笔记本型号 笔记本型号是Thinkpad T14 gen2。进入BIOS的按键是按住Enter键。 1、关闭山丽防水墙服务…...

解决因为修改SELINUX配置文件出错导致Faild to load SELinux poilcy无法进入CentOS7系统的问题
一、问题 最近学习Kubernetes,需要设置永久关闭SELINUX,结果修改错了一个SELINUX配置参数,关机重新启动后导致无法进入CentOS7系统,卡在启动进度条界面。 二、解决 多次重启后,在启动日志中发现 Faild to load SELinux poilcy…...
flask中的跨域处理-方法二不使用第三方库
方法1(第三方库) pip install flask-cors from flask import Flask from flask_cors import CORSapp = Flask(__name__) CORS(app, resources={r"/api/*": {"origins": ["http://localhost:63342", "http://localhost:63345"]}})方…...

矿山定位系统-矿井人员定位系统在矿山自动化安全监控过程中的应用
一,矿井人员定位系统现阶段使用的必要性 1,煤矿开采是一项非常特殊的工作,现场属于非常复杂多变的环境,井下信号极差,数据传输非常不稳定,人员安全难以保证,煤矿企业一直在研究如何使用更合适的…...

JS-ECharts-前端图表 多层级联合饼图、柱状堆叠图、柱/线组合图、趋势图、自定义中线、平均线、气泡备注点
本篇博客背景为JavaScript。在ECharts在线编码快速上手,绘制相关前端可视化图表。 ECharts官网:https://echarts.apache.org/zh/index.html 其他的一些推荐: AntV:https://antv.vision/zh chartcube:https://chartcub…...
【eslint】屏蔽语言提醒
在 JavaScript 中,ESLint 是一种常用的静态代码分析工具,它用于检测和提醒代码中的潜在问题和风格问题。有时候,在某些特定情况下,你可能希望临时屏蔽或禁用某些 ESLint 的提醒信息,以便消除不必要的警告或避免不符合项…...

【python】入门第一课:了解基本语法(数据类型)
目录 一、介绍 1、什么是python? 2、python的几个特点 二、实例 1、注释 2、数据类型 2.1、字符串 str 2.2、整数 int 2.3、浮点数 float 2.4、布尔 bool 2.5、列表 list 2.6、元组 tuple 2.7、集合 set 2.8、字典 dict 一、介绍 1、什么是python&…...

csa从初阶到大牛(练习题2-查询)
新建2个文件d1.txt d2.txt ,使用vim打开d1.txt 输入“Hello World”字符串,将b1.txt 硬链接到b2.txt ,查看2个文件的硬连接数 # 新建文件d1.txt和d2.txt touch d1.txt d2.txt# 使用vim编辑d1.txt并输入文本"Hello World" vim d1.txt# 创建硬链接b2.…...

【视觉SLAM入门】8. 回环检测,词袋模型,字典,感知,召回,机器学习
"见人细过 掩匿盖覆” 1. 意义2. 做法2.1 词袋模型和字典2.1.2 感知偏差和感知变异2.1.2 词袋2.1.3 字典 2.2 匹配(相似度)计算 3. 提升 前言: 前端提取数据,后端优化数据,但误差会累计,需要回环检测构建全局一致的地图&…...

SpringBean的生命周期
SpringBean的生命周期 SperingBean的生命周期是从Bean实例化之后,即通过反射创建出对象之后,到Bean成为一个完整对象,最终存储到单例池中,这个过程被称为Spring Bean的生命周期。Spring Bean的生命周期大体上分为三个阶段 Bean的…...

uni-app 之 picker选择器
uni-app 之 picker选择器 同步滚动:开 uni-app 之 picker选择器 一、普通选择器 二、多列选择器 三、时间选择器 四、日期选择器 一、普通选择器 <template><view><picker change"bindPickerChange" :value"index" :range&q…...

整合车辆出险报告Api接口,轻松管理车险理赔!
随着车辆保有量的不断增加,车辆出险的情况也越来越普遍。对于车主来说,如何高效地管理车险理赔,处理保险事故是非常重要的。这时候我们就可以借助整合车辆出险报告API接口,实现快速定位理赔信息,轻松管理车险理赔。 一…...

eNSP基础网络学习-v02
一、eNSP 1.什么是eNSP eNSP(Enterprise Network Simulation Platform)是一款由华为提供的免费的、可扩展的、图形化操作的网络仿真工具平台,主要对企业网络路由器、交换机进行软件仿真,完美呈现真实设备实景,支持大型网络模拟,让…...
mac环境安装多个node版本(可切换)
出现问题 mac m1pro版(前段时间刚换的),环境安装的都是最新的。node 18.17.1 前端跑的是react 18 的项目(antD), 又跑了一个相对环境配置比较低的项目,然后启动不起来了; 分析控制台报错,推断是…...

Linux 操作技巧
目录 一、shell-命令解释器 二、Linux中的特殊符号 三、命令历史--history 一、shell-命令解释器 shell——壳,命令解释器,负责解析用户输入的命令 ——内置命令(shell内置) ——外置命令,在文件系统的某个目录下&…...

(十)学生端搭建
本次旨在将之前的已完成的部分功能进行拼装到学生端,同时完善学生端的构建。本次工作主要包括: 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...

Python:操作 Excel 折叠
💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 Python 操作 Excel 系列 读取单元格数据按行写入设置行高和列宽自动调整行高和列宽水平…...
可靠性+灵活性:电力载波技术在楼宇自控中的核心价值
可靠性灵活性:电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中,电力载波技术(PLC)凭借其独特的优势,正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据,无需额外布…...
FastAPI 教程:从入门到实践
FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的…...

DAY 47
三、通道注意力 3.1 通道注意力的定义 # 新增:通道注意力模块(SE模块) class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...
React Native在HarmonyOS 5.0阅读类应用开发中的实践
一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强,React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 (1)使用React Native…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...

ABAP设计模式之---“简单设计原则(Simple Design)”
“Simple Design”(简单设计)是软件开发中的一个重要理念,倡导以最简单的方式实现软件功能,以确保代码清晰易懂、易维护,并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计,遵循“让事情保…...

人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式
今天是关于AI如何在教学中增强学生的学习体验,我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育,这并非炒作,而是已经发生的巨大变革。教育机构和教育者不能忽视它,试图简单地禁止学生使…...

并发编程 - go版
1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程,系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...