Все ядра Centos 5.x основаны на 2.6.18, для CentOS 5 нет ядер, основанных на кодовых базах 3.x или 4.x.
Другим важным фактором, который вы должны учитывать, является то, что Centos 5 достиг EOL (End Of Life )около 1 года назад:
Mar 31, 2017 EOL
Вы можете подтвердить это на вики CentOS:https://wiki.centos.org/HowTos/EOL
Это означает, что никаких официальных обновлений для CentOS 5 больше не будет. Пришло время обновиться до более новой системы. Ваша система полностью подвержена всем известным уязвимостям, появившимся за последний год.
Расширение:
https://wiki.centos.org/About/Product
Полная -поддержка обновлений Centos 6 уже подошла к концу 10 мая 2017 г., но он продолжит получать обновления безопасности до 30 ноября 2020 г. (EOL)
Centos 7 будет иметь полные обновления до четвертого квартала 2020 г., а окончание срока службы будет завершено к 30 июня 2024 г.
Поскольку проблем с /bin/su
разрешениями на выполнение и содержимым /etc/pam.d/su
и /etc/pam.d/su-l
не обнаружено. image
должно быть в порядке!
После того, как я вытащил изображение локально, кажется, что ошибка связана с su postgres -c
; Его следует удалить, потому что, если вы добавите whoami
в скрипт, вы заметите, что скрипт будет запускаться по умолчанию с postgresql
, и это потому, что контейнер сделал su
на postgres
при запуске, потому что демон должен запускаться с этим пользователем.
Докер-файл:
FROM registry.hub.docker.com/library/postgres
COPY postgres.sh /docker-entrypoint-initdb.d/
RUN chmod +x /docker-entrypoint-initdb.d/postgres.sh
Сценарий:
#!/bin/bash
whoami
psql << EOF
ALTER USER postgres WITH PASSWORD '123';
create database shippingchallenge;
\c shippingchallenge;
create table people(firstname CHAR(20), surname CHAR(30));
insert into people values ('Pieter', 'Pauwels');
EOF
ТЕСТ:
docker exec -it <container> bash
su postgres
psql
postgres=# \l
ВЫВОД(таблица создана и владельцем является postgres):
shippingchallenge|postgres|UTF8|en_US.utf8|en_US.utf8|
Вот почему su
запрашивал пароль пользователя postgres
, и, поскольку ничего не передается, вы получилиОшибка аутентификацииво время сборки.