gpt4 book ai didi

c - 如何在嵌入式Linux中配置IP地址?

转载 作者:行者123 更新时间:2023-11-30 18:58:22 25 4
gpt4 key购买 nike

我正在开发运行 Linux(带有 BusyBox)的嵌入式设备。我需要提供一个命令行工具来配置静态IP地址。有一些限制。

  1. 使用 ifconfig 不会完成这项工作,因为它会在以下情况下丢失:系统重新启动。
  2. 由于资源非常有限,因此没有 GUI。
  3. 有一个 vi 文本编辑器来修改 Linux 配置文件。但不知怎的,这也不被接受。因为假设客户不知道如何使用vi或者对Linux有更深入的了解。我需要提供一个工具,以便他们只需按“ConfigMyIP 192.168.0.1 255.255.255.0”之类的内容即可完成工作。

知道如何做到这一点吗? (使用 shellC 或两者)

最佳答案

我自己想出了另一个解决方案。总体思路是在系统init目录下创建一个可以配置IP地址的shell脚本。代码如下:

#include <stdio>
#define MAXBUF 100

int main(int argc, char** argv)
{
FILE* f;
char content[MAXBUF];
f = fopen("/etc/init.d/configip", "w+");
strcat("#!/bin/sh\n", content);
strcat("ifconfig ", content);
strcat(argv[1], content);
strcat(" ", content);
strcat(argv[2], content);
strcat(" up", content);
fwrite(content, 1, strlen(content) + 1, f);
fclose(f);
return 0;
}

当使用“192.168.0.1 255.255.255.0”等参数执行该程序时,它将在 etc/init.d 中生成 shell 脚本:

#!/bin/sh
ifconfig 192.168.0.1 255.255.255.0 up

每次 Linux 启动时都会加载该脚本。

关于c - 如何在嵌入式Linux中配置IP地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16959911/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com