镜像里切换为普通用户

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

相关推荐
徐子元竟然被占了!!5 分钟前
虚拟化技术
运维
为什么不问问神奇的海螺呢丶8 分钟前
n9e categraf docker 监控配置
运维·docker·容器
Kiyra9 分钟前
从《守望先锋》2026前瞻,看大型分布式系统的“重构”与“并发挑战”
运维·服务器·重构
青树寒鸦10 分钟前
wsl的docker备份mongo和迁移
运维·mongodb·docker·容器
niceffking10 分钟前
linux系统编程-线程概述
linux·运维
Bdygsl13 分钟前
Linux(12)—— 文件与文件描述符
linux·运维·服务器
前端玖耀里17 分钟前
Linux C/C++ 中系统调用与库函数调用的区别
linux·c语言·c++
艾莉丝努力练剑17 分钟前
【Linux:文件】基础IO:文件操作的系统调用和库函数各个接口汇总及代码演示
linux·运维·服务器·c++·人工智能·centos·io
松涛和鸣21 分钟前
70、IMX6ULL LED驱动实战
linux·数据库·驱动开发·postgresql·sqlserver
使者大牙36 分钟前
【单点知识】CANopen实用协议介绍
服务器·网络·tcp/ip