По-видимому, существует сопоставимая альтернатива патчу ядра с 200 строками, который не включает обновления ядра.
Это представлено здесь и обсуждено здесь.
Однако я не уверен, работает ли решение webupd8 (под разделом "Use it in Ubuntu") на Ubuntu на самом деле или нет. В частности, один комментатор на./говорит, что получает сообщение об ошибке. Кто-либо мог отправить "корректный" метод, который на самом деле работает?
На основе комментариев я читал до сих пор, следующее, кажется, работает.
(1) В /etc/rc.local
, добавьте следующие строки к вышеупомянутому exit 0
:
mkdir -p /dev/cgroup/cpu
mount -t cgroup cgroup /dev/cgroup/cpu -o cpu
mkdir -m 0777 /dev/cgroup/cpu/user
echo "/usr/local/sbin/cgroup_clean" > /dev/cgroup/cpu/release_agent
(2) Создайте названный файл /usr/local/sbin/cgroup_clean
со следующим содержанием:
#!/bin/sh
rmdir /dev/cgroup/cpu/$1
(3) В Вашем ~/.bashrc
, добавьте:
if [ "$PS1" ] ; then
mkdir -m 0700 /dev/cgroup/cpu/user/$$
echo $$ > /dev/cgroup/cpu/user/$$/tasks
echo "1" > /dev/cgroup/cpu/user/$$/notify_on_release
fi
(4) (Для проверки, выполнение укусило, идет), выполняются
sudo chmod +x /usr/local/sbin/cgroup_clean /etc/rc.local
(5) Перезагрузка.
Ответ выше должен действительно исправить сообщение об ошибке терминала. Гедель, я не уверен, что понял твою мысль. Я попытаюсь объяснить изменение:
Поскольку значением notify_on_release при создании других cgroups по умолчанию является текущее значение параметра notify_on_release их родителей, задается значение / dev / cgroup / cpu / user / notify_on_release значение 1 будет гарантировать, что для каждой дочерней группы включена функция notify_on_release и, следовательно, будет запущен release_agent. К сожалению, когда последняя дочерняя группа «user» была удалена (release_agent), эта папка также будет удалена, что приведет к сообщениям об ошибках. Простой обходной путь - включить notify_on_release для каждой cgroup отдельно при создании, оставив родительский параметр отключенным.
Надеюсь, за этим было легко следить!
Редактировать: Я бы опубликовал это как комментарий к фактическому ответу, хотя, похоже, у меня недостаточно репутации, чтобы сделать это (пока). [ 113]
Я применил этот патч с помощью автоматического скрипта в Web UPD8 к Asus eee 1000H. Я заметил значительное увеличение производительности в Google Chrome с запущенными приложениями Flash. Видео было более плавным и с меньшим количеством кадров. Пользовательский интерфейс Gnome также стал быстрее и быстрее перерисовывался. Очень круто. текст ссылки
Обновленные инструкции от Рикардо Феррейры
Начните с редактирования файла rc.local, запустите sudo -H gedit /etc/rc.local
и добавьте следующие строки выше exit 0
:
mkdir -p /dev/cgroup/cpu
mount -t cgroup cgroup /dev/cgroup/cpu -o cpu
mkdir -m 0777 /dev/cgroup/cpu/user
echo "/usr/local/sbin/cgroup_clean" > /dev/cgroup/cpu/release_agent
Сохраните и выйдите из gedit. , Теперь сделайте его исполняемым:
sudo chmod +x /etc/rc.local
После этого отредактируйте файл .bashrc, найденный в вашем домашнем каталоге (gedit ~ / .bashrc), и, в конце этого файла, добавьте:
if [ "$PS1" ] ; then
mkdir -m 0700 /dev/cgroup/cpu/user/$
echo $ > /dev/cgroup/cpu/user/$/tasks
echo "1" > /dev/cgroup/cpu/user/$/notify_on_release
fi
И последнее. Чтобы убедиться, что cgroups удаляются при выходе из последней задачи, выполните:
sudo -H gedit /usr/local/sbin/cgroup_clean
и скопируйте и вставьте это:
#!/bin/sh
rmdir /dev/cgroup/cpu/$*
Еще раз, сохраните файл, выйдите из gedit и выполните это исполняемый файл:
sudo chmod +x /usr/local/sbin/cgroup_clean
Готово! Перезагрузите компьютер, чтобы применить изменения.