解决Linux修改环境变量后导致登录循环进不去系统的问题

这个方法针对VMware虚拟机和CentOS系统

1.找到虚拟机文件

在VMware中右键虚拟机 → "打开文件位置"

找到扩展名为.vmx的文件

用文本编辑器打开.vmx文件(以管理员身份运行编辑器)

在文件末尾添加:

复制代码
# 增加引导延迟
bios.bootDelay = "5000"
# 强制进入BIOS
bios.forceSetupOnce = "TRUE"

2.保存并关闭文件

3**.启动虚拟机**,会自动进入BIOS设置

4.在BIOS中修改启动顺序

进入"Boot"菜单(键盘左/右,左:向左移动,右:向右移动)

将"Hard Drive"移到第一位(选中Hard Drive点击+/-,+:向上移动,-:向下移动)

保存并退出(F10,部分电脑:Fn+F10)

5.重启后立即按方向键(上/下/左/右键,注意下面有注释:立即按F2键或者(其他按键Esc------启动页面出现进度条)),应该能看到GRUB菜单

6.在GRUB菜单中

选择CentOS 7内核(通常是第一个)

按e键编辑启动参数

找到以linux16开头的行

在该行(整句话)末尾添加:init=/bin/bash

按Ctrl+X启动

7.进入bash后执行修复命令

进入bash前立即点击键盘上的按键(字母按键等)

复制代码
# 1.挂载根文件系统为可写,这里进入bash控制台
mount -o remount,rw /

# 备份原文件(可选)
cp /etc/profile /etc/profile.backup

# 删除错误的行(使用sed命令快速删除)
sed -i '/ource \/etc\/profile/d' /etc/profile

# 2.或者用vi编辑
vi /etc/profile(这里是修改错误代码的地方)
# 按i进入编辑模式,删除错误的行,按Esc,输入:wq保存退出



#使用finalshell的话
先终止循环:ctrl+c(尝试多点几下结束)
shift+ctrl+c
ctrl+z
#用vi编辑
vi /etc/profile(这里是修改错误代码的地方)
# 按i进入编辑模式,删除错误的行,按Esc,输入:wq保存退出

8.重启系统

复制代码
# 强制重启(如果正常重启失败)
reboot -f

如果显示无法重启则直接点击重新启动虚拟机

如果还没有成功的话建议重启虚拟机重复来几遍上面的步骤

相关推荐
斯班奇的好朋友阿法法4 小时前
中科方德(NFSChina)离线安装 RPM 包
运维
milo.qu5 小时前
RockyLinux9.7 docker部署Jisti Meet
linux·docker·容器
GanGanGanGan_5 小时前
CentOS 7.9 glibc 2.17 源码编译升级到 glibc 2.31
linux·运维·centos·glibc
charlie1145141915 小时前
嵌入式Linux驱动开发——class 和 device 模型 - 自动创建设备节点的幕后机制
linux·运维·驱动开发
杨云龙UP7 小时前
SQL Server2022部署:Windows Server 2016下安装、SSMS配置、备份还原与1433端口放通全流程_20260508
运维·服务器·数据库·sql·sqlserver·2022
梦想与想象-广州大智汇7 小时前
自建docker加速镜像,使用 Cloudflare Workers/Pages 部署加速教程
运维·docker·容器
枳实-叶7 小时前
【Linux驱动开发】第四天:dmesg日志全解+驱动加载失败极速排查
linux·运维·驱动开发
武超杰8 小时前
Nginx从入门到精通
运维·nginx
wdfk_prog8 小时前
正常关闭虚拟机时,不要点“关机”,而要点“关闭客户机”
linux·c语言·网络·ide·vscode
weixin_704266058 小时前
Nginx 反向代理 + 6 种负载均衡策略
运维·nginx