一段时间以来,我一直在使用 Optware 在我的基于 ARM 的 NAS 上安装软件包 - 常见的东西,如传输、Samba 等。但是,我在启动后不久就遇到了传输挂起的问题。我环顾四周寻找解决方案,最后发现我使用的 Optware 提要不是为我的 NAS 盒设置的提要。我切换了提要并重新安装了所有软件包,但是现在当我尝试运行重新安装的任何东西时出现以下错误:
$ smbd
-bash: /opt/sbin/smbd: No such file or directory
$ transmission-daemon
-bash: /opt/bin/transmission-daemon: No such file or directory
$ unrar
-bash: /opt/bin/unrar: No such file or directory
Run Code Online (Sandbox Code Playgroud)
我检查了/opt/bin并且/opt/sbin可执行文件肯定在那里 - 那么真正的问题是什么?
$ ldd /opt/bin/transmission-daemon
/usr/bin/ldd: line 116: /opt/bin/transmission-daemon: No such file or directory
$ file /opt/bin/transmission-daemon
/opt/bin/transmission-daemon: ELF 32-bit LSB executable, ARM, version 1, dynamically linked (uses shared libs), stripped
$ readelf - …Run Code Online (Sandbox Code Playgroud) 我最近买了一个树莓派。我已经配置好了,我在我的桌面上安装了一个用于 arm 的交叉编译器(amd64)。我编译了一个简单的“hello world”程序,然后用scp ./hello david@192.168.1.33:~/hello. 登录我的 Pi 后,我运行ls -l hello并得到正常响应:
-rwxr-xr-x 1 david david 6774 Nov 16 18:08 hello
Run Code Online (Sandbox Code Playgroud)
但是当我尝试执行它时,我得到以下信息:
david@raspberry-pi:~$ ./hello
-bash: ./hello: No such file or directory
david@raspberry-pi:~$ file hello
hello: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, BuildID[sha1]=0x6a926b4968b3e1a2118eeb6e656db3d21c73cf10, not stripped
david@raspberry-pi:~$ ldd hello
not a dynamic executable
Run Code Online (Sandbox Code Playgroud) 按照此处的说明,我在运行 Udoobuntu 12.04 LTS的基于 ARM 的Udoo-quad上安装了 Samba 打印服务器。
Samba 服务器正在工作,并且(在guest ok = yes服务器的 中设置后smb.conf)我可以浏览“print$”(打印机驱动程序)文件夹而无需输入凭据。我能够在客户端打印机安装期间浏览到打印机(在 Ubuntu 13.10 上),但打印作业无法到达服务器。他们只是坐在客户端打印队列中,并显示状态消息“为验证而持有”。
我已将服务器配置为允许访客访问打印机,其中包含以下部分/etc/samba/smb.conf(如 报告所述testparm):
[printers]
comment = All Printers
path = /var/spool/samba
create mask = 0700
guest ok = Yes
printable = Yes
print ok = Yes
browseable = No
Run Code Online (Sandbox Code Playgroud)
为什么客户端认为需要进行身份验证,解决方法是什么?
我试图建立一个完整的系统映像的ARM( armhf,armel甚至aarch64基于可以用QEMU运行Debian的)。不幸的是,我在网上找到的所有示例都是通过传递内核(initrd如果它需要一些模块的话)来启动映像的。
但是,我真的很qemu-system-amd64想像使用 一样启动系统,只需提供磁盘映像和 CD-ROM 映像(以开始安装)。
我可以理解-machineand没有默认值-cpu,但是我在网上找不到任何关于如何执行以下操作的线索:
#> wget \
http://cdimage.debian.org/.../armhf/iso-cd/debian-testing-armhf-netinst.iso
...
#> qemu-img create -f qcow2 debian-armhf.qcow 20G
...
#> qemu-system-arm -machine vexpress-a9 -cpu cortex-a9 \
-hda debian-armhf.qcow \
-cdrom debian-testing-amd64-netinst.iso \
-boot d
...
#> qemu-system-arm -machine vexpress-a9 -cpu cortex-a9 \
-hda debian-armhf.qcow \
-net nic -net user,hostfwd=tcp::2222-:22
...
Run Code Online (Sandbox Code Playgroud)
所以,我真的想知道这样的事情是否可能......如果是的话,如何?如果没有,为什么?
我在 Raspberry Pi 3 B+ (2017) 或 Pi 4 上有aarch64/版本的 Debian(使用此处的图像)。现在我想运行一些应用程序/库的 32 位 ( / ) 版本,但它们似乎不起作用。特别是来自 Raspbery Pi 用户区应用程序。arm64armhfarmv7raspistill
问题:如果可能的话,如何让raspistill(以及其他 32 位 Arm 二进制文件)在 64 位操作系统上运行?
我尝试过的:
armhf Raspberry Pi 的源代码raspistill:https://raspberrypi.stackexchange.com/a/67157。
not a dynamic executable。No such file or directory。 …我正在为定制板开发 Buildroot 开发的 ARM/ulibc Linux 发行版。我试图理解两者之间的关系
如果我这样做,就像我在网上的几个例子中看到的那样:
# date --set "2013-04-09 15:06:30"
Tue Apr 9 15:06:30 CDT 2013
# hwclock --systohc --utc
# hwclock
Tue Apr 9 15:06:39 2013 -0.351552 seconds
Run Code Online (Sandbox Code Playgroud)
并重新启动,我得到:
.... boot messages ...
... setting system clock to 2013-04-09 20:07:31 UTC (1365538051)
.... boot messages ...
#
# date; hwclock;
Tue Apr 9 15:08:24 CDT 2013
Tue Apr 9 15:08:25 2013 -0.473164 seconds
#
# date -u; hwclock -u;
Tue Apr 9 20:08:44 UTC 2013
Tue Apr …Run Code Online (Sandbox Code Playgroud) 我在小型嵌入式 ARM 系统上使用 BusyBox。我正在尝试读取“顶部”输出,特别是对于列出的 Python 进程。这个进程使用了多少实际内存?还有 VSZ 代表什么?该系统只有 64MB 的 RAM。
内存:已使用 41444K,可用 20572K,0K 碎片,0K buff,18728K 缓存 CPU:3% usr 3% sys 0% nic 92% idle 0% io 0% irq 0% sirq 平均负载:0.00 0.04 0.05 1/112 31667 PID PPID 用户状态 VSZ %VSZ %CPU 命令 777 775 python S 146m 241% 3% /usr/bin/python -u -- dpdsrv.py
我正在寻找一种工具,它允许跟踪对 Linux/ARM 中共享库中函数的调用。基本上,我希望能够指定一个命令行并让这个工具生成被调用库函数和传递参数的记录。我想可以为此使用某种形式的函数挂钩。
我知道ltrace,它提供了我需要的功能。但是,ltrace对我不起作用,因为它:
我正在寻找更强大的替代方案。速度不错,但不是我主要关心的问题。首先,我想有一种方法来跟踪可以分析任何(非回避)程序的库调用。
Sysdig 也不能在 ARM 中工作,并且 dtrace 的端口仍然只在 NetBSD 中处于测试阶段。
有没有人知道这种处于可用状态的工具?
我很好奇。是否可以在具有 64 位处理器的 32 位操作系统上安装 64 位程序?
我在 raspberry pi 3 上运行 Linux,并尝试安装较新版本的 MongoDB:
armv7l GNU/Linux
PRETTY_NAME="Raspbian GNU/Linux 9 (stretch)"
NAME="Raspbian GNU/Linux"
VERSION_ID="9"
VERSION="9 (stretch)"
ID=raspbian
ID_LIKE=debian
Run Code Online (Sandbox Code Playgroud)