LINUX.ORG.RU

Создание файла в /sys


0

1

Что-то я запутался, пытаюсь от пользователя root создать файл:

touch /sys/[любая_папка]/[имя_файла]
 или
echo 1 > /sys/[любая_папка]/[имя_файла]

и оно мне говорит: no such file or directory.

Куда копать? Спасибо!


Это не простая файловая система. В ней (так же, как и в /proc) просто так файлы создать нельзя.

AITap ★★★★★
()
Ответ на: комментарий от AITap

ну я тоже так думал, а потом увидел, делают например так:

if [ «$PS1» ] ; then
mkdir -m 0700 /sys/fs/cgroup/cpu/user/$$
echo $$ > /sys/fs/cgroup/cpu/user/$$/tasks
fi

и оно у них работает.

ciiccii
() автор топика
Ответ на: комментарий от ciiccii

Это потому, что в каталог /sys/fs/cgroup/ смонтирована другая файловая система, в которой правила игры немного другие.

Сам каталог /sys/fs/cgroup/ создается через патченье ядра (вообще-то в новых ядрах он вроде есть по дефолту, а старых — только через патч).
But don't worry, замени везде /sys/fs/cgroup/ на /mnt/cgroup, создай в /mnt подкаталог cgroup, и все будет работать.

nnz ★★★★
()
Ответ на: комментарий от AITap

>Где именно?

Очевидно, в том скриптовом костыле, который позволяет сделать killer feature на обычных ядрах.

nnz ★★★★
()
Ответ на: комментарий от nnz

Хм, значит уже не моя ошибка, что не может не радовать. Просто я курил маны по /proc и /sys и нигде не нашёл(может просто не замитил) упоминания о том, что там нельзя создавать файлы. Где можно про это прочитать?

Да, в данном случае я привёл кусок кода от одного из разработчиков ядра, который предложил тот скриптовой костыль:

который позволяет сделать killer feature на обычных ядрах.

Поэтому я подумал, что оно таки должно работать на не патченых ядрах.

ciiccii
() автор топика
Ответ на: комментарий от ciiccii

Думаю, оно таки прекрасно будет работать на непатченых ядрах, если ты наконец смонтируешь cgroupfs в /mnt/cgroup.

nnz ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.