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

Обычно терминалы позволяют выбирать текст с помощью мыши, но оболочка не узнает об этом. К сожалению, ни bash, zsh, fish, ни es не могут поддерживать редактирование на основе мыши. Я думаю, что для этого потребуется больше контроля над терминалом.

Однако (и это немного растягивается), если вы открываете Vim или GVim, а затем вводите команды оболочки, используя: [ ! d1]

:!...

, тогда вы можете щелкнуть мышью, чтобы перейти в любую точку линии. (Сначала вам нужно будет :set mouse=a, если это еще не включено.) Клавиши редактирования в этом режиме можно увидеть с помощью :help cmdline-editing

. У Vim также есть довольно мощный режим истории команд, который может быть достигнутый путем удара q :. Оттуда вы можете вытаскивать, удалять и вставлять команды Vim в обычном режиме. В этом режиме вы можете щелкнуть мышью , чтобы перейти в любую желаемую строку (нажав d).

Существенным препятствием здесь является то, что Vim не на самом деле сохранить сеанс живой оболочки. Каждая выполняемая вами команда будет выполняться в дочернем процессе. Таким образом, любые изменения, внесенные в переменные среды или параметры оболочки дочерним процессом, будут потеряны.

Тем не менее, вы можете изменить переменные среды из в процесс Vim и использовать их из Командная строка Vim, и они будут даже экспортированы в дочерние процессы:

:let $FOO="bar"        " the $ and the quotes are mandatory here

:echo $FOO             " Vim's own echo command
bar

:!echo "$FOO"          " Passing the variable to a shell command
bar

:!bash                 " Opening a child shell
$ echo "$FOO"
bar

Итак, если вы готовы притвориться, что Vim на самом деле какая-то странная оболочка, то вы можете наслаждаться ее расширенными функциями редактирования! Вероятно, самым большим недостатком является то, что вам придется начинать каждую команду, набирая либо :!, либо q:

О, и, кстати, если вы хотите получить вывод команды оболочки в текущий Vim, вы можете сделать это вот так (но будьте осторожны, он будет сжимать вашу текущую строку):

:,!ls
0
задан 14 May 2017 в 00:21

4 ответа

В широком смысле вы можете:

тест с живым диском сначала сделать тестовый раздел с чистой системой и обновить его до любого обновления до основной системы; вы можете использовать dd или http://clonezilla.org/ для резервного копирования тестового раздела и очистить его, если он пойдет не так, вы можете клонировать ваш системный раздел перед обновлением, вы можете установить на этот тестовый раздел любой новый дистрибутив и посмотреть, соответствует ли он счету, re, требующие стабильности и совместимости, вы никогда не должны делать массовые обновления, а не обновления пакетов apt-get install packageName --only-upgrade, если это слишком много работы, в конце концов вы можете просто ждать, пока разработчики исправит проблему
0
ответ дан 18 July 2018 в 13:24

Мой опыт (с 14.04 LTS был свежим) заключался в том, что установка всех обновлений, как только я получаю уведомление о них, хорошо работает - и это, безусловно, лучшая практика безопасности, поскольку я не пропускаю важные обновления для системы безопасности (которые как правило, в больших группах), потому что я хочу потратить несколько недель, чтобы установить их и следить за проблемами. Если вы используете выпуск LTS и обновление из репозиториев по умолчанию, вы получаете программное обеспечение, которое было проверено Canonical и сообществом для обеспечения стабильности, ремонтопригодности и безопасности.

В редких случаях вы заметили, что когда обновление ядра что-то ломает, используйте GRUB для загрузки в предыдущее ядро, затем заблокируйте обновление проблемы и дождитесь следующего, или найдите решение здесь.

2
ответ дан 18 July 2018 в 13:24

В широком смысле вы можете:

тест с живым диском сначала сделать тестовый раздел с чистой системой и обновить его до любого обновления до основной системы; вы можете использовать dd или http://clonezilla.org/ для резервного копирования тестового раздела и очистить его, если он пойдет не так, вы можете клонировать ваш системный раздел перед обновлением, вы можете установить на этот тестовый раздел любой новый дистрибутив и посмотреть, соответствует ли он счету, re, требующие стабильности и совместимости, вы никогда не должны делать массовые обновления, а не обновления пакетов apt-get install packageName --only-upgrade, если это слишком много работы, в конце концов вы можете просто ждать, пока разработчики исправит проблему
0
ответ дан 24 July 2018 в 20:10
  • 1
    Нет такой функции, поэтому вы не могли ее найти :) Я был бы очень разочарован, узнав, что я повредил логику сообщения путем редактирования; исправьте любые изменения в значении. Я отредактировал ваш пост, потому что он выглядел как «У меня тоже такая проблема». комментарий. Я нашел его в обзоре низкого качества, потому что кто-то отметил это как не ответ. По этой причине я удалил первую часть. Этот сайт не является форумом для обмена историями пользователей. – Zanna 12 May 2017 в 23:49
  • 2
    Да, прозрачность - это то, чего мы хотим, и никаких боев. Сообщения об ошибках действительно вне темы ... но этот вопрос мне непонятен. – Zanna 13 May 2017 в 21:41

Мой опыт (с 14.04 LTS был свежим) заключался в том, что установка всех обновлений, как только я получаю уведомление о них, хорошо работает - и это, безусловно, лучшая практика безопасности, поскольку я не пропускаю важные обновления для системы безопасности (которые как правило, в больших группах), потому что я хочу потратить несколько недель, чтобы установить их и следить за проблемами. Если вы используете выпуск LTS и обновление из репозиториев по умолчанию, вы получаете программное обеспечение, которое было проверено Canonical и сообществом для обеспечения стабильности, ремонтопригодности и безопасности.

В редких случаях вы заметили, что когда обновление ядра что-то ломает, используйте GRUB для загрузки в предыдущее ядро, затем заблокируйте обновление проблемы и дождитесь следующего, или найдите решение здесь.

2
ответ дан 24 July 2018 в 20:10

Другие вопросы по тегам:

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