тире не расширяет подстановочные знаки в chroot

SMB3 -зашифрованные общие ресурсы поддерживаются начиная с версии ядра 4.8.0 -54.57 .

Поскольку драйвер cifs является частью ядра Linux, он соответствующим образом обновляется, и для устранения этой ошибки необходимо выполнить обновление до последней версии ядра. Для принудительного шифрования необходимо добавить еще не -еще -задокументированный параметр монтирования seal в сочетании с vers=3.0 .

4
04.07.2019, 16:02
1 ответ

У меня точно такие же симптомы на моей машине, хотя я работаю над другим проектом (, основанным на докере, а не на QEMU ), поэтому я не могу доказать, что это проблема в вашем случае, но это наверное так.

У меня есть сборка, которая иногда работает, а иногда дает сбой, потому что подстановочный знак не всегда расширяется. (Я делаюls /tmp/linux*deb).

Strace показывает, что в случае сбоя возвращается вызов getdents-1 EOVERFLOW (Value too large for defined data type)

Рабочий корпус:

[pid 29791] open("/tmp", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 3
[pid 29791] fstat64(3, {st_mode=S_IFDIR|S_ISVTX|0777, st_size=4096,...}) = 0
[pid 29791] getdents(3, /* 3 entries */, 32768) = 60
[pid 29791] getdents(3, /* 0 entries */, 32768) = 0
[pid 29791] close(3)                    = 0

Неисправный корпус:

[pid 25606] open("/tmp", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 3
[pid 25606] fstat64(3, {st_mode=S_IFDIR|S_ISVTX|0777, st_size=100,...}) = 0
[pid 25606] getdents(3, /* 1 entries */, 32768) = 16
[pid 25606] getdents(3, 0x585a831c, 32768) = -1 EOVERFLOW (Value too large for defined data type)
[pid 25606] close(3)                    = 0

Я нашел несколько отчетов об ошибках -, ссылающихся на проблему (getdents возвращает 64-битное значение, но в данном случае вызывающая сторона ожидает 32-битное значение):

4
24.04.2020, 14:55

Теги

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