解决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

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

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

相关推荐
ShineWinsu1 小时前
对于Linux:网络基础的解析
linux·网络·面试·udp·笔试·ip·tcp
Asuicao1 小时前
centos7.9版本升级ssh OpenSSH 9.8p1 源码 OpenSSL 1.1.1w 源码包以及安装升级回滚文档
运维·ssh
耍酷的魔镜2 小时前
谈谈如何使用Netty开发实现高性能的RPC服务器
服务器·网络协议·rpc
志栋智能2 小时前
超自动化安全中的威胁狩猎
运维·安全·自动化
↘"LYong2 小时前
旧版 CentOS 安装 Docker 完整指南(附国内镜像加速)
linux·运维·docker
Zhang~Ling3 小时前
Vim 多模式详解:命令、插入、底行与插件配置
linux·编辑器·vim
Elastic 中国社区官方博客3 小时前
Elastic 在 Everest Group 企业搜索产品 PEAK Matrix® 评估 2026 中被评为领导者
大数据·运维·人工智能·elasticsearch·搜索引擎·ai·全文检索
程序员在囧途3 小时前
likeadmin-api API 中转站怎么做统一报价?从 /pricing、/user/balance 到 task_id 回执的落地方法
运维·服务器·数据库·likeadmin-api·api中转站·token计费
cookies_s_s4 小时前
C++ 字符串动态创建对象 -- 工厂模式、自动注册、模板递归动态调用
服务器·开发语言·c++
想你依然心痛4 小时前
Linux用户空间与内核空间通信:netlink、ioctl、mmap 零拷贝与性能对比
linux·运维·服务器