У меня есть файл с именем live в ubuntu, это файл типа сокет / индексный дескриптор. Этот файл имеет разрешение как
srw-rw-r-- live
Я хочу создать копию файла.
Я не могу скопировать его с помощью команды cp из терминала.
Пожалуйста, скажите мне, как скопировать этот файл или как создать новый файл сокета / inode в ubuntu.
Этот файл используется в консоли мониторинга check_mk.
Спасибо....
Сокет Unix - это не «файл», как вы думаете.
Этот файл не содержит фиксированного количества данных, которые вы можете скопировать в другое место. Это не похоже на создание текстового файла с myfile.txt
который не изменится, пока вы не откроете его снова.
Думайте о файле сокета как о «окне» в приложении, и данные, которые это окно содержит, будут изменяться по мере выполнения приложения.
Если вы хотите просмотреть, что происходит в этом сокете, вы можете использовать socat
для перехвата потока данных в реальном времени. Например:
https://stackoverflow.com/questions/16045046/how-to-fork-transferred-data-to-a-script-with-socat
Вы не можете создать его, но вы можете скопировать из рабочей системы, как показано ниже, в какое-то общее место между машинами и скопировать из общего местоположения в другую систему.
Машина А
cp -rf /dev/SRC shared_directory
Машина B
cp -rf shared_directory /dev/