- A+

男孩做鬼脸,惊喜
今天我们群里同学出现一个Linux操作后,系统无法正常使用的问题,具体问题的操作是这样的
1 、问题复现
step1:在root的用户下执行了如下两个命令:
mv /bin/ls /root mv /root /bin/ls
step2:接下来无法执行ls命令,显示如下:
[root@bogon Desktop]# ls bash: ls: command not found [root@bogon Desktop]#
step3:重启系统step4:分析一下,原因
mv /bin/ls /root 这个命令,把ls命令移动到了root下
[root@bogon ~]# cd /root [root@bogon ~]# pwd /root [root@bogon ~]# ./ls anaconda-ks.cfg Documents install.log ls Pictures Templates Desktop Downloads install.log.syslog Music Public Videos [root@bogon ~]#
mv /root /bin/ls 把/root/的文件移动到了 /bin/ls/命令下,这时候root改名为ls,如下:
[root@bogon ls]# pwd /bin/ls [root@bogon ls]# ./ls anaconda-ks.cfg Documents install.log ls Pictures Templates Desktop Downloads install.log.syslog Music Public Videos [root@bogon ls]#
2 、问题分析
两个问题需要考虑:
重启之后root是否可以正常登陆?
普通账号是否收到影响?
root登陆正常,ls无法使用,因为ls命令的路径发生了变化,正常
bash-4.1# ls bash: ls: command not found bash-4.1#
普通账号也正常登陆
[yanw@localhost Desktop]$ ls bash: ls: command not found [yanw@localhost Desktop]$
3 问题解决
step1:把/bin/ls/ls 文件拷贝到/root(不是没有root目录了吗? 重启系统后root登陆,会根据/etc/passwd 文件里面的root的家目录在创建一个,不受影响)
step2:拷贝ls到家目录
bash-4.1# cp /bin/ls/ls ./ bash-4.1# ./ls Desktop Documents Downloads ls Music Pictures Public Templates Videos bash-4.1#
step3:rm删除/bin/ls 复制ls到/bin下即可,全局使用正常
bash-4.1# rm -rf /bin/ls bash-4.1# cp ls /bin/ bash-4.1# ls Desktop Documents Downloads ls Music Pictures Public Templates Videos bash-4.1#
step4:修改一下提示符 ,修改全局变量PS1的值
PS1='[\u@h w]$ '
----注意$后面有一个空格! 如果没有空格的话,将会报错!
d :代表日期,格式为weekday month date,例如:"Mon Aug 1"
H :完整的主机名称。 例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux
h :仅取主机的第一个名字,如上例,则为fc4,.linux则被省略
t :显示时间为24小时格式,如:HH:MM:SS
T :显示时间为12小时格式
A :显示时间为24小时格式:HH:MM
\u :当前用户的账号名称
v :BASH的版本信息
w :完整的工作目录名称。 家目录会以 ~代替
W :利用basename取得工作目录名称,所以只会列出最后一个目录
# :下达的第几个命令
$ :提示字符,如果是root时,提示符为:# ,普通用户则为:$
step5:为了长期生效我们修改一下 /etc/profile文件,在最后一行添加上 PS1='[\u@h w]$ ' 文件解决
bash-4.1# source /etc/profile [root@localhost ~]# [root@localhost ~]# [root@localhost ~]#
完美解决

年轻的男孩捏他的鼻子坏气味的迹象
- 我的微信
- 这是我的微信扫一扫
-
- 我的微信公众号
- 我的微信公众号扫一扫
-