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重启至终端登录界面,代表安装成功: