Номера пространств имен в /proc

На этом компьютере было несколько проблем:

  • установили гостевые пакеты в хост-системе; удален

  • неисправный диск SSHD; заменено

  • swappiness было при стандартном значении 60, но поскольку этот компьютер обычно использует 6 ГБ RAM и имеет 8 ГБ RAM, он менял местами как сумасшедший; установлено 1

  • ядро ​​вызывало некоторые проблемы; обновлено

Ситуация теперь под контролем.

1
03.05.2019, 00:51
1 ответ

Это номера инодов файлов, реализованных файловой системой nsfs, которые можно открывать и использовать с setns(2)для связывания процесса с пространством имен.

Вы можете посмотреть наfs/nsfs.c:

int ns_get_name(char *buf, size_t size, struct task_struct *task,
                        const struct proc_ns_operations *ns_ops)
{
        struct ns_common *ns;
        int res = -ENOENT;
        const char *name;
        ns = ns_ops->get(task);
        if (ns) {
                name = ns_ops->real_ns_name ? : ns_ops->name;
                res = snprintf(buf, size, "%s:[%u]", name, ns->inum);

иfs/proc/namespaces.c:

static int proc_ns_readlink(struct dentry *dentry, char __user *buffer, int bufl
en)
{
       ...
        if (ptrace_may_access(task, PTRACE_MODE_READ_FSCREDS)) {
                res = ns_get_name(name, sizeof(name), task, ns_ops);
3
27.01.2020, 23:22

Теги

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