Как запустить репосинхронизацию с другим значением версии выпуска

Когда мне нужно запустить скрипт, который будет выполняться в течение длительного времени, и я нахожусь в sshсеансе, я хочу либо:

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

    а. Задача может быть завершена без моего участия.

     nohup do_my_stuff &
    

    б. Задаче может понадобиться что-то от меня на стандартном вводе.

     man tmux
     history -w
     tmux
     do_my_stuff
    
  2. Фоновый процесс каким-то образом улучшает мой текущий сеанс и должен умереть вместе с сеансом. Редкость.

     enhance_my_session  >>/tmp/enhance.$$.log 2>&1 &
    
  3. Я хочу, чтобы эта штука случайным образом выводила несколько логов во время сеанса ssh. Чего ждать? Нет, я бы никогда не хотел этого. Спасибо disown.

  4. Еще одна вещь, которую я никогда не хочу, :преобразовывать процесс в полностью отсоединенный демон, но избегать его автоматического запуска при следующей загрузке. Я бы никогда этого не хотел, потому что я не могу предсказать, когда система перезагрузится и кто будет ее перезагружать.

0
25.03.2020, 17:11
1 ответ

Скопируйте файлы конфигурации Yum с компьютера, на котором запущен дистрибутив CentOS, который вы хотите отразить, затем измените $releasever, чтобы жестко запрограммировать нужную версию. Затем вы можете использовать параметр -cдля повторной синхронизации, чтобы указать ему использовать скопированный файл конфигурации вместо системного.

Например, чтобы зеркалировать последнюю версию CentOS 7 на компьютере с CentOS 8, скопируйте /etc/yum.repos.d/CentOS-Base.repoи измените $releaseverв этом файле на 7. Затем вы можете запустить:

reposync -c CentOS-Base.repo

Добавление любых дополнительных опций, (например, --repoid, если вы не хотите синхронизировать все включенные репозитории в этом файле ). Точно так же вы можете копировать и вносить аналогичные изменения в любые дополнительные репозитории, например в epel.repo.

0
28.04.2021, 23:19

Теги

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