镜像里切换为普通用户

如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。


一次性解决方案:创建非 root 用户并使用

1. 创建一个非 root 用户(假设叫 ns3user

adduser ns3user

按提示输入密码,其他项可以直接回车跳过。

2. 给该用户 sudo 权限(如果你想使用 --enable-sudo

usermod -aG sudo ns3user

3. 将 ns-3 的代码目录授权给新用户(否则他可能没有访问权限)

假设你的 ns-3 放在 /root/ns-3-dev

# 把代码移到 /home/ns3user 目录

mv /root/ns-3-dev /home/ns3user/

# 把所有权给新用户

chown -R ns3user:ns3user /home/ns3user/ns-3-dev

或者你也可以复制一份而不是移动原目录。


4. 切换用户开始运行

su - ns3user

cd ~/ns-3-dev

./ns3 configure --enable-examples --enable-tests --enable-sudo

这时候一切就会正常了,即使需要 sudo,也会在需要时提示你输入 ns3user 的密码。


🔁 每次登录默认就是 root,怎么办?

你可以:

  • 在 root shell 输入 su - ns3user 每次切换;

  • 或者创建一个快捷登录脚本:

echo 'su - ns3user' >> /root/login-ns3.sh chmod +x /root/login-ns3.sh

以后你登录后直接运行

./login-ns3.sh

相关推荐
你好潘先生3 小时前
别再记命令了,用 yeero do 说句人话就能跑脚本,而且不烧 token
服务器·python·命令行
orion5714 小时前
Missing Semester Class1:course overview and introduction of shell
linux
SkyWalking中文站18 小时前
认识 Horizon UI · 6/17:Trace 探索器
运维·监控·自动化运维
用户1204872216120 小时前
Linux驱动编译与加载
linux·嵌入式
程序员老赵1 天前
服务器文件不想 SFTP 上传?Docker 跑个 File Browser,浏览器就能管理
服务器·docker·开源
火车叼位1 天前
写给初级开发者:SSL、SSH、HTTPS 与证书体系全解析
运维
vivo互联网技术1 天前
从 10 分钟到 1 秒:ES 深度分页任意跳页的三轮优化实战
服务器·数据库·redis·elasticsearch·深度分页
用户805533698031 天前
Input 子系统架构:Core、Handler、Driver 三层是怎么协作的
linux·嵌入式
用户805533698031 天前
RK-Forge外设系列开篇 - 把板子从「能启动」变成「能用」:Ethernet/SPI/MMC 三个纯接线外设
linux·github·嵌入式