镜像里切换为普通用户

如果你登录远程虚拟机默认就是 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

相关推荐
go_bai几秒前
Linux-网络基础
linux·开发语言·网络·笔记·学习方法·笔记总结
糖~醋排骨12 分钟前
FW防火墙的配置
linux·服务器·网络
ZFB000113 分钟前
【麒麟桌面系统】V10-SP1 2503 系统知识——设置面板无法打开
linux·运维·kylin
2301_7809438442 分钟前
linux 对文件打补丁(Patch)
linux·运维·服务器
ICT董老师1 小时前
通过kubernetes部署nginx + php网站环境
运维·nginx·云原生·容器·kubernetes·php
敬往事一杯酒哈1 小时前
Ubuntu 20.04 安装Anacada
linux·运维·ubuntu
还在忙碌的吴小二1 小时前
Jenkins CLI (jcli) 使用手册
运维·jenkins
Lam㊣1 小时前
服务器端口转发的方法
linux·服务器
zxnbmk1 小时前
【7】Kubernetes存储(本章知识密度较高,仅浅浅了解后续详解)
linux·云原生·容器·kubernetes