常用Linux管理命令

维护课题组服务器的时候要用到很多常用命令,每次都去百度搜索太浪费时间了,这里做一个总结归纳。

创建用户

1
useradd newuser -g dgroup -b /home/ext_8t -m --shell /bin/zsh

如果需要添加sudo权限,修改/etc/group文件

1
sudo:x:27:newuser,user1

在后面追加用户名

删除用户

1
userdel user -r

-r删除所有附属文件

时间维护

网络同步时间

使用http时间戳戳同步,NTP协议校内用不了

1
sudo date --rfc-2822 -s "`curl -s -i -X HEAD --header "Connection: close" http://www.baidu.com | grep -E '^Date: ' | awk -F ': ' '{print $2}'`"

修改为中国标准时间CST

1
sudo timedatectl set-timezone Asia/Shanghai

开启公钥登录

需要编辑/etc/ssh/sshd_config文件,默认情况是开启密码登录的,如果要开启公钥登录,则需要添加配置

1
PubkeyAuthentication yes

显卡驱动升级

首先检查当前的驱动版本,可以直接使用nvidia-smi命令查看,或者使用如下命令查看。

1
cat /proc/driver/nvidia/version

默认的驱动套件是安装在/usr/bin下面的,主要有以下可执行文件,其中最常用的就是nvidia-smi

1
2
3
4
5
6
7
8
9
10
11
12
(base) ➜  ~ ls /usr/bin|grep nvidia
nvidia-bug-report.sh
nvidia-cuda-mps-control
nvidia-cuda-mps-server
nvidia-debugdump
nvidia-detector
nvidia-ngx-updater
nvidia-persistenced
nvidia-powerd
nvidia-sleep.sh
nvidia-smi
nvidia-xconfig

在实践中,为了防止驱动套件版本冲突,一般是先卸载掉原有驱动,再安装新驱动。如果是直接使用nvidia官方提供的脚本安装,则上述目录中会有一个nvidia-uninstall脚本,执行此脚本即可卸载驱动;如果是用apt安装的,则使用apt卸载。

如果使用apt进行安装,则需要先添加源,再安装对应的驱动包。

1
2
3
4
add-apt-repository ppa:graphics-drivers/ppa
apt-get update
sudo apt install nvidia-utils-535-server
sudo apt install nvidia-driver-535-server

安装完成后,重新启动服务器即可。

安装cuda-toolkit

安装配置cuda-toolkit,在深度学习实践中一般指系统能运行nvcc编译命令,即具备编译cuda代码的能力。使用condapip安装torch时,只是安装了对应的依赖项使得torch可以调用显卡中的cuda计算单元,但是并不具备编译能力。有些框架(例如flash-attention)需要在安装时本地编译cuda代码,因此需要配置安装cuda-toolkit。

具体过程如下,需要先添加NVIDIA的密钥链

1
2
3
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update

然后安装cuda-toolkit,这里安装的是cuda-12.2,如果要安装其他版本的cuda,则需要修改版本号。显卡驱动支持的最高cuda-toolkit版本请参考nvidia-smi的输出。

1
sudo apt-get -y install cuda-toolkit-12-2

安装完成后,cuda工具链存放在/usr/local/cuda-12.2目录下,需要将此目录添加到环境变量中。通过nvcc -V命令的输出,可以查看cuda版本。

1
2
3
4
5
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2023 NVIDIA Corporation
Built on Tue_Aug_15_22:02:13_PDT_2023
Cuda compilation tools, release 12.2, V12.2.140
Build cuda_12.2.r12.2/compiler.33191640_0

本文作者:MyTech::Author

本文链接: https://mytech.pages.dev/2023/05/10/linux-mgrscrpts/