【Linux】解决Ubuntu 16.04中Vim无法插入文本以及Putty连接失败

1、环境介绍

    软件及版本号:

    VMware Workstation 14.1.1 build-7528167

    Ubuntu 16.04

    关于如何安装的问题,这里不做赘述,详情可以参考Ubuntu 16.04安装教程。本篇主要对使用Ubuntu 16.04的过程中遇到的问题,给出了一些解决方案。(ps:大佬勿喷,$表示普通用户的提示符,#表示root用户的提示符)

2、无法切换root用户

    问题描述:Ubuntu系统切换root用户时验证密码失败。

$ su root
Password: 
su: Authentication failure

    这是一个老生常谈的问题,原因在于Ubuntu系统中的root用户默认是不激活的,这里介绍下如何去激活root用户。首先输入 sudo passwd root,然后根据提示输入新的root用户密码,再次确认输入root用户密码后会提示密码成功更新。

$ sudo passwd root
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully
    注意:执行以上操作时,要先确保当前用户是系统用户而不是guest用户,否则将会导致sudo passwd命令失效。(ps:使用下面这两条命令均可以查看当前登录用户信息)
$ whoami
$ who am i

    su方式切换用户需要输入的是目标用户的密码,而sudo方式切换用户需要输入的是当前用户的密码。

3、Vim文本编辑器无法插入文本

    问题描述:按i之后没有显示INSERT的提示,并且输入极其不方便。

    这是因为Ubuntu 16.04中默认安装了vim-tiny(ps:可通过vim --version 来查看),也就是vim的缩减版,我们需要在Ubuntu16.04中安装完整版的vim。

    其实安装完整版vim很简单,只需执行下列命令即可,

$ sudo apt-get install vim

    但是可能会出现以下错误提示,比如:
E: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)
E: 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?

    下面给出两种解决方案: 

a.列出进程,使用以下命令,

$ ps -aux

如果进程比较多,也可以使用下面这个命令来搜索进程,

$ ps -aux | grep apt

找到包含 apt-get 的进程后,使用以下命令杀死该进程(ps:PID指的是进程号,找到该进程后,替换掉PID即可)。

$ sudo kill PID

b.强制解锁

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

完成a或者b后,只需要再次执行下面的命令等待安装完成即可。

$ sudo apt-get install vim

4、putty 0.67.0.0连接Ubuntu 16.04失败

    问题描述:putty使用SSH远程协议连接Ubuntu失败。

    首先,我们确认下Ubuntu系统是否已经安装SSH(通常情况下Ubuntu中默认是安装的),可通过命令查看:

$ dpkg -l | grep ssh

    可以发现系统只安装了 openssh-client ,但是并没有安装 openssh-server 。这就说明SSH没有安装完全,需要重新安装 openssh-clientopenssh-server


    这里使用下列命令进行安装:

$ sudo apt-get install openssh-client
$ sudo apt-get install openssh-server

    但是可能会出现安装被打断的情况,根据提示信息输入下列命令:

$ sudo dpkg --configure -a

    然后根据提示并输入下面的命令进行安装:

$ sudo apt-get -f install
$ sudo apt-get install ssh

    安装完成后,再次输入下列命令查看安装SSH的情况

$ dpkg -l | grep ssh

    可以发现系统安装了 openssh-clientopenssh-server 。


    最后启动SSH服务,执行下列命令:

$ sudo /etc/init.d/ssh start

    系统显示:[ ok ] Starting ssh (via systemctl): ssh.service.

    这表示已经启动了SSH服务,使用putty登录Ubuntu系统即可。

    假如想停止SSH服务,可以执行下列命令:

$ sudo /etc/init.d/ssh stop

猜你喜欢

转载自blog.csdn.net/sustzc/article/details/79876860