openwrt 编译 提示不要用root用户怎么办
时间: 2023-08-25 15:33:47 浏览: 188
在 OpenWrt 编译过程中,建议不要使用 root 用户进行编译,因为这可能会导致一些权限问题。如果您已经以 root 用户身份开始了编译过程,可以通过以下方式切换到一个普通用户:
1. 打开一个新的终端窗口。
2. 输入 su username 命令,其中 username 是您要切换到的普通用户的用户名。
3. 输入该普通用户的密码,即可切换到该普通用户。
4. 在新的终端窗口中,进入 OpenWrt 的源代码目录,重新开始编译过程。
如果您没有为普通用户设置密码,可以使用 passwd 命令为其设置密码。另外,为了避免权限问题,建议将 OpenWrt 的源代码放在一个普通用户的 home 目录下进行编译。
相关问题
openwrt 编译po2lmo: command not found
根据你提供的引用内容,报错信息是"/bin/po2lmo: Permission denied"和"openwrt 编译po2lmo: command not found"。这两个错误可能是由于权限问题和缺少相关命令导致的。
对于"/bin/po2lmo: Permission denied"错误,它表示你没有执行该命令的权限。你可以尝试使用sudo命令来提升权限,例如:
```shell
sudo /bin/po2lmo
```
如果你是root用户,可以直接执行命令:
```shell
/bin/po2lmo
```
对于"openwrt 编译po2lmo: command not found"错误,它表示你的系统中没有安装po2lmo命令。你需要确保你已经正确安装了po2lmo命令。你可以通过以下命令来安装po2lmo:
```shell
sudo apt-get install gettext
```
或者使用以下命令安装gettext工具包:
```shell
sudo yum install gettext
```
如果以上方法仍然无法解决问题,可能是由于你的系统中没有提供po2lmo命令的可执行文件。你可以尝试从其他来源获取该命令的可执行文件,并将其放置在适当的位置。
openwrt sd卡编译
编译 OpenWrt 到 SD 卡是一个比较常见的需求。下面是一些简单的步骤:
1. 首先,你需要下载 OpenWrt 的源代码。你可以从官方网站下载。在下载之前,你需要确定你要编译的目标设备和对应的版本。
2. 下载源代码之后,你需要解压缩它。假设你解压缩到了 /home/user/openwrt 目录下。
3. 接下来,你需要配置编译选项。在终端中进入 /home/user/openwrt 目录,然后运行 make menuconfig 命令。这个命令会打开一个菜单,你可以在里面选择你需要的选项,比如设备类型、编译类型、包管理器、网络配置等等。配置完成之后,保存并退出。
4. 然后,你需要编译 OpenWrt。在终端中,进入 /home/user/openwrt 目录,然后运行 make 命令。这个命令会开始编译 OpenWrt,这个过程可能需要一些时间。
5. 编译完成之后,你需要把编译结果拷贝到 SD 卡中。你需要先格式化 SD 卡,并将其插入到你的电脑中。然后,在终端中进入 /home/user/openwrt/build_dir/target-arch/root-filesystem 目录,运行以下命令:
```
sudo mount /dev/sdx /mnt # 这里的 x 是你的 SD 卡设备号,一般是 b 或 c
sudo make install TARGET_ROOTFS_DIR=/mnt
sudo umount /mnt
```
这个命令会将编译结果拷贝到 SD 卡中。
6. 最后,你需要将 SD 卡插入到目标设备中,并启动它。如果一切正常,你应该能够看到 OpenWrt 运行起来了。
希望这些步骤能够帮助你成功编译 OpenWrt 到 SD 卡中。
阅读全文