centos7遇到-bash-4.2#问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos7遇到-bash-4.2#问题相关的知识,希望对你有一定的参考价值。

参考技术A 首先是描述一下问题的产生过程吧:不小心cp了很多的文件到/root/下面去了,去/root/下执行ll发现好多好多文件,这样对我要查找需要的文件来说实在是太麻烦了,没有一目了然的感觉了,于是我rm –rf /root/和rm –f/root/将/root/目录下的所有文件都删除了,当时以为这样式正常的删除,没有什么副作用。但是,以后问题就来了,发现只要su到root用户下面去就会出现-bash-4.2#开头的命令行,以前的是[root@localhost~]#,这肯定有问题啊,虽然后面的命令不会受影响,但是前面的路径看不到了,这是很难受的!

于是百度,发现了原来是因为/root/下面的隐藏文件“.bash_profile”文件丢掉了,到这儿才发现是删除/root/下的文件的时候,是全部删掉了的,没有注意到隐藏文件。到了这儿问题就明显了,好了,接下来就是修复这个问题了!但是在修复前有个问题就是网上一些说直接从普通用户家目录下面复制.bash_profile文件到/root/目录下面就可以了,但是测试后不可以,原先很简单,就是两个文件不一样。我们先来看看普通用户user1和user2下的.bash_profile文件是不是一样的:

[root@localhost ~]# vimdiff/home/user1/.bash_profile/home/user2/.bash_profile

结果发现普通用户之间是相同的,那么我们再看看root用户和普通用户之间是否也一样呢?[root@localhost ~]# vimdiff.bash_profile/home/user1/.bash_profile

这是截图,看出不同了吧,所以要从普通用户复制.bash_profile过来,还要修改一点文件的,就是将红色区域删除,就是删除“.local/bin:$HOME/”就可以了。

好了,到这儿了,原理文件都说的差不多了,接下来就是模拟出错环境和恢复过程:

首先在没有删除/root/下隐藏文件的时候去/root/下面ls –al | grep “.bash_profile”一下,看看有没有.bash_profile

[root@localhost ~]# ls -al | grep".bash_profile"

-rw-r--r--.1 root root176 Apr 12 16:18.bash_profile

-rw-r--r--.1 root root 12288 Apr 12 12:41 .bash_profile.swp

结果发现是有“.bash_profile”这个文件的!,接下来我们把它删了

[root@localhost ~]# rm -f .bash_profile

[root@localhost ~]# ls -al | grep".bash_profile"

-rw-r--r--.1 root root 12288 Apr 12 12:41 .bash_profile.swp

看出确实是删掉了,到这儿就是模拟了丢失.bash_profile文件环境,接下来我们就看看丢了这个文件的后果:

[user1@localhost ~]$ su -

Password:

Last login: Wed Apr 12 16:18:58 CST 2017 onpts/0

-bash-4.2# ls

anaconda-ks.cfginitial-setup-ks.cfg

-bash-4.2# pwd

/root

-bash-4.2#

结果是不是很怪,切换到root用户的时候,竟然不是[root@localhost ~]#,而是-bash_4.2#,这样我们一眼看不出当前的工作目录,很不舒服,接下来就是去恢复这个.bash_profile的文件了,如果之前有备份/root/下的.bash_profile文件,就好办了,直接cp到/root/下就可以了,但是之前是直接删掉了的,没有备份,没有原件了。那就到普通用户下面去复制修改一份.bash_profile文件到/root/文件下去

先复制文件到root家目录中去:

-bash-4.2# cp/home/user1/.bash_profile./

-bash-4.2# ls -al | grep".bash_profile"

-rw-r--r--.1 root root193 Apr 12 19:09.bash_profile

修改.bash_profile文件:

-bash-4.2# cat ./.bash_profile

# .bash_profile

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

.~/.bashrc

fi

# User specific environment and startupprograms

PATH=$PATH:$HOME/.local/bin:$HOME/bin

export PATH

-bash-4.2# vim ./.bash_profile

-bash-4.2# cat ./.bash_profile

# .bash_profile

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

.~/.bashrc

fi

# User specific environment and startupprograms

PATH=$PATH:$HOME/bin

export PATH

-bash-4.2#

好了,修改成功了;我们su –刷新一下!

-bash-4.2# su -

Last login: Wed Apr 12 19:09:03 CST 2017 onpts/0

[root@localhost ~]#

O(∩_∩)O~,发现又恢复了,到这儿就彻底解决了!

安装centos7遇到问题 引导成功但进不了图形界面 卡在如图。

unable to handle kernel paging request at fffa1d4c0ffbfec

参考技术A 开机时,大概启动到这里按"E"键进入GRUB启动管理器,进入管理器后选择第二个选项(可以用键盘的上下键选择),回车进入子菜单。
在行末添加“init=/bin/bash”,回车,再按“b”,重启。
重启开机后进入bash,编辑/etc/rc.local文件,把程序改为后台启动,但保存该启动配置文件。可能会遇到保存时报错。这时候就要再次重启进入按“E”进入编辑器,在末尾输入“mount -o remount,rw /”保存,重启。
1、主要原因是主办BIOS的设置出现了问题,当BIOS的设置不正确时重启电脑就会自动进入BIOS。
2、既然是BIOS的设置引起的,那么只需要在BIOS里面设置好就可以解决问题了。
3、当电脑开机进入BIOS后,选择Load Fail-safe Defaults、Load Optmized Defaults、Restore Defaults等类似字样的选项,选择完毕后按下“F10”保存并退出即可。

以上是关于centos7遇到-bash-4.2#问题的主要内容,如果未能解决你的问题,请参考以下文章

Cent OS7最好小化安装后配置网络

Linux -bash-4.2#问题和Cannot allocate memory

已解决:登录Linux的 -bash-4.2$ 问题

用户登录时显示 -bash-4.2$ 问题

CentOS之bash-4.2$提示符问题

Virtualbox 安装 centos7