ubuntu 踩过的坑


ubuntu安装中文输入法成功教程:
https://zhuanlan.zhihu.com/p/508797663



博主希望尽量的不去宿主机中操作,达到对原系统的保护的效果,并且能够进行日常的深度学习网络的训练,因此想到了docker(Kubernetes 太高端)

使用docker安装带有显卡的镜像
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html

docker镜像:建议使用dev,ncvv作为cuda的编译器,在runtime的镜像中是不提供的。
https://hub.docker.com/r/nvidia/cuda/tags?page=11

docker启动容器
方式1:

sudo nvidia-docker run -it --shm-size=10g -v /home/ngl/workspace:/home/workspace --runtime=nvidia -e NVIDIA_VISIBLE_DEVICE=0 nvcr.io/nvidia/cuda:11.0.3-base-ubuntu20.04

-v参数 : 宿主机路径:镜像路径
如:/home/ngl/workspace:/home/workspace
这样便可将宿主目录映射到镜像中

方式2:

sudo docker run --shm-size 30G -itd -v /home/ngl/workspace:/home/workspace   --gpus all openppl:v1 /bin/bash

-d:后台方式运行
使用docker exec重新进入docker容器

sudo docker exec -it ed9fb07da79f /bin/bash

终端中正在运行的docker镜像如何切换成后台运行:
ctrl+p + q

在运行docker 镜像时发现,没打开一次镜像,都需要重新配置环境,颇为麻烦
因此,可在配置完docker镜像后,使用docker commit 命令将docker镜像镜像进行保存

保存对容器的修改

当你对某一个容器做了修改之后(通过在容器中运行某一个命令),可以把对容器的修改保存下来,这样下次可以从保存后的最新状态运行该容器。docker中保存状态的过程称之为committing,它保存的新旧状态之间的区别,从而产生一个新的版本。

目标:

首先使用 docker ps -l命令获得安装完ping命令之后容器的id。然后把这个镜像保存为learn/ping。

提示:

  1. 运行docker commit,可以查看该命令的参数列表。

  2. 你需要指定要提交保存容器的ID。(译者按:通过docker ps -l 命令获得)

  3. 无需拷贝完整的id,通常来讲最开始的三至四个字母即可区分。(译者按:非常类似git里面的版本号)

正确的命令:

$sudo docker commit -a "niuli" -m "openppl env" ec56bf71f0c8 openppl:v1

-a: 提交的镜像作者;

-c :使用Dockerfile指令来创建镜像;

-m :提交时的说明文字;

-p :在commit时,将容器暂停。
原文链接:https://blog.csdn.net/weixin_38070782/article/details/106322777

docker 推到dockerbub中:
发布镜像时,需要将image重新命名,命名格式应为: dockerhub用户名/镜像名

docker tag test/docker_node:v1 dockerwychen/docker_node:20201209001
docker login -u admin -p 123456
docker push dockerwychen/docker_node:20201209001

dpkg -l 命令可以浏览所有安装的包,其中 rc 状态的包即卸载了包却保留了配置文件。如果想要完整删除所有 rc 状态的包一个一个删还是很麻烦的,所以可以使用以下命令进行清理

dpkg -l | grep ^rc | cut -d' ' -f3 | sudo xargs dpkg --purge

删除安装失败的包
查看有哪些安装失败的包

sudo dpkg --configure -a 

删除安装失败的包

$ sudo dpkg --remove --force-remove-reinstreq package_name 
$ sudo apt-get update

删除软件包后,使用命令更新系统,成功更新后重新启动系统。

1、删除所有未运行的容器(已经运行的删除不了,未运行的就一起被删除了)

sudo docker rm $(sudo docker ps -a -q)

2、根据容器的状态,删除Exited状态的容器

sudo docker rm $(sudo docker ps -qf status=exited)

报错:E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages
参考:https://blog.csdn.net/weixin_42156097/article/details/103805063

sudo aptitude install <packagename>

补充:如果显示没有"aptitude"这个命令,安装它

sudo apt-get install aptitude

python虚拟环境操作:
python虚拟环境

ubuntu 卸载cuda

posted @ 2022-06-21 07:41  牛犁heart  阅读(95)  评论(0编辑  收藏  举报