首页 > 其他分享 >配置 Buildroot 的命令行提示符显示用户名和主机名

配置 Buildroot 的命令行提示符显示用户名和主机名

时间:2024-09-06 11:51:16浏览次数:11  
标签:Buildroot 用户名 文件系统 主机名 etc build my board

配置 Buildroot 的命令行提示符显示用户名和主机名

在 Buildroot 构建根文件系统之前,如果你想预先配置命令行提示符,使其在系统启动时显示用户名和主机名,可以通过以下几种方法在构建过程中设置这些配置文件。你可以通过 Buildroot 的配置选项或修改根文件系统的文件内容来实现。

1. 使用 Buildroot overlay 机制

Overlay 是一种在构建过程中将你自定义的文件覆盖到根文件系统的方法。你可以提前创建所需的文件和目录结构,然后在构建时让 Buildroot 把这些文件加入到最终的文件系统中。

步骤:

  1. 创建 Overlay 目录
    在 Buildroot 的工作目录下,创建一个 Overlay 目录来放置你自定义的配置文件。假设目录名为 board/my_overlay

    mkdir -p board/my_overlay/etc
    
  2. 创建或修改 /etc/profile 文件
    board/my_overlay/etc/ 目录下创建或修改 profile 文件,设置命令行提示符:

    vi board/my_overlay/etc/profile
    

    添加以下内容:

    # /etc/profile
    export PS1='\u@\h:\w\$ '
    
  3. 在 Buildroot 配置中启用 Overlay
    打开 Buildroot 配置菜单,并指定你的 Overlay 目录。

    make menuconfig
    

    然后在菜单中:

    System configuration  ---> 
       Root filesystem overlay directories (board/my_overlay)
    

    输入 board/my_overlay 作为根文件系统的 Overlay 目录。

  4. 重新构建根文件系统
    配置完成后,执行构建命令:

    make
    

    在构建完成的根文件系统中,/etc/profile 将被替换为你的自定义版本,登录时会看到自定义的命令行提示符。

2. 使用 Buildroot post-build script 机制

另一种方法是在 Buildroot 完成构建后,使用 post-build 脚本修改根文件系统。

步骤:

  1. 创建 Post-build 脚本
    在 Buildroot 项目目录下创建一个 post-build.sh 脚本,例如 board/my_board/post-build.sh

    mkdir -p board/my_board
    vi board/my_board/post-build.sh
    
  2. 在脚本中修改 /etc/profile 文件
    在脚本中,添加命令以修改根文件系统中的 /etc/profile 文件。

    #!/bin/sh
    
    # Add PS1 prompt configuration to /etc/profile
    echo "export PS1='\u@\h:\w\$ '" >> $TARGET_DIR/etc/profile
    

    TARGET_DIR 是 Buildroot 内部的变量,指向构建中的根文件系统目录。

  3. 在 Buildroot 配置中启用 Post-build 脚本
    打开 Buildroot 配置菜单,并指定 post-build 脚本路径:

    make menuconfig
    

    然后在菜单中:

    System configuration  ---> 
       Custom scripts to run after creating filesystem images (board/my_board/post-build.sh)
    
  4. 重新构建根文件系统
    配置完成后,运行构建命令:

    make
    

    在构建过程中,post-build.sh 会自动运行并修改 /etc/profile 文件,最终文件系统的提示符会如预期设置。

3. 自定义 BusyBox 配置(可选)

如果你的根文件系统是使用 BusyBox 构建的,BusyBox 的 ash 也提供了修改提示符的能力。你可以通过修改 BusyBox 的配置来调整提示符。

  1. 运行以下命令进入 BusyBox 配置菜单:

    make busybox-menuconfig
    
  2. 在菜单中导航到:

    Shells ---> 
       BusyBox ash
    
  3. 确保 Support for PS1 选项已启用。启用后,BusyBox 将允许使用 PS1 环境变量来配置 Shell 提示符。

总结

  • 如果你想通过文件覆盖的方式定制配置文件,推荐使用 Overlay 机制。
  • 如果想在构建后通过脚本自动定制,可以使用 Post-build script
  • 两种方式都可以实现自定义提示符,在构建完成的系统中显示用户名和主机名。

标签:Buildroot,用户名,文件系统,主机名,etc,build,my,board
From: https://blog.csdn.net/awei2631797/article/details/141955108

相关文章

  • 各个网络厂商网络设备默认的用户名和密码大全
    吉祥知识星球http://mp.weixin.qq.com/s?__biz=MzkwNjY1Mzc0Nw==&mid=2247485367&idx=1&sn=837891059c360ad60db7e9ac980a3321&chksm=c0e47eebf793f7fdb8fcd7eed8ce29160cf79ba303b59858ba3a6660c6dac536774afb2a6330&scene=21#wechat_redirect《网安面试指南》http://......
  • root 添加登录密码(基于buildroot)
    通过以前这篇文章Linux启动后自动登录root进入控制台-f1engmin11-博客园(cnblogs.com) 我们可以知道,Linux启动后,是否自动登录root用户,可以通过修改/etc/inittab文件的 respawn动作来实现。下面记录一下如何添加root登录密码:1.首先 /etc/inittab文件设置为ro......
  • java采用base64算法加密用户名和密码
    这里做简单记录来记录整个过程。1.首先引入前端base64.js(这里我就直接放到代码块里)2.使用base64在登陆界面加密用户名和密码3.在后端构建base64解密文件,并解密前端的用户名和密码代码如下:1.base64.js代码(创建js文件保存即可用)/*!*jquery.base64.js0.1-https://github.......
  • 迅为电子RK3588S开发板第三章Buildroot系统功能测试
      iTOP-3588S开发板采用瑞芯微RK3588S处理器,是全新一代AloT高端应用芯片,采用8nmLP制程,搭载八核64位CPU(四核Cortex-A76+四核Cortex-A55架构),集成MaliG610MP4四核GPU,内置AI加速器NPU,算力达6Tops,支持8K视频硬件编码器和硬件解码器,提供了许多功能强大的嵌入式硬件引擎,性能更强......
  • python读取txt文本文件-批量更改mysql数据库中一批用户的用户名的python脚本保存及转
    一、python读取txt文本文件-批量更改mysql数据库中一批用户的用户名的python脚本保存    做一个简单的事:使用python读取一个txt文件,里面存储着N行用户id,需要一行行读取后再读取另一个存储用户昵称的txt文件,判断昵称是否有重复,如果没有重复就将数据库中的当前uid用户的昵称......
  • buildroot linux 添加QT自动启动桌面
    /etc/init.d/S99QTDesktop#!/bin/sh##Start/stopQTdesktop#exportXDG_RUNTIME_DIR=/usr/qt-armhf/lib#配置tslibexportTSLIB_TSDEVICE=/dev/input/event1exportTSLIB_CALIBFILE=/etc/pointercalexportTSLIB_CONFFILE=/etc/ts.confexportTSLIB_PLUGINDIR=/usr/lib/tse......
  • Buildroot构建Qt根文件系统-思维导图-学习笔记-基于正点原子阿尔法开发板
    Buildroot构建Qt根文件系统获取Buildroot源码Buildroot源码下载地址,https://buildroot.org/本次下载的是长期支持版本移动至ubuntu后解压tarxfbuildroot-2022.02.3.tar.gz解压后的Buildroot源码配置Buildroot安装显示图形菜单需要的库sudoapt-getin......
  • redis设置用户名密码
    今天学习redis的相关配置知识,起因来自于华为云服务器未设置用户名密码导致遭受到攻击,所以我要设置一个用户名密码,但是设置命令后出现这样的报错:Jobforredis.servicefailedbecausethecontrolprocessexitedwitherrorcode.See"systemctlstatusredis.service"and"j......
  • ZBlog数据库配置文件在哪里?怎么修改数据库用户名、密码等信息
    一般是在安装程序完成后会自动生成c_option.php配置文件在 zb_users 目录下如何提前配置好c_option.php再执行安装过程?需要在新建文件 c_option.php 加入 'ZC_INSTALL_AFTER_CONFIG'=>true ,再填入其它的数据库配置,这样打开网站就会自动转入安装页面进行安装过程(......
  • Linux hosts主机名不对
    Linux的root用户和oracle用户显示的主机名不一致安装完oracle之后,root用户的主机名为localhost,但是oracle用户的主机名显示bogon。转载:Linuxhosts主机名不对1、现象:[root@bogon~]#[root@bogon~]#hostnamebogon2、查看几个相关文件,都正确[root@bogon~]#vi/etc/sysc......