我正在使用 Android 3.2.1 下 chroot 环境中启动的 Ubuntu 11.10。除 PostgreSQL 外,大多数软件运行良好。安装或启动 initdb 时,它会显示:
严重错误:无法创建共享内存段:功能未实现。
详细信息:失败,失败的系统调用为 shmget(key=1,size=1908736,03600)。
在 chroot 中是否有任何特定的共享内存/PostgreSQL 调整?也许可以将 android ashmem 安装到 chrooted shm 中?我是 Linux 新手。
答案1
阿什门使用/dev/ashmem
设备节点。您需要在 chroot 中创建它/dev
,方法是使用mknod
适当的数字,或者执行绑定安装:
touch chroot/dev/ashmem
mount --bind /dev/ashmem chroot/dev/ashmem
mount
(为此您可能需要 Busybox 或 Ubuntu 。)