- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在为嵌入式 busybox 系统编写一个应用程序,该系统允许 TCP 连接,然后向所有连接的客户端发送消息。当我远程登录到盒子并从 shell 提示符运行应用程序时,它工作得很好,但是当它从 inittab 启动时,我遇到了问题。它将启动,我可以使用一个客户端连接到该应用程序。它成功向该客户端发送一条消息,然后崩溃。如果我在发送任何消息之前连接第二个客户端,它也会崩溃。同样,如果我从 shell 提示符启动它,一切都会完美运行。
日志中出现以下错误:
<11>Jan 1 00:02:49 tmmpd.bin: ERROR: recvMessage failed, recv IO error
<11>Jan 1 00:02:49 tmmpd.bin: Some other LTK TCP error 103. Closing connection 10
<11>Jan 1 00:02:49 tmmpd.bin: ERROR: recvMessage failed, recv IO error
<11>Jan 1 00:02:49 tmmpd.bin: Some other LTK TCP error 103. Closing connection 10
如有任何建议,我们将不胜感激!
最佳答案
我在 arm-qemu
和 busybox
中进行了一些测试,并且我能够作为用户测试启动一个脚本以在后台运行。
我创建了一个新用户“test”:
buildroot-dir> cat etc/passwd
test:x:1000:1000:Linux User,,,:/home/test:/bin/sh
创建了一个简单的testscript.sh
:
target_system> cat /home/test/testscript.sh
#!/bin/sh
while :
do
echo "still executing in bg"
sleep 10
done
在我的/etc/init.d/rcS
中,我为其添加了一个启动命令:
#!/bin/sh
mount -t proc none /proc
mount -t sysfs none /sys
/sbin/mdev -s
/bin/su test -c /home/test/testscript.sh& # < Added this
现在,当我启动系统时,脚本将在后台运行,当我 grep 查找该进程时,它已作为用户 test
启动(默认 root 用户只是 0
):
target_system> ps aux | grep testscript
496 test 0:00 sh -c home/test/testscript.sh
507 test 0:00 {testscript.sh} /bin/sh home/test/testscript.sh
关于c - 仅当从 busybox 上的 inittab 启动时应用程序才会崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22976249/
在我的树莓派上,我希望自己编写的服务器在启动时启动,并在出现段错误时重新启动,因此我将其添加到 /etc/inittab 中。问题是服务器无法启动 我添加的行: 1:2345:respawn:/hom
我想将我的 Raspberry Pi 设置为以特定用户自动登录。我用谷歌搜索了这个,我找到的解决方案是关于编辑/etc/inittab 文件。我的问题是现在我没有该文件,它在我的 Raspbian 版
我正在用 beaglebone 开发一个应用程序。我想将启动脚本添加到我的 Beaglebone,但我找不到/etc/inittab。我正在使用图像:Angstrom-Cloud9-IDE-GNOME
在 CentOS 6.x 中,/etc/inittab 配置文件只能用来设置系统的默认运行级别。 那么,什么是运行级别呢?其实 Linux 是通过运行级别来确定系统启动时到底启动哪些服务的。Linux
我有一个带有处理器 AT91SAM9G45 的嵌入式 ARM 系统。 系统由两部分组成: Linux 内核 (4.14.79) Busybox 1.29.3 作为 initramfs 镜像。 我使用腻
我已经安装了 Debian (Jessie) 的最新稳定版本,但/etc/inittab 不存在。我读过名为 Sysv 的新 init 系统。 我需要启动一个带参数的服务,我曾经在 inittab 中
我正在为嵌入式 busybox 系统编写一个应用程序,该系统允许 TCP 连接,然后向所有连接的客户端发送消息。当我远程登录到盒子并从 shell 提示符运行应用程序时,它工作得很好,但是当它从 in
我从旧的 Rasbian 脚本中获得了这个命令 sed -i '/6:23:respawn:\/sbin\/getty 38400 tty6/a 8:23:respawn:\/sbin\/getty
似乎它有一个 respawn 参数, 但是我还没弄明白怎么用。 最佳答案 比如 mine:234:respawn:/usr/local/bin/myscript 查看此页面以获得很好的解释 http:
我们过去在/etc/inittab 中有两个条目: ::sysinit:/etc/init.d/rcS ttyS0::respawn:-/bin/sh rcS 是一个 shell 脚本,它通常启动我们
我创建了一个包含以下内容的 shell 脚本。 #!/bin/bash TMP_FILE=/tmp/inet_up no_inet_action(){ reboot } HOUR="$(dat
我正在尝试使用 tview 运行一个应用程序来显示一些遥测数据。当正常从 cmdline 调用时,应用程序运行良好。当我更新我的 inittab 以运行应用程序时: c1:2345:respawn:/
我有一个 python 脚本,我想从 inittab 启动它,如下所示 s1:respawn:/home/a_user/app/script.py 我相信 initab 以 root 身份执行,因此
场景: 我有一个在 linux 上运行的进程,该进程在后台通过连接在 /etc/init.d/ 的脚本启动,称为 MyApp 这只是一个没有的 shell 脚本.sh。以下是我的init.d脚本脚本
when I was installing software using apt-get, the following error occurred: Setting up secvpn (2.23)
注意:我运行的是 Red Hat 6.7 我有一个服务,它配置了 Linux init 系统,在机器启动时将进程作为服务启动。这是通过从命令行执行此一次性配置来完成的: ln -snf /home/m
当我的程序在 inittab 中运行时,我正在尝试执行固件升级。我的程序将运行 2 个命令。一个用于从 tarball 中提取安装程序脚本,另一个用于执行安装程序脚本。在我的代码中,我使用了 syst
我是一名优秀的程序员,十分优秀!