почему cgconfig.conf не считал на перезагрузке на 14,04?

Я recenty обновил выпуск от 12,04 до 14,04 и узнал, что мой cgconfig.conf файл не читается больше на запуске.

Файл, кажется, корректен, в том смысле, что я могу явно загрузить его

sudo cgconfigparser -l /etc/cgconfig.conf

но этого не происходит автоматически на перезагрузке, что означает, что другие сценарии работают на сбое запуска (потому что они полагаются на cgexec с группами, определенными в cgconfig.conf).

Есть ли что-то, что я должен сделать, чтобы использовать файл автоматически? (т.е. установите некоторый пакет), я должен так или иначе преобразовать этот файл в некоторого другого?

Это раньше работало правильно перед обновлением, таким образом, я смущен относительно того, что могло бы быть неправильным.

"Cgroup-облегченный" пакет, который я думаю, должен быть ответственен за это, также установлен.

Заранее спасибо.

5
задан 3 October 2014 в 00:59

1 ответ

Это похоже на регрессию из-за фиксации для ошибки #1096771. Были некоторые init сценарии в cgroup-bin в 12,04, которые были удалены в 13,04. /etc/init/cgconfig.conf сервисный файл содержал это в pre-start script строка файла конфигурации:

/usr/sbin/cgconfigparser -l $CGCONFIG

, Таким образом, это было cgconfig сервис от cgroup-bin пакет, которые на самом деле настраивают Вашу cgroup конфигурацию. cgroup-lite не изменился очень промежуточный эти выпуски, таким образом, я предполагаю, что это не предназначено для чтения этой конфигурации. Я рекомендую, чтобы Вы открыли отчет об ошибках (и возможно записали новый Новомодный сервис (или скопировали старый), так как маловероятно, что они изменят это в выпуске LTS).

<час>

С тех пор 12.04 все еще поддерживается, можно использовать индекс Пакетов для загрузки более старой версии пакета. Я воспроизвел /etc/init/cgconfig.conf здесь для удобства:

description "cgconfig"
author "Serge E. Hallyn <serge.hallyn@ubuntu.com>"

start on runlevel [2345]

console output

pre-start script
    test -x /usr/sbin/cgconfigparser || { stop; exit 0; }

    CREATE_DEFAULT="yes"
    CGCONFIG=/etc/cgconfig.conf
    if [ -r /etc/default/cgconfig ]; then
        . /etc/default/cgconfig
    fi

    # If we've already run, don't do it again!
    if grep -q /sys/fs/cgroup /proc/mounts; then
        stop
        exit 0
    fi

    [ -r $CGCONFIG ] || { echo "$CGCONFIG is empty"; stop; exit 0; }

    mount -t tmpfs -o uid=0,gid=0,mode=0755 cgroups /sys/fs/cgroup
    /usr/sbin/cgconfigparser -l $CGCONFIG
    if [ "$CREATE_DEFAULT" = "yes" ]; then
        /usr/sbin/create_default_cgroups
    fi
end script

post-stop script
    if [ -x /usr/sbin/cgclear ]
    then
        /usr/sbin/cgclear
    fi
    umount /sys/fs/cgroup || true
end script
4
ответ дан 23 November 2019 в 09:33

Другие вопросы по тегам:

Похожие вопросы: