Обновление повреждено в Ubuntu 14.04, установить сбой

Проблема заключается в том, что сценарий зависит от настраиваемой переменной среды TERM. Ubuntu Unity Desktop не имеет этой инициализации при вызове сценариев. Если вы открываете терминал с помощью Ctrl + Alt + T, эта переменная настраивается.

Чтобы протестировать вашу систему, создайте небольшой скрипт под названием test-term.sh и сделайте так:

#!/bin/bash

#See if $TERM has been set when called from Desktop shortcut

echo TERM environment variable: $TERM > ~/Downloads/test-term.txt
echo "Using env | grep TERM output below:" >> ~/Downloads/test-term.txt
env | grep TERM >> ~/Downloads/test-term.txt

exit 0
5] Создайте ссылку в Nautilus на test-term.sh и запустите ссылку. Затем проверьте выходной файл:

$ cat ~/Downloads/test-term.txt

TERM environment variable: dumb
Using env | grep TERM output below:
(... blank line appears here ...)

Как вы видите, переменная среды TERM пуста, когда используется команда env | grep TERM. Также переменная $TERM установлена ​​на dumb, которая не очень хорошо подходит для поддерживаемой цветом команды dialog.

Решение для котлоагрегата 8]

Кратковременное решение заключалось в том, чтобы включить шаблонный код в начале двух рассматриваемых сценариев:

# $TERM variable may be missing when called via desktop shortcut
CurrentTERM=$(env | grep TERM)
if [[ $CurrentTERM == "" ]] ; then
    notify-send --urgency=critical "$0 cannot be run from GUI without TERM environment variable."
    exit 1
fi

1
задан 25 April 2018 в 00:40

3 ответа

Предложите вам сделать sudo apt update в терминале и посмотреть, какие ошибки появляются. Измените свой вопрос, чтобы включить вывод. Затем сделайте sudo apt upgrade, если из первой команды не было ошибок.

1
ответ дан 22 May 2018 в 11:15

Предложите вам сделать sudo apt update в терминале и посмотреть, какие ошибки появляются. Измените свой вопрос, чтобы включить вывод. Затем сделайте sudo apt upgrade, если из первой команды не было ошибок.

1
ответ дан 17 July 2018 в 16:13

Предложите вам сделать sudo apt update в терминале и посмотреть, какие ошибки появляются. Измените свой вопрос, чтобы включить вывод. Затем сделайте sudo apt upgrade, если из первой команды не было ошибок.

1
ответ дан 23 July 2018 в 17:07

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

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