物理机安装Ubuntu Server
前言
服务器上面的环境似乎有点混乱,所以打算重装一下系统,顺便把系统从 CentOS 换成 Ubuntu。
由于第一次装物理机的系统,所以记录一下过程。
还有希望大家之后都统一使用 pip install
安装python库,不要用 conda install
,这样可以避免一些问题,下载速度慢可以pip使用清华源:
1. 单独指定,需要每次都加参数指定
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
2. 直接换源,直接让pip默认使用清华源
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
下面是安装过程中遇到的问题,给之后安装的同学做一下参考。
1.下载镜像
在这里下载Ubuntu服务器版,现在最新版是22.04 LTS。
2.制作启动盘
我使用的是Rufus制作的启动盘,其他的工具也可以,不过我没有试过。
这里需要备份一下U盘里的文件,等下会把U盘格式化。
设备选择你的U盘,然后镜像选择刚才下好的Ubuntu镜像,其他的选项不用改,此时状态为准备就绪,点击开始,然后可能需要几分钟的时间,等待完成。
3.安装系统
插入U盘,重启电脑,进入BIOS,BIOS的进入不同电脑不同,一般是按F2或者F12,具体可以百度。这里我们的服务器是按DEL进入BIOS的。
进入BIOS后,选择Boot,然后选择U盘启动,然后保存退出(我们的是按F4),然后选择try or install Ubuntu,进入安装界面。
之后会等待一段时间,这个时候屏幕上会一直刷很多信息:
然后就会进入配置信息的界面了,由于安装的是服务器版,所以没有图形界面,不熟悉的话一般都不知道怎么做,不过只要记住一下几个基本操作逻辑就行了:
Tab键或者上下箭头键控制光标可以在选项之间切换
空格键可以选中或者取消选中,一般像下面这种就是可选的,如果选择了[ ]就会变成[x],取消也是按空格键
[ ] xxxxxxxxxxxxxxxxxxx
[x] xxxxxxxxxxxxxxxxxxx
Enter键可以进入下一步,一般配置完一个选项之后都选中最下面的Done,然后回车
Esc键可以返回上一步,或者选择最下面的Back,然后回车
对于右边有箭头的选项,一般都是可以展开的,直接Enter展开就可以了
安装的时候没有拍照,但是没关系,前面一直默认选就可以了,语言和键盘布局都选English,直到进入下面这个界面:
通过上下箭头移动到上面的界面,然后按回车,选择edit ipv4,然后Manual,然后填写子网掩码、ip、网关、DNS(这些信息找学长或者老师问一下),然后保存退出,然后选择Done回车,进入下一步。
本来我是没有配置的,然后安装完成后,ping
了一下baidu发现超时,而且 apt install
也是有问题的,装完之后应该也是可以配置网络,但是配置文件不方便改,然后我又重新装了。
配置完网络之后基本上可以使用默认选项直接Done,磁盘分区如果不嫌麻烦可以手动分,但是除了系统盘之外的其他几个磁盘好像没有挂载上来,后面再说。
上面我直接按默认分区后面还是遇到了一点问题,还是建议手动分区,磁盘比较多不用分那么细,根目录"/"可以直接挂一块119G的,/boot和swap的大小看着给,然后把一块1.8T的给/home下面,到时候所有用户的文件都在这下面,空间大点好,这样差不多就可以了。
记得勾选安装ssh的选项,之后远程登录用,还有设置账号密码。
最后等待一段时间下载更新直到提示reboot now,选择该选项然后重启,拔掉U盘,进入系统。
如果这里成功进入系统,并且使用ssh可以远程连接,就可以离开机房了,剩下的去自己电脑上搞。进入系统之后也可以先 sudo passwd root
修改一下root的密码。
4.挂载磁盘
这是在上面没有手动分区的情况下才需要做的,如果上面手动分区基本上把磁盘都用了就可以跳过这一步了,这里我这么做是因为我以为只要创建两个账号共用就好了,但是后面学长创了一个自己的账号,家目录直接在根目录/下面的的/home,然后空间就不够了,所以还是整个/home挂一个1T的磁盘吧。
使用 df -Th
查看已经挂载的磁盘,再用 lsblk
查看所有的磁盘,可以先直接把磁盘格式化(如果没有重要数据的话)再挂载,磁盘比较大不建议格式化成ext4格式,用xfs格式
mkfs.xfs /dev/xxx
这里我将电脑上两块1T的硬盘格式化并挂载到了 /home/asc23
和 /home/asc24
,挂载的时候可以直接用 mount
命令,但是重启之后就会失效,所以需要修改 /etc/fstab
文件,添加下面两行
/dev/sdb /home/asc23 xfs defaults 0 0
/dev/sdc /home/asc24 xfs defaults 0 0
然后重启电脑,再次使用 df -Th
查看,发现已经挂载成功了。
5.管理用户
创建用户,这里创建两个普通用户账号,-m强制在/home目录下创建用户目录,-s指定shell
useradd -m -s /bin/bash asc23
useradd -m -s /bin/bash asc24
修改用户密码,passwd加用户名,然后输入两次密码
passwd asc23
passwd asc24
普通用户有时候需要执行一些需要root权限的命令,可以使用sudo,输入自己的密码即可,需要在 /etc/sudoers 里面添加下面两行
asc23 ALL=(ALL:ALL) ALL
asc24 ALL=(ALL:ALL) ALL
然后普通用户sudo输入自己的密码就可以执行root权限的命令了
6.配置环境
建议使用root用户登录配置nvidia驱动和cuda。
6.1 nvidia驱动
一开始我安装之后使用 nvidia-smi
会报错:
NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.
通过这篇文章解决的(按照它的方法搞好驱动就行,cuda还是别按它的方法):https://www.wangliguang.org/nvidia-installer/
安装成功之后执行 nvidia-smi
应该是这样的
6.2 cuda
建议直接先执行 nvcc
,然后系统提示安装cuda,直接用apt安装就行了,下面的方法有点折腾,我也没搞清楚哪里出了问题,仅供参考。
在这里下载最新cuda:https://developer.nvidia.com/cuda-downloads
选择对应的版本,建议下载runfile脚本,然后执行
安装的时候一直按默认cotinue,最后重启就可以了,通过 nvcc -V
查看版本
6.3 pytorch
Anaconda可以每个用户单独安装,只要直接安装在自己的家目录下面就行,安装时选择安装路径为/home/username/anaconda3
先下载Anaconda:https://www.anaconda.com/download#downloads
wget下载Linux安装脚本然后执行,安装时选择安装路径为/home/username/anaconda3,安装完如果运行conda提示命令不存在,需要设置环境变量,在家目录下面的.bashrc文件的最后加上 (这里的username换成当前用户名):
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/username/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/home/username/anaconda3/etc/profile.d/conda.sh" ]; then
. "/home/username/anaconda3/etc/profile.d/conda.sh"
else
export PATH="/home/username/anaconda3/bin:$PATH"
fi
fi
unset __conda_setup
# <<< conda initialize <<<
最后source一下生效
source .bashrc
创建虚拟环境
conda create -n pytorch python=3.10
conda activate pytorch
安装pytorch库:https://pytorch.org/get-started/locally/
找到对应的版本,然后复制command,同样建议pip安装
安装完之后,通过 python -c "import torch; print(torch.__version__)"
查看版本,如果正常输出没有报错就成功了
整个环境配置好之后下面的脚本应该打印True
7.总结
至此,服务器系统安装完成,环境配置完成,如果遇到其他问题可以去网上找教程或者问学长。