Простой способ установить CrashPlan

Есть ли файл .deb, репозиторий, PPA или что-нибудь для установки CrashPlan , кроме нестандартного файла install.sh? У меня есть fish в качестве оболочки, и мне пришлось много возиться и, наконец, сначала использовать chsh, прежде чем скрипт установки будет работать. Я не хочу прыгать через все эти обручи каждый раз, когда есть обновление.

2
задан 15 November 2012 в 07:00

2 ответа

Согласно CrashPlan:

автоматически обновляется до последней версии. Вам не нужно загружать его снова после его установки.

Если вы работаете с ядром 2.6.13 Series или выше, 1 ГГц + x86-64 ЦП, 1 ГБ + память, 250 МБ + свободное дисковое пространство, Oracle (Sun) Java версии 1.6+, Glibc 2.4+, GTK, Xorg, тогда это будет работать для вас.

CrashPlan автоматически запускается после установки и предлагает вам создать новую учетную запись. Введите информацию и нажмите «Создать учетную запись». CrashPlan будет отправлять резервные отчеты и уведомления на адрес электронной почты, который вы вводите.

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

sudo ./install.sh

Это довольно просто. Прочтите «Прочтите меня и установите информацию» для инструкций по установке.

0
ответ дан 15 November 2012 в 07:00

Обычно bash install.sh или sudo bash install.sh должны были работать, но со сценарием CrashPlan действительно некоторые внутренние команды заканчиваются тем, что работают под fish и терпят неудачу из-за синтаксических различий.

Распространенной причиной этого может быть переменная окружения $ SHELL, которая по-прежнему указывает на / usr / bin / fish - многие программы выполняют подкоманды, используя $ SHELL. Поэтому я попытался env SHELL=/bin/bash sudo bash install.sh => все та же ошибка с рыбой!

fish: Expected a command name, got token of type “Run job in background”. Did you mean “COMMAND; and COMMAND”? See the help section for the “and” builtin command by typing “help and”.
Standard input: sed -imod "s|Exec=.*|Exec=/usr/local/crashplan/bin/CrashPlanDesktop|" /home/anat/Desktop/CrashPlan.desktop && rm -rf /home/anat/Desktop/CrashPlan.desktopmod
                                                                                                                            ^

Хмм. Давайте попробуем усерднее - давайте поработаем с реальной корневой оболочкой входа в систему , которая выполняет более полный сброс (переменные среды, каталог и т. Д.):

~/CrashPlan-install $ sudo su -
root@overgrad:~# echo $SHELL  # that wasn't the problem anyway
/bin/bash
root@overgrad:~# cd /home/anat/CrashPlan-install/
root@overgrad:/home/anat/CrashPlan-install# bash install.sh 

...
Would you like to start CrashPlanDesktop? (y/n) [n] 

To start the Desktop UI:
  /usr/local/bin/CrashPlanDesktop

Installation is complete. Thank you for installing CrashPlan for Linux.

root@overgrad:~# exit
logout
~/CrashPlan-install $ CrashPlanDesktop     

ПРИМЕЧАНИЕ. спросит вас, хотите ли вы запустить CrashPlanDesktop, скажите НЕТ. Вместо этого выйдите из корневой оболочки и запустите ее как вы сами, как показано в примере выше. (Если вы запустите его от имени пользователя root, у вас могут возникнуть проблемы с его запуском самостоятельно из-за того, что файлы журналов доступны для записи только пользователю root - вам придется sudo rm их запустить, а затем он запустится; кроме того, по умолчанию будет только резервное копирование / root /, поэтому убедитесь, что вы настроили правильные каталоги.)

su - достаточно, чтобы получить оболочку входа, но su запрашивает пароль root, и в Ubuntu мы так используем sudo только запрашивая наш пароль, мы даже не помним пароль root. Но если вы уже root, su ничего не спрашивает, поэтому sudo su - работает.

Я чувствовал себя немного глупо, используя эту избыточную комбинацию sudo su только потому, что su - - это синтаксис, который я помню, поэтому быстрой подсказки мне сказали, что sudo --login будет достаточно.
Удивительно sudo --login не удалось с той же ошибкой рыбы !

Это меня заинтересовало. Читая install.sh, я обнаружил:

SRC_USER=${SUDO_USER}
if [ "x${SRC_USER}" == "x" ] ; then
        SRC_USER=${USER}
fi

(позже использовался для создания /home/${SRC_USER}/Desktop/${APP_BASENAME}.desktop с помощью набора команд su ${SRC_USER} -c "...").

=> Ага! Таким образом, проблема заключалась в том, что sudo набрасывается на нас, экспортируя $ SUDO_USER , даже в оболочку входа в систему. sudo su - сработало, потому что su - отбрасывает все переменные окружения - включая SUDO_USER - на отдельном шаге.

0
ответ дан 15 November 2012 в 07:00

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

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