很多朋友经常会忘记Linux系统的root密码,linux系统忘记root密码的情况该怎么办呢?重新安装系统吗?当然不用!进入单用户模式更改一下root密码即可。
步骤如下:
重启linux系统
3 秒之内要按一下回车,出现如下界面
然后输入e
在 第二行最后边输入 single,有一个空格。具体方法为按向下尖头移动到第二行,按"e"进入编辑模式
在后边加上single 回车
最后按"b"启动,启动后就进入了单用户模式了
此时已经进入到单用户模式了,你可以更改root密码了。更密码的命令为 passwd
【使用系统安装光盘的救援模式】
救援模式即rescue ,这个模式主要是应用于,系统无法进入的情况。如,grub损坏或者某一个配置文件修改出错。如何使用rescue模式呢?
光盘启动,按F5 进入rescue模式
输入linux rescue 回车
选择语言,笔者建议你选择英语
选择us 键盘
这里问你是否启动网络,有时候可能会联网调试。我们选no
这里告诉我们,接下来会把系统挂载在/mnt/sysimage 中。
其中有三个选项:
- Continue 就是挂载后继续下一步。
- Read-Only 挂载成只读,这样更安全,有时文件系统损坏时,只读模式会防止文件系统近一步损坏。
- Skip就是不挂载,进入一个命令窗口模式。
这里我们选择Continue。
至此,系统已经挂载到了/mnt/sysimage中。接下来回车,输入chroot /mnt/sysimage 进入管理员环境。
提示: 其实也可以到rescue模式下更改root的密码的。这个rescue模式和windows PE系统很相近。
当运行了chroot /mnt/sysimage/ 后,再ls 看到目录结构和原来系统中的目录结构是一样的。
没错!现在的环境和原来系统的环境是一模一样的。你可以输入exit 或者按Ctrl + D退出这个环境。然后你再ls 看一下
这个目录其实就是rescue模式下的目录结构,而我们的系统文件全部在 /mnt/sysimage目录下。
Linux 远程登录
Linux 一般作为服务器使用,而服务器一般放在机房,你不可能在机房操作你的 Linux 服务器。
这时我们就需要远程登录到 Linux 服务器来管理维护系统。
CentOS 系统默认安装了 openssh
如果没有安装可以使用命令进行安装:
yum install openssh-server -y
Linux 系统中是通过 ssh 服务实现的远程登录功能,默认 ssh 服务端口号为 22。
Windows 系统上 Linux 远程登录客户端有 SecureCRT, Putty, SSH Secure Shell,Xshell 等,本文以 PuTTY 为例来登录远程服务器。
PuTTY 下载地址:http://www.putty.org/
如果你下载了 PuTTY,请双击 PuTTY.exe
然后弹出如下的窗口。
在 Host Name( or IP address) 下面的框中输入你要登录的远程服务器 IP(可以通过 ifconfig
命令查看服务器 IP),然后回车。
此时,提示我们输入要登录的用户名。
输入 root
然后回车,再输入密码,就能登录到远程的 Linux 系统了。
使用密钥认证机制远程登录linux
SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定。
SSH 为建立在应用层和传输层基础上的安全协议。
首先使用工具 PUTTYGEN.EXE 生成密钥对。打开工具 PUTTYGEN.EXE 后如下图所示:
该工具可以生成三种格式的 key :SSH-1(RSA) SSH-2(RSA) SSH-2(DSA)
,我们采用默认的格式即 SSH-2(RSA)。Number of bits in a generated key
这个是指生成的key 的大小,这个数值越大,生成的 key 就越复杂,安全性就越高。这里我们写 2048.
然后单击 Generate 开始生成密钥对:
注意的是,在这个过程中鼠标要来回的动,否则这个进度条是不会动的。
到这里,密钥对已经生成了。你可以给你的密钥输入一个密码,(在 Key Passphrase
那里)也可以留空。然后点 Save public key
保存公钥,点 Save private Key
保存私钥。笔者建议你放到一个比较安全的地方,一来防止别人偷窥,二来防止误删除。接下来就该到远程 Linux 主机上设置了。
1)创建目录 /root/.ssh
并设置权限
[root@localhost ~]# mkdir /root/.ssh mkdir 命令用来创建目录,以后会详细介绍,暂时只了解即可。
[root@localhost ~]# chmod 700 /root/.ssh chmod 命令是用来修改文件属性权限的,以后会详细介绍。
2)创建文件 / root/.ssh/authorized_keys
[root@localhost ~]# vim /root/.ssh/authorized_keys vim 命令是编辑一个文本文件的命令,同样在后续章节详细介绍。
3)打开刚才生成的 public key 文件,建议使用写字板打开,这样看着舒服一些,复制从 AAAA 开头至 "---- END SSH2 PUBLIC KEY ----" 该行上的所有内容,粘贴到 /root/.ssh/authorized_keys
文件中,要保证所有字符在一行。(可以先把复制的内容拷贝至记事本,然后编辑成一行载粘贴到该文件中)。
在这里要简单介绍一下,如何粘贴,用vim打开那个文件后,该文件不存在,所以 vim 会自动创建。按一下字母 "i
" 然后同时按 shift + Insert
进行粘贴(或者单击鼠标右键即可),前提是已经复制到剪切板中了。粘贴好后,然后把光标移动到该行最前面输入 ssh-rsa ,然后按空格。再按 ESC,然后输入冒号 wq 即 :wq
就保存了。格式如下图:
4)再设置 PuTTY 选项,点窗口左侧的 SSh –> Auth ,单击窗口右侧的 Browse… 选择刚刚生成的私钥, 再点Open ,此时输入 root,就不用输入密码就能登录了。
如果在前面你设置了 Key Passphrase ,那么此时就会提示你输入密码的。为了更加安全建议大家要设置一个 Key Passphrase。