修改主机名
前言导入 : 首先,我们在修改主机名的时候是有两种方式的,一种是 临时修改主机名,一种是
永久修改主机名。 因此,两种不同的方式,自然,两种命令也不相同;带来的效果
影响自然也是不一样的!!
# 在这里我们以 [root@localhost ~]# 来对照,对照前后修改主机名的变化
# 进行主机名的修改对权限是有要求的,只能是 root 用户才可以,普通用户没有修改
主机名的权限
临时修改主机名 :
命令 : hostname server
# 上示命令中的 server 不在敲命令时出现,说这句话的意思是 这里的
server 代表的是 你要进行 主机名的修改,那么修改后的主机名是谁呢?
也就是说 server 指的是 修改后的主机名称!! 是修改后即你想要主机名
称变的那个名称!!
示例 :
[root@localhost ~]# hostname rhce
[root@localhost ~]#
[root@rhce ~]#
# 在示例代码框中,可以看到分为了上下两个部分。
上部分 : 第一行代码 : 进行临时修改主机名的具体命令表达;
修改后的主机名为 rhce
第二行代码 : 虽然第二行什么都没有,但是想要表的意思就
是,按理来说当第一行修改主机名的代码成功
执行后,你再次显示的主机名称(也就是第二
行的命令行),应该是我们修改后的名称 rhce
但是,为什么不是呢 ?
# 因为,无论是临时修改还是永久修改,只
要是修改主机名,那么,再修改命令执行
后,必须进行 重新远程连接才能生效!!
下部分 : 显然,下部分的命令行已经能够看到 修改后的 主机名 rhce
了,这也是因为我们重新进行了远程连接以生效 !!
永久修改主机名 :
命令 : hostnamectl set-hostname server
# 同理这里的 server 也指的是 修改后的主机名
示例 :
[root@rhce ~]# hostnamectl set-hostname rhcsa
[root@rhce ~]#
[root@rhcsa ~]#
# 同理,所示代码区为上下两个部分,意义也自是不相同的
上部分 : 第一行 为永久修改主机名的代码示例。 修改主机名为 rhcsa
的主机名
第二行 为对照以表达 : 不重新进行远程连接,则修改主机名
的命令就无法生效!! 因此,在修改主机名的命令成功执行
后,还是显示的只修改之前的主机名 rhce
下部分 : 可以看到,命令行中的主机名为我们要修改的 rhcsa , 说明
我们已经修改成功,成功的原因也是由于我们重新进行了远程
连接。
# 我们也可以不进行重新连接,可以选择复制一个会话框,来
新建一条连接 其作用和 重新连接的作用是一样的!!
为什么呢 ???
当我们只进行了 修改主机名的命令并且是成功执行后,而
并没有重新建立连接或者并没有复制一个会话,我们发现这
个时候,主机名称并没有修改,还是以前的主机名;
这是因为,虽然我们的修改主机名的命令执行成功了,但
是并没有加载环境变量,而,当天我们复制一个新会话或
者重新进行连接,它会刷新一次环境变量,所以,会看到
修改后的主机名!!!!
注 : 那么,所谓的这两种方法, 临时修改主机名, 永久修改主机名,它们的区别到底在哪里?
这个区别是这样理解的 : 就是当命令成功执行后,并且重新进行连接已经能够看到修改
后的主机名(到这一步,这就说明无论是 临时还是永久都能够
把主机名进行修改,但这不是区别,是这两个方法实现修改主
机名的功能)
区别在于 :
当临时修改主机名成功后,倘若重新启动系统,重
启后,会发现刚才修改的主机名又恢复成修改前的
主机名了—— 这就对应的 临时二字!!!!
而 永久修改无论重不重启,重启也好,不重启也罢
它的主机名永远都是 修改后的主机名!!!!
破解密码
前言导入 : 这里的破解密码听起来蛮高大上的,其实,也就是重置密码,就比如,当你忘记
了自己的密码的时候怎么办?? 密码你忘掉了,自然也不能再使用 linux 系统
了,你登录都登录不了!!
那为什么又叫破解密码呢 ??
上面这个情况,其实,仔细想想和破解密码是一样的,比如现在你想使用别人
的 linux 系统,但你又不知道人家的 root 密码,那怎么办?? 是不是也就相当
于你要把别人的 密码 给破解掉,只不过,是更改了它的密码,自己重新设置了
一个新的密码,他之前的密码也就失效了!!
两种方法 : 重置密码有两种方法 rd.break 和 init 两种方法
rd.break :
具体步骤 :
第一步 : 重启系统,在下图显示时按 " e "
注 : 按 e 时,要按快一点,不然就被系统直接跳过了
第二步 :找到 kernel 这行的末尾,在空格后 输入 rd.break , 输入完后,按
ctrl + x
注 : kernel 一整行是一直到 quiet 才结束的,所以它的行末尾是在
quiet 后。
第三步 :查看可选步骤细节
注 : 这一步只是查看,查看发现 sysroot 是以 只读 (绿色框中的 ro)的形
式挂载的,而我们需要的是 可读可写的方式来挂载
第四步 : 以读写方式挂载 /sysroot
注 : 第一行绿色方框为命令,下面的 mount | grep sysroot 也是命令
执行成功后会发现 小绿色方框 由 ro 变为 rw 即说明 由只读变为
可读可写。
第五步 : 进入 /sysroot 子系统 并修改密码
注 : 第二个绿框的内容就是 修改密码的命令
echo redhat | passwd --stdin root
代表的就是 修改密码为 redhat
第六步 : 强制重置文件系统的上下文
第七步 : 退出
第八步 : 接着退出 ,会自动重置系统上下文,会有个百分比,然后耐心等待
注 : 这里会卡一会儿,然后就全部好了。
init 方法 :
第一步 : 重启系统
第二步 :出现图示,按下 e 键 进入编辑模式
注 : 要立即按下 e 键,避免 系统跳过
第三步 : 进入编辑模式后,进行修改编辑;修改后,按 ctrl+x 键
1. 将 ro 改为 rw
2. 在hkernel 这行末尾 添加 init = /bin/sh
注 : 上图所示为按 e 进入编辑模式还未修改的样子
hkernel 的行末尾是在 quiet 后面。
在行末尾添加 init = /bin/sh 的时候,注意在 quiet 后空出一个空格
再添加。
图示为 修改后的样子; 修改后,按 ctrl + x 即可。
第四步 :然后修改密码即可
注 : echo "root" | passwd --stdin root 即是 修改密码为 root 的语句
修改成功后便会出现 successfully 成功显示!!!!
第五步 : 如果之前系统启用了 selinux, 必须运行以下命令,否则将
无法正常启动系统 : touch /. autorelabel
注 : 这里的 selinux 在我们当时装完系统的时候就是默认启
动的,所以,在修改密码的语句执行后,便执行 上示语句
第六步 : 运行命令 exec /sbin/init 来正常启动,
或者, 用命令 exec /sbin/reboot 重启 。
重启之后即可!!!
而后登录的密码就是 本次破解后的密码!!!