E: Sub-process /usr/bin/dpkg returned an error code (1)解决办法

2020-3-23 liyangcoder 服务器

安装openssl-server出现了这个错误,是由于apt-get安装软件时出现了下面的错误:

liyang@liyang-PC:~$ sudo apt-get install openssh-server
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
openssh-server 已经是最新版 (1:7.7p1-2)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 1 个软件包未被升级。
有 1 个软件包没有被完全安装或卸载。
解压缩后会消耗 0 B 的额外空间。
您希望继续执行吗? [Y/n] Y
正在设置 openssh-server (1:7.7p1-2) ...
Job for ssh.service failed because the control process exited with error code.
See "systemctl status ssh.service" and "journalctl -xe" for details.
invoke-rc.d: initscript ssh, action "start" failed.
● ssh.service - OpenBSD Secure Shell server
   Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
   Active: activating (auto-restart) (Result: exit-code) since Mon 2020-03-23 18:19:35 CST; 10ms ago
  Process: 8046 ExecStart=/usr/sbin/sshd -D $SSHD_OPTS (code=exited, status=1/FAILURE)
  Process: 8034 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
 Main PID: 8046 (code=exited, status=1/FAILURE)
dpkg: 处理软件包 openssh-server (--configure)时出错:
 installed openssh-server package post-installation script subprocess returned error exit status 1
在处理时有错误发生:
 openssh-server
E: Sub-process /usr/bin/dpkg returned an error code (1)

解决方法:

  1. 现将info文件夹更名
sudo mv /var/lib/dpkg/info /var/lib/dpkg/info.bk
  1. 新建一个新的info文件夹
sudo mkdir /var/lib/dpkg/info
  1. 安装修复
sudo apt-get update
sudo apt-get install -f
  1. 执行完上一步操作后,在info文件夹下生成一些文件,现将这些文件全部移到info.bk文件夹下
sudo mv /var/lib/dpkg/info/* /var/lib/dpkg/info.bk
  1. 把自己新建的info文件夹删掉
sudo rm -rf /var/lib/dpkg/info
  1. 恢复原有info文件夹,修改名字
sudo mv /var/lib/dpkg/info.bk /var/lib/dpkg/info

参考资料:https://blog.csdn.net/stickmangod/article/details/85316142

评论(0) 浏览(249)

树莓派安装docker和docker-compose

2020-3-6 liyangcoder 服务器

docker官方介绍了在Windows/Mac和Linux下安装docker的方法,链接如下:

https://docs.docker.com/get-docker/

但是官方的Linux安装方法中只有Ubuntu/CentOS/Debian等主流操作系统,并不包含Raspberry,但是官方提供了二进制的安装方法,以及一个一键安装脚本,这里我们就使用一键安装脚本来安装.

阅读全文>>

标签: docker

评论(0) 浏览(673)

通过命令快速获取本机外网IP

2020-3-1 liyangcoder 服务器

下面几个链接都可以帮助我们获取到本机的外网IP,但是返回值稍有不同,有的返回纯净的IP(结尾有带换行的和不带换行的),有的携带一些其他内容,有的支持http和https,有的支持http或https,这里面ip.cn最TMD有意思,我在Mac上访问,返回HTML,在Linux上访问,返回JSON.


curl http://whatismyip.akamai.com
curl http[s]://icanhazip.com
curl http[s]://ifconfig.me #国内不稳定,不建议使用
curl http[s]://myip.dnsomatic.com
curl https://ip.cn
curl http[s]://cip.cc
curl http[s]://myip.ipip.net
curl http://ip.d3vm.net

阅读全文>>

评论(0) 浏览(227)

使用docker+frp做内网穿透

2020-2-29 liyangcoder 服务器

为什么要做这件事?

  1. 家里有一个闲置的树莓派3B+,想把它利用起来,做一个私有云网盘
  2. 在做微信开发/对接各种支付产品时,使用过免费的内网穿透工具,稳定性欠佳
  3. 希望能通过SSH远程控制家里的树莓派,执行一些任务
  4. 于是就想自己解决这个问题.但是树莓派在家里无法被外网直接访问到,要解决这个问题,就要用到内网穿透也叫NAT穿透.

工具选择

内网穿透工具有很多,国内最有名的应该就是花生壳了吧,下面我罗列一些比较有名的工具.我并没有一一试用,排名不分先后

  • 花生壳
  • Ngrok
  • frp
  • nsloop
  • 网云穿
  • 一些内网穿透的硬件
  • ...

阅读全文>>

标签: frp

评论(0) 浏览(1842)

docker容器开机自启动

2020-2-25 liyangcoder 服务器

在使用docker run启动容器时,使用--restart参数来设置:

阅读全文>>

标签: docker

评论(0) 浏览(261)

vim中无法使用鼠标复制内容粘贴到vim外的解决方法

2019-4-17 liyangcoder 服务器

echo "set clipboard=unnamed" >> ~/.vimrc

评论(0) 浏览(3338)

docker ps的结果很乱怎么办

2019-3-12 liyangcoder 服务器

docker ps是我们最常用的docker命令之一。用来查询当前运行中的容器,但是这个命令显示的结果很乱,如下图:

深度截图_选择区域_20190312095714.png

显示的内容分为6列,但是由于有些列的内容比较长,再加上电脑屏幕宽度有限,导致显示的内容发生了换行,看上去极其的混乱。我们可以通过format参数,来过滤一些不需要查看的列,这样就清晰多了。一般来说,创建时间我不太关心,默认执行的命令也不关心,docker ps查询出来的本来就是运行中的容器,所以容器状态我也不关心,那么我就隐藏掉这两列,命令如下:

docker ps --format "table  {{.ID}}  {{.Image}}  {{.Ports}}  {{.Names}}"

深度截图_选择区域_20190312100351.png

当然每次都敲这么长的命令是很让人头大的,那么我们可以创建一个命令别名

打开用户的命令别名配置文件 vim ~/.bashrc

在文件最后追加 alias dockerps='docker ps --format "table  {{.ID}}  {{.Image}}  {{.Ports}}  {{.Names}}"'

重新加载配置,使别名生效 source ~/.bashrc

下面就可以用我们显示清晰的dockerps命令啦

深度截图_选择区域_20190312101445.png

当然,如果你希望显示其他的列,那么请参考如下表格

fa571c3e6a754420bfd81a521dae5702.jpeg

标签: docker

评论(0) 浏览(3137)

deepin(深度)系统安装docker

2019-3-9 liyangcoder 服务器

apt-get直接装的太老,按照docker官方文档,安装失败。具体参考deepin官方文档,此文档很详细,而且还解释了为什么按照docker文档安装不成功。

https://wiki.deepin.org/wiki/Docker

标签: docker

评论(1) 浏览(3876)

免sudo使用docker命令

2019-3-9 liyangcoder 服务器

实现思路,将当前用户添加到docker组。


如果还没有 docker group 就添加一个:

sudo groupadd docker


将用户加入该 group 内。然后退出并重新登录就生效啦。

sudo gpasswd -a ${USER} docker


重启 docker 服务

sudo service docker restart


切换当前会话到新 group 或者重启 X 会话

newgrp - docker


注意:最后一步是必须的,否则因为 groups 命令获取到的是缓存的组信息,刚添加的组信息未能生效,所以 docker images 执行时同样有错。


标签: docker

评论(0) 浏览(2659)

libxml2和libxml2-dev的区别

2018-11-14 liyangcoder 服务器

在我们编译安装PHP时,经常会报出类似的错误:

configure: error: libxml2 not found. Please check your libxml2 installation.

字面意思很容易理解,是说没找到libxml2,但是如果我们搜索一下系统,会发现libxml2是安装过的,而且我们再使用包管理工具(apt-get/yum)来安装,会提示libxml2已安装:

libxml2 is already the newest version.

这是为什么呢?

阅读全文>>

评论(1) 浏览(2763)

Powered by emlog 冀ICP备13011830号-1