Комментарии 19
Вы мне не подходите, интервьюер. Вы слишком легко сдались!

Классная статейка!

Замечательная статья, спасибо автору. Теперь лично мои знания по использованию дескриптор стали более упорядоченными.

Красиво) Но mkfifo может упасть всё-таки: если качественно забить диск, то придётся искать папку, у которой есть свободное место в блоке, описывающем её содержимое. Иначе ENOSPC.

Ох уж эти костыли и закат вручную! Но прикольно, да!
Но что, если он сменит имя и вместо Ивана станет, например, Олей

Не пугайте так. У нас не Европа все-таки
Отличная статья, хорошая подача материала, определенно в закладки, спасибо большое.

Сударь, вы волшебник! Прочитал с упоением и, что удивительно, практически всё понял.

Шикарная статья. Про дескрипторы и то, как дотянуться до уже удалённого, но ещё открытого процессом файла знал и ранее, а про то как с помощью dup2 в gdb подменять дескрипторы и сохранять выхлоп лога в другое место при закончившемся пространстве — не знал, даже не думал о таком хаке как-то… Спасибо!
У меня в gdb вылезла ошибка:
(gdb) call dup2(4,3)
'dup2' has unknown return type; cast the call to its declared return type

Исправила:
(gdb) call (int)dup2(4,3)
$2 = 3
Вот только мне покажется, что я вроде начал неплохо разбираться в ОС семейства Linux, и выходит такая статья, которая заколачивает гвозди в плинтус над моей головой. Спасибо за статью! Пишите еще!

Если кто-то, так же как и я, не понял почему truncate не сработал при O_TRUNC, но сработал при O_APPEND, исчерпывающее объяснение тут — https://superuser.com/a/881778

Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.