Как получить доступ к stdin/stdout из отдельной программы?

Чтобы сохранить старую версию ядра (это то, что вы можете выбрать при запуске -до )вы можете:

  1. Блокировка конкретной версии ядра

Сначала список всех установленных ядер с

rpm -qa kernel\*

и выберите версию, которую хотите сохранить. Затем заблокируйте это ядро ​​с помощью команды dnf mark install, подобной этой:

dnf mark install kernel-4.18.9-200.fc28.x86_64
  1. Установите количество сохраняемых старых ядер

Для этого можно использовать параметр конфигурации dnf installonly_limit, который устанавливается в секции [main] файла /etc/dnf/dnf.conf. Значение по умолчанию — 3. Вы можете сохранить больше пакетов только для установки (, которые включают ядра ), указав большее число, например.

installonly_limit=5

или сохраните все установленные ядра, установив installonly_limitна ноль. Обратите внимание, что если вы решите сохранить все старые ядра, они могут занять довольно много места на диске.

Подробнее можно прочитать здесь:

Команда метки DNF

Только установка DNF _ограничение

1
13.02.2021, 10:34
1 ответ

Возможно, есть лучший способ сделать это, но вы можете использовать mkfifoдля создания двух файлов FIFO и запустить команду/скрипт таким образом, чтобы она перенаправляла ввод и вывод программы в два файла FIFO.

Таким образом, как только вы запустите команду и создадите два файла (и закроете SSH-соединение ), когда вы будете готовы отправить ввод в процесс, вы просто используете SSH для отражения любого ввода, который вы пытались передать. отправить в файл FIFO , после чего он будет перенаправлен в запущенный процесс.

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

Честное предупреждение, я сейчас не сижу за компьютером, так что это может быть не совсем правильно -Я часто путаюсь, является ли FIFO или обычный старый временный файл подходящим инструментом для текущей задачи (вам может понадобиться FIFO для ввода и перенаправления вывода во временный файл, созданный с помощью mktemp), но я подозреваю, что окончательное решение будет хотя бы немного напоминать то, что я описал выше, т. е. некоторое волшебство перенаправления.

Удачи! Надеюсь, кто-то еще сможет дать вам более конкретный ответ.

1
18.03.2021, 22:31

Теги

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