встановлення postgresql 9.4 на GNURoot Debian v0.6.7_armhf


1

встановлення postgresql 9.4 на GNURoot Debian v0.6.7_armhf

#service postgresql start
[warn] No PostgreSQL clusters exist; see "man pg_createcluster" ... (warning).

Спробував вирішити використання dpkg-reconfigure localesта вибір мови та після

#pg_createcluster 9.4 main --start
Creating new cluster 9.4/main ...
config /etc/postgresql/9.4/main
data   /var/lib/postgresql/9.4/main
locale en_US.UTF-8
Flags of /var/lib/postgresql/9.4/main set as -------A-----e-C
FATAL:  could not create shared memory segment: Function not implemented
DETAIL:  Failed system call was shmget(key=1, size=40, 03600).
child process exited with exit code 1
initdb: removing contents of data directory "/var/lib/postgresql/9.4/main"
Error: initdb failed

Намагаючись створити користувача, я також спробував змінити номер порту postgresql на той самий вихід з різним номером порту.

#createuser user -P -S -R -D
Enter password for new role:
Enter it again:
createuser: could not connect to database postgres: could not connect to server: No such file or directory
    Is the server running locally and accepting
    connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

вихідний показник

#netstat -plunt
(Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State          PID/Program name
tcp        0      0 0.0.0.0:2222            0.0.0.0:*               LISTEN         28433/sshd
tcp6       0      0 :::2222                 :::*                    LISTEN         28433/sshd
tcp6       0      0 127.0.0.1:42110         :::*                    LISTEN              -
udp6       0      0 :::546                  :::*                                        -

Відповіді:


0

Android навмисно не підтримує спільну пам'ять SysV shmemабо POSIX /dev/shmі натомість створює /dev/ashmem( посилання ). Але Postgresql потребує спільної пам'яті SysV для роботи.

Цей проект github може бути вирішенням: https://github.com/pelya/android-shmem

Ця бібліотека дозволяє використовувати спільну пам'ять в android для незалежних процесів, використовуючи API API shmget (), shmat () та shmdt ().

Прочитайте примітки до випуску щодо використання пакету. Хоча датується два роки тому, він все ще вважається робочим .

Якщо приміток до випуску недостатньо, я також знайшов цю пораду :

Щоб встановити (у середовищі chroot):

cp libandroid-shmem-gnueabihf.so /lib/libandroid-shmem-gnueabihf.so

Щоб запустити програму:

env LD_PRELOAD="/lib/libandroid-shmem-gnueabihf.so" program %u
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.