标签: busybox

如何从进程中获取整个命令行?

如何使用进程名称从正在运行的进程中获取命令参数或整个命令行?

例如这个过程:

# ps
PID   USER     TIME   COMMAND
 1452 root       0:00 /sbin/udhcpc -b -T 1 -A 12 -i eth0 -p /var/run/udhcpc.eth0.pid
Run Code Online (Sandbox Code Playgroud)

我想要的是/sbin/udhcpc -b -T 1 -A 12 -i eth0 -p /var/run/udhcpc.eth0.pid或争论。我知道进程名称并想要它的参数。我在 SliTaz 上使用 Busybox。

scripting process ps busybox

92
推荐指数
4
解决办法
15万
查看次数

什么会在每次启动时覆盖 /etc/resolv.conf?

我得到了一个 mini 的文件linux,它可以直接启动到firefox. 它适用于它应该做的所有事情,只是我没有互联网连接。

我们在网络中有 3 个 DNS 服务器,它们都可以正常工作。我也可以ping通他们。但是当我尝试ping google.dewget google.de我得到一个bad address错误。

nslookup google.de 出于某种原因工作。

我将问题追溯到我resolv.conf在启动系统上的内容与resolv.conf我放入.iso文件中的内容不同。

我尝试了解创建和修改resolv.conf. 我不太确定我是否掌握了所有内容,但我绝对没有在那里找到我的解决方案。

所以作为最后的努力,我尝试resolv.conf使用

:~# chattr +i /etc/resolv.conf
Run Code Online (Sandbox Code Playgroud)

令我惊讶的是,当重新构建并再次启动时,我的文件被重命名为resolv.conf~,取而代之的是一直困扰着我的同一个标准文件。

文件内容让我相信它是从网络本身获取信息的。.iso在没有互联网访问权限的情况下启动Virtualbox 时,我的文件将保持原样。

我试图/etc/dhcp/dhclient.conf通过删除domain-name-serverdomain-name-searchrequest文件的一部分来改变不从网上获取信息。

不幸的是没有工作。

我没有安装 NetworkManager。ISO 基于 Ubuntu 14.04。

可能缺少重要信息。我很乐意提供它。

更新:

我想我找到了清除resolv.conf.

好像是 /usr/share/udhcpc/default.script

#!/bin/sh

# udhcpc script edited by Tim Riker …
Run Code Online (Sandbox Code Playgroud)

networking dhcp udhcpc busybox resolvconf

40
推荐指数
3
解决办法
16万
查看次数

系统何时向进程发送 SIGTERM?

我的服务器程序收到一个 SIGTERM 并停止(退出代码为 0)。我对此感到惊讶,因为我很确定它有足够的内存。linux (busybox) 在什么情况下会向进程发送 SIGTERM?

linux process signals busybox

32
推荐指数
2
解决办法
10万
查看次数

从“grub 救援>”崩溃中恢复

最初发布到 AskUbuntu.com ...

AskUbuntu 采用了关闭有关 EOL(生命周期结束)版本问题的策略。还有一个声音队伍来删除它们。为了防止可能丢失这个热门问题(迄今为止有 342335 次浏览),我在此处放置了一个修订版。--- 文档打捞者

“经典”系统...

  • Puppy Linux 5.2.8 (Lucid) 基于 Ubuntu 10.04 (Lucid Lynx)
  • GRUB 2引导加载程序

GRUB 2将许多*.mod文件(内核模块)放在/boot/grub. 删除这些文件(认为它们是放错位置的声音文件)导致重新启动失败并提示grub rescue>.

在这种情况下如何恢复?

ubuntu boot-loader grub2 busybox

29
推荐指数
2
解决办法
35万
查看次数

BusyBox 命令是真正内置的吗?

我在阅读著名的Unix Recovery Legend 时,突然想到:

如果我打开了一个 BusyBox shell,并且 BusyBox 二进制文件本身被删除了,我还能使用 BusyBox 二进制文件中包含的所有命令吗?

显然,我无法从另一个正在运行的 shell 中使用这些命令的 BB 版本,例如bash,因为 BusyBox 文件本身将无法bash打开和运行。但是在 BusyBox 的运行实例中,在我看来,BB 可以通过两种方法运行命令:

  1. 它可以派生并执行一个新的 BusyBox 实例,使用适当的名称调用它——并从磁盘读取 BusyBox 文件来执行此操作。
  2. 它可以分叉并执行一些内部逻辑来运行指定的命令(例如,通过将其作为函数调用运行)。

如果 (1) 是 BusyBox 的工作方式,我希望在删除 BB 二进制文件后,某些 BusyBox 提供的命令在 BB 的运行实例中将变得不可用。

如果 (2) 是它的工作原理,那么 BusyBox 甚至可以用于恢复 BB 本身已被删除的系统——前提是仍然可以访问 BusyBox 的一个正在运行的实例。

这在任何地方都有记录吗?如果没有,有没有办法安全地测试它?

busybox system-recovery

29
推荐指数
2
解决办法
3885
查看次数

删除重复项时合并两个列表

我有一个使用 Busybox (OpenWRT) 的嵌入式 linux 系统 - 所以命令是有限的。我有两个文件,看起来像:

第一个文件

aaaaaa
bbbbbb
cccccc
mmmmmm
nnnnnn
Run Code Online (Sandbox Code Playgroud)

第二个文件

mmmmmm
nnnnnn
yyyyyy
zzzzzz
Run Code Online (Sandbox Code Playgroud)

我需要将这 2 个列表合并为 1 个文件,并删除重复项。 我没有差异(空间有限),所以我们得到使用的伟大awksedgrep(或可能被包含在一个标准的Busybox的实例其他工具)。转到合并文件,例如:

command1 > mylist.merge 
command2 mylist.merge > originallist
Run Code Online (Sandbox Code Playgroud)

完全没问题。它不必是单行命令。

当前在我使用的 Busybox 实例中定义的函数(默认 OpenWRT):[, [[, arping, ash, awk, basename, brctl, bunzip2, bzcat, cat, chgrp, chmod, chown, chroot, clear, cmp, cp、crond、crontab、cut、date、dd、df、dirname、dmesg、du、echo、egrep、env、expr、false、fgrep、find、free、fsync、grep、gunzip、gzip、halt、head、hexdump、 hostid、hwclock、id、ifconfig、init、insmod、kill、killall、klogd、less、ln、锁、记录器、logread、ls、lsmod、md5sum、mkdir、mkfifo、mknod、mktemp、mount、mv、nc、netmsg、 netstat, nice, nslookup, ntpd, passwd, pgrep, pidof, ping, ping6, pivot_root, pkill, poweroff, printf, ps, pwd, reboot, reset, rm, rmdir, rmmod, …

grep bash sed awk busybox

27
推荐指数
2
解决办法
5万
查看次数

按日期排序 ls

原来的:

2011 年 1 月 23 日 10:42 某事 2007.12.20.avi
2009 年 6 月 26 日 某事 2009.06.25.avi
2010 年 2 月 12 日 某事 2010.02.11.avi
2011 年 1 月 29 日 09:17 某事 2011.01.27.avi
2011 年 2 月 11 日 20:06 某事 2011.02.10.avi
2011 年 2 月 27 日 23:05 某事 2011.02.24.avi

输出:

2011 年 2 月 27 日 23:05 某事 2011.02.24.avi
2011 年 2 月 11 日 20:06 某事 2011.02.10.avi
2011 年 1 月 29 日 09:17 某事 …

sort busybox

26
推荐指数
3
解决办法
11万
查看次数

如何原子地将符号链接更改为 busybox 中的目录?

我正在尝试(尽可能接近)以原子方式更改符号链接。我试过了:

ln -sf other_dir existing_symlink
Run Code Online (Sandbox Code Playgroud)

这只是将新符号链接放在 existing_symlink 指向的目录中。

ln -sf other_dir new_symlink
mv -f new_symlink existing_symlink
Run Code Online (Sandbox Code Playgroud)

这做了同样的事情:它将符号链接移动到目录中。

cp -s other_dir existing_symlink
Run Code Online (Sandbox Code Playgroud)

它拒绝,因为它是一个目录。

我读过这mv -T是为此而制作的,但是busybox没有-T标志。

linux directory symlink busybox

19
推荐指数
4
解决办法
1万
查看次数

如何检查busybox版本(来自busybox)?

我在嵌入式系统中使用busybox,我想检查它的版本。如何从busybox 中检查busybox 版本?

busybox

19
推荐指数
1
解决办法
3万
查看次数

如何在busybox上找到进程的常驻内存大小?

top在busybox 上运行,它显示所有进程及其虚拟内存大小。

如何确定每个进程使用了​​多少 RAM?

process memory busybox

19
推荐指数
2
解决办法
3万
查看次数