问题

使用Ubuntu打开终端时,输入带有sudo apt-get 命令行是报下面错误:

E: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)
E: 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?

原因分析

在ubuntu系统用带有apt-get 命令行的时候,如果在未完成任务的情况下将终端中断,此时 apt-get进程可能没有结束。当重新开机再次运行带有apt-get命令行的时候,可能会发生上面的错误.

解决方法

在终端输入下面命令强制解锁

sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock

问题二描述:Ubuntu18.04 root用户安装完docker以后 查看docker信息时出现如下问题:

 

ERROR: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/info": dial 
unix /var/run/docker.sock: connect: permission denied

2 原因分析
来自docker mannual:

Manage Docker as a non-root user

The docker daemon binds to a Unix socket instead of a TCP port. By default that Unix socket is owned by the user root and other users can only access it using sudo. The docker daemon always runs as the root user.

If you don’t want to use sudo when you use the docker command, create a Unix group called docker and add users to it. When the docker daemon starts, it makes the ownership of the Unix socket read/writable by the docker group.

 docker进程使用 Unix Socket 而不是 TCP 端口。而默认情况下,Unix socket 属于 root 用户,因此需要 root权限 才能访问。

 

3 解决方法
sudo groupadd docker          #添加docker用户组
sudo gpasswd -a $XXX docker   #检测当前用户是否已经在docker用户组中,其中XXX为用户名,例如我的,liangll
sudo gpasswd -a $USER docker  #将当前用户添加至docker用户组
newgrp docker                 #更新docker用户组

bowen@bowen-virtual-machine:~$ sudo groupadd docker
[sudo] bowen 的密码: 
groupadd:“docker”组已存在
bowen@bowen-virtual-machine:~$ 

bowen@bowen-virtual-machine:~$ sudo gpasswd -a $bowen docker
gpasswd:用户“docker”不存在


bowen@bowen-virtual-machine:~$ sudo gpasswd -a $USER docker
正在将用户“bowen”加入到“docker”组中


bowen@bowen-virtual-machine:~$ newgrp docker 


bowen@bowen-virtual-machine:~$ docker version
Client: Docker Engine - Community
 Version:           20.10.8
 API version:       1.40
 Go version:        go1.16.6
 Git commit:        3967b7d
 Built:             Fri Jul 30 19:54:08 2021
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          19.03.15
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.13.15
  Git commit:       99e3ed8919
  Built:            Sat Jan 30 03:15:20 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.4.9
  GitCommit:        e25210fe30a0a703442421b0f60afac609f950a3
 runc:
  Version:          1.0.1
  GitCommit:        v1.0.1-0-g4144b63
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683


 

Logo

一站式 AI 云服务平台

更多推荐