centos7 安装英伟达驱动;cuda;docker离线安装;docker gpu离线安装;制作自己的cuda镜像;安装 容器中ssh协议
原创不易,谢谢!
centos7 安装英伟达驱动,cuda,docker安装,docker gpu安装,制作自己的cuda镜像,docker ssh协议
无论是笔记本还是台式电脑,这一步关键
参考资料
英伟达docker官网介绍
https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#system-requirements
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#docker
https://www.nvidia.cn/Download/Find.aspx?lang=cn
cudnn官方文档
https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html
补充知识点—开机F2进入安全模式
关闭 secure boot =disable
补充知识点—centos 用户加入管理员权限:
1. 查看文件权限ls -al /etc/sudoers
2. 切换的高权限 su root
3. 更改文件夹权限chmod u+w /etc/sudoers
4. hao添加sudo权限
vim /etc/sudoers
5. 添加新用户 xxx
xxx ALL=(ALL) ALL
5. 再次查看文件权限 ls -al /etc/sudoers
自带的yum源没有这个软件,要用第三方的软件源,这里我用的是阿里的epel.
切换到系统yum目录并下载阿里的epel
[root@localhost cdrom]# cd /etc/yum.repos.d/
补充知识点–安装centos7-gcc
安装 gcc 版本
1.yum install gcc -y
2.yum install gcc-c++ -y
补充知识点 centos7 -挂载问题
[root@localhost yum.repos.d]# wget http://mirrors.aliyun.com/repo/epel-7.repo
yum -y install ntfs-3g
补充知识点 centos7-中文输法问题
补充知识点 rpm(安装)
sudo rpm -ivh
补充知识点-- 查看当前操作系统是ubuntu还是centos
执行: lsb_release -a
补充知识点:docker的一些常见操作
a.停止正在运行的容器
docker stop $(docker ps -a -q)
b、删除所有的容器docker rm $(docker ps -a -q)
c、删除所有的镜像docker rmi $(docker images -q)
d、先查询下dockeryum list installed| grep docker
e、执行卸载命令yum -y remove docker.x86_64 docker-client.x86_64 docker-common.x86_64 nvidia-docker.x86_f.将容器 commit 成镜像 docker commit a8ab2d989dde pydocker:aaa
g.将镜像变成.tar docker save pydocker:cbtainewshushui > pydocker.tar
h.容器映射
docker run -itd --gpus all -p 10000:22 -p 10001:10001 -p 10002:10002 -h pytorch --name pytorch 157b43e24a92 sh /root/start.sh
l.进入bash操作
docker run -it --gpus all nvidia/cuda:11.4.0-devel-centos7 /bin/bash
补充知识点–所有tar包变成一个tar包
cat tar.gz.part-a*>1.tar.gz
![
补充知识点—centos7 和win10 文件传输
scp -P 端口号 /home/xxx/xxx.sh root@远程主机:/root/远程主机里面的文件夹
##################################################################
安装显卡驱动450版本,cuda11.4和对应的cudnn
cuda下载地址:
cuda地址
1、Linux查看显卡信息:(ps:若找不到lspci命令,可以安装 yum install pciutils)
lspci | grep -i vga
2、使用nvidia GPU可以:
lspci | grep -i nvidia
3、查看显卡驱动
cat /proc/driver/nvidia/versionll || /usr/src/kernels/
4.安装依赖环境:
sudo yum install kernel-devel-$(uname -r) kernel-headers-$(uname -r)
5.检查内核版本和源码版本,保证一致
ls /boot | grep vmlinu
rpm -aq | grep kernel-devel
6.屏蔽系统自带的nouveau
查看命令:
lsmod | grep nouveau
修改dist-blacklist.conf文件:
vim /lib/modprobe.d/dist-blacklist.conf
将nvidiafb注释掉:
#blacklist nvidiafb
然后添加以下语句:
blacklist nouveau
options nouveau modeset=0
7.重建initramfs image步骤
mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
dracut /boot/initramfs-$(uname -r).img $(uname -r)
systemctl set-default multi-user.target
8.安装显卡驱动
./NVIDIA-Linux-x86_64-450.66.run --kernel-source-path=/usr/src/kernels/3.10.0-1127.19.1.el7.x86_64 ----no-opengl-files
9、 配置环境变量
vi /etc/profile
进入文件,添加配置
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
使环境变量立即生效
source /etc/profile ;
10.安装cuda
wget https://developer.download.nvidia.com/compute/cuda/11.4.0/local_installers/cuda-repo-rhel7-11-4-local-11.4.0_470.42.01-1.x86_64.rpm
sudo rpm -i cuda-repo-rhel7-11-4-local-11.4.0_470.42.01-1.x86_64.rpm
sudo yum clean all
sudo yum -y install nvidia-driver-latest-dkms cuda
sudo yum -y install cuda-drivers
11.cuda 校验
cd /usr/local/cuda/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
12.安装cudnn
老版本:
sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
新版
sudo cp cuda/include/cudnn_version.h /usr/local/cuda/include/
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
13测试
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
################################################################################
docker gpu 安装介绍文章
docker 离线安装
1.1 docker包下载
https://download.docker.com/linux/static/stable/x86_64/
tar -xzvf docker
``
3.将docker 文件夹下面二进制文件移动到bin下
mv /usr/local/resource/docker/docker/* /usr/bin/
4.配置docker
vim /etc/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock --add-runtime=nvidia=/usr/bin/nvidia-container-runtime
ExecReload=/bin/kill -s HUP $MAINPID
# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
# Uncomment TasksMax if your systemd version supports it.
# Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
# kill only the docker process, not all processes in the cgroup
KillMode=process
# restart the docker process if it exits prematurely
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s[Install]
WantedBy=multi-user.target
5.修改配置文件权限
chmod +x /etc/systemd/system/docker.service
3.将下载下来的rpm包全部解压(这里包括英伟达docker-gpu和docker的)
rpm -Uvh *.rpm --nodeps --force
6.启动docker,添加docker用户组
systemctl daemon-reload # 重载systemd下 xxx.service文件
systemctl start docker # 启动Docker
systemctl enable docker.service # 设置开机自启
systemctl status docker # 查看Docker状态
docker -v # 查看Docker版本
sudo groupadd docker #添加docker用户组
sudo gpasswd -a $USER docker #将登陆用户加入到docker用户组中
newgrp docker #更新用户组
docker ps #测试docker命令是否可以使用sudo正常使用
systemctl enable docker
sudo groupadd docker #添加docker用户组
sudo gpasswd -a $USER docker #将登陆用户加入到docker用户组中
newgrp docker #更新用户组
docker ps #测试docker命令是否可以使用sudo正常使用
systemctl enable docker
安装docker-gpu
1.离线下载 英伟达docker
yum install --downloadonly nvidia-docker2 --downloaddir=/tmp/nvidia
rpm -Uvh *.rpm --nodeps --force
- rpm 安装
rpm -Uvh *.rpm --nodeps --force
3.检查GPU状态
docker run --help | grep -i gpus
4.tar->转变成镜像
docker image load -i 1.tar.gz
5.镜像->容器
docker run -itd --gpus all -p 10000:22 -p 10001:10001 -p 10002:10002 -h pytorch --name pytorch 157b43e24a92 sh /root/start.sh
制作自己的docker–gpu
1.docker gpu 下载地址
https://hub.docker.com/r/ufoym/deepo
参数说明
通过运行已经pull到的镜像,根据需求执行以下命令来实例化各种不同配置的容器。
比如通过–gpus参数来指定容器可以使用的gpu(全部gpu、指定数目的gpu、指定设备号的gpu等等)
参数说明:
-i 交互式操作
-t 终端
–gpus 此参数很重要。加上这个参数创建的容器才可以感知宿主机上的gpu环境。
all表示容器可见宿主机上的全部gpu设备。
–name 为即将创建的容器指定一个名字。这里指定的容器名是container0。
nvidia/cuda:11.3-base 从官方pull的镜像。
列如
#### Test nvidia-smi with the latest official CUDA image
docker run --gpus all nvidia/cuda:11.3-base nvidia-smi
# Start a GPU enabled container on two GPUs
docker run --gpus 2 nvidia/cuda:11.3-base nvidia-smi
# Starting a GPU enabled container on specific GPUs
# Specifying a capability (graphics, compute, ...) for my container
# Note this is rarely if ever used this way
docker run --gpus all,capabilities=utility nvidia/cuda:10.0-base nvidia-smi
/bin/bash 放在镜像名后面的是命令。
因为docker允许我们在创建容器时可以附带想要执行的指令,使用这条指令帮我们创建了一个交互式的shell。
例如:
docker run -it --gpus all --name container0 nvidia/cuda:10.0-base /bin/bash
docker exec -it pytorch bash
``
ssh 协议(这里说明一下基本上docker-gpu 的cuda11.3的镜像选择UBUNTU系统)
1.查看Linux是否安装SSH服务
dpkg -l | grep ssh
2.若无输出,则应先安装openssh-server
sudo apt-get update
sudo apt-get install openssh-server -y
3.如果成功安装,再次执行dpkg -l | grep ssh应该能看见如下输出:
4.同时确认以下文件也存在
/var/run/sshd
/usr/sbin/sshd
5.修改SSH配置文件的内容
vim /etc/ssh/sshd_config
6.# 这两行前面的注释取消掉
PasswordAuthentication yes
PermitRootLogin yes
7.启动SSH服务
service ssh start # 停止服务为 service ssh stop
8.# 查看SSH服务状态
service ssh status
9.在容器的root目录下新建start.sh脚本,内容为:
/usr/sbin/sshd/bin/bash
10.以后创建容器时,跟在镜像后面的命令就可以改成 sh /root/start.sh,表示在实例化容器的同时执行脚本中的内容。这里表示的是创建一个交互式的shell终端以及开启容器的SSH服务。
docker run -itd --gpus all -p 10000:22 -p 10001:10001 -p 10002:10002 -h pytorch --name pytorch 157b43e24a92 sh /root/start.sh
11.想要以root的身份连接到我们配置好的容器,先要给root用户设置个密码。(刚安装好的root用户是没有密码的,没有密码也就没法用root用户登录)
apt-get install sudo
sudo passwd
12.接着正常安装pytorch之类的,这里就不在累述。
centos7 安装英伟达驱动;cuda;docker离线安装;docker gpu离线安装;制作自己的cuda镜像;安装 容器中ssh协议相关推荐
- ft2232驱动安装方法_关于Win10无法安装英伟达驱动的处理方法
在安装英伟达驱动会遇到提示报错,例如下图: 意为"英伟达图形驱动程序与此版本的Windows不兼容". 如何解决? 首先这种提示分为两种情况 一.Win10系统版本过老,比如几年前 ...
- ubuntu18.04 LTS 安装英伟达驱动
ubuntu18.04 LTS 安装英伟达驱动 0.ubuntu software里换阿里源 1. sudo add-apt-repository ppa:graphics-drivers/ppa s ...
- ubuntu16.04安装英伟达驱动,cuda8.0和cudnn
禁用nouveal自带驱动(可选,推荐) 控制台输入命令,创建一个文件通过命令 sudo vim /etc/modprobe.d/blacklist-nouveau.conf 并添加如下内容: b ...
- ubuntu20.04独显和集显切换安装英伟达驱动
先说设备参数:华硕天选2,配备intel集显和3060显卡,ubuntu的内核是5.13. 我装了两天的英伟达驱动没有成功,在淘宝上找了个大哥给我一小时装完了.最重要的是一句选择显卡的代码. 重装系统 ...
- Ubuntu20.04安装英伟达驱动
首先进行下载源更换,否则 lightdm 中会有软件包下载不下来,更换为国内源即可 第一步:打开软件和更新 第二步:设置阿里源 选择其他站点 关闭配置页面,即保存所有配置 关闭之后会弹出一个对话框问你 ...
- Ubuntu安装英伟达驱动CUDA,CUDNN,PyTorch保姆级教程
一.安装CUDA 切换显卡驱动,并通过NVIDIA-smi查看信息: 考虑到后面安装PyTorch,不建议使用最新的驱动,这样CUDA版本不会过高. 在英伟达官网下载CUDA,我的是11.8. wge ...
- 安装英伟达驱动-cuda-cuann
首先安装ubuntu 18.04系统 制作系统盘,开机前狂按电脑的开机选项按键,选择u盘启动 重启开机后,先别拔掉u盘, 去英伟达官网,根据自己的显卡信息,下载对应的驱动. 直接放在主目录下 sudo ...
- ubuntu18.04安装英伟达驱动
针对为ubuntu18.04安装nvidia驱动: 1.根据自己电脑的显卡型号,在nvidia官网查找相应的显卡驱动版本(https://www.nvidia.cn/Download/index.as ...
- ubuntu安装英伟达驱动
第一步:禁用nouveau 打开系统黑名单 sudo gedit /etc/modprobe.d/blacklist.conf 在系统黑名单配置文件最下面添加以下代码. # nouveau black ...
最新文章
- Windows server 2003 IP路由配置
- 阿里云Redis开发规范
- php 类 init,基于initPHP的框架介绍
- C++ vector的初始化、添加、遍历、插入、删除、查找、排序、释放操作
- java反向映射_opencv 直方图和直方图反向映射
- Ext scope 学习
- REVERSE-PRACTICE-BUUCTF-26
- 美丽的数学家:如果您讨厌数学,这些其实都是人生故事
- oracle修改redo路径,oracle修改redo log files路径
- redis数据结构、持久化、缓存淘汰策略
- Tableau可视化学习笔记:day03-04
- Atitit hre框架v5 新特性 HREv5
- 好看的vscode字体
- VS创建和使用C++动态链接库教程
- 论文笔记:PaintsTorch: a User-Guided Anime Line Art Colorization Tool
- 淘宝非标品类目商品开车如何选词?[淘宝插旗、创建订单api]
- shell下从1加到100
- 曲线救国的就业路线是否合理?
- 手机屏幕关于VGA、QVGA、WVGA、HVGA的区别介绍
- 【物联网】三大厂家NB-IOT卡对比