dm33d使用opkg向sd卡中安装程序报错

2021年10月29日 111点热度 0人点赞 0条评论

问题描述

dm33d 路由器装了 pandorabox 固件,opkg.conf 中设置了 dest root /mnt/sda1。在使用 opkg 安装软件时,会报错 Cannot create symlink。

Collected errors:
 * extract_archive: Cannot create symlink from ./usr/lib/liblzo2.so to 'liblzo2.so.2.0.0': Operation not permitted.
 * extract_archive: Cannot create symlink from ./usr/lib/liblzo2.so.2 to 'liblzo2.so.2.0.0': Operation not permitted.
 * extract_archive: Cannot create symlink from ./usr/lib/libmbedcrypto.so to 'libmbedcrypto.so.2': Operation not permitted.
 * extract_archive: Cannot create symlink from ./usr/lib/libmbedcrypto.so.2 to 'libmbedcrypto.so.2.9.0': Operation not permitted.
 * extract_archive: Cannot create symlink from ./usr/lib/libmbedtls.so to 'libmbedtls.so.10': Operation not permitted.
 * extract_archive: Cannot create symlink from ./usr/lib/libmbedtls.so.10 to 'libmbedtls.so.2.9.0': Operation not permitted.
 * extract_archive: Cannot create symlink from ./usr/lib/libmbedx509.so to 'libmbedx509.so.0': Operation not permitted.

 * extract_archive: Cannot create symlink from ./usr/lib/libmbedx509.so.0 to 'libmbedx509.so.2.9.0': Operation not permitted.

解决方案

这是因为 sd 卡默认格式化为 exfat 格式,这个不支持软连接,格式化为 ext4 即可解决该问题。

首先安装 mkfs ,先把 /etc/opkg.conf 中的 dest root /mnt/sda1 改为 dest root / 。

dest root /
dest ram /tmp
lists_dir ext /var/opkg-lists
option overlay_root /overlay

然后执行命令安装 e2fsprogs 。

opkg update
opkg install e2fsprogs

重启路由器。

取消挂载 sd 卡。

umount /dev/sda1

格式化为 ext4。

mkfs.ext4 /dev/sda1

挂载 sd 卡。

mount

修改 /etc/opkg.conf 中的 dest root / 为 dest root /mnt/sda1

dest root /mnt/sda1
dest ram /tmp
lists_dir ext /var/opkg-lists
option overlay_root /overlay

然后就可以安装软件到 sd 卡中。

AIKAMINO

这个人很懒,什么都没留下