Вот что я сделал, чтобы установить его и запустить службу в CentOS 7.5. Вероятно, лучше всего полностью удалить Opennms и Postresql, прежде чем начать. Я сделал это, запустив его как root.
Заранее убедитесь, что у вас установлены следующие java
пакеты:
java-1.8.0-openjdk
java-1.8.0-openjdk-devel
java-1.8.0-openjdk-src
java-1.8.0-openjdk-headless
javapackages-tools
jdk
jdk1.8.0_144
Я установил некоторые из этих пакетов, когда дошел до конца, и программа установки выдавала мне ошибки, так что вы можете подождать, пока не перейдете к части Java внизу, если вы не можете установить их на этом этапе из-за Репозитории opennms недоступны.
Во-первых,Я создал каталог в /opt/opennms
, а затем загрузил внутрь tar.gz и распаковал его, используя инструкции по этой ссылке (. Я использовал wget
вместоcurl -L
:
https://www.opennms.org/en/install-centos
wget https://github.com/opennms-forge/opennms-install/archive/1.2.tar.gz
tar xvfz 1.2.tar.gz
cd opennms-install-1.2
bash bootstrap-yum.sh
Я выполнил те же шаги, что и вы, и получил ту же ошибку, поэтому я перешел по ссылке на руководство по установке:
Postgresql
и Opennms
уже были установлены, поэтому я снова перешел к части настройкиPostresql
(Я создал другое имя для пользователя, но это не имеет значения):
Включить и запустить postgresql
службу
systemctl enable postgresql
systemctl start postgresql
su - postgres
Создать пользователя базы данных:
createuser -P opennms
createdb -O opennms opennms
exit
Создайте пароль для суперпользователя Postgresql, где YOUR-POSTGRES-PASSWORD
— пароль по вашему выбору.
su - postgres
psql -c "ALTER USER postgres WITH PASSWORD 'YOUR-POSTGRES-PASSWORD';"
exit
Разрешить доступ по локальной сети:
vim /var/lib/pgsql/data/pg_hba.conf
Убедитесь, что файл выглядит так:
host all all 127.0.0.1/32 md5
host all all ::1/128 md5
Потом:
systemctl restart postgresql
Затем измените конфигурацию базы данных:
vim ${OPENNMS_HOME}/etc/opennms-datasources.xml
Убедитесь, что это выглядит так, как показано ниже, так как в имени пользователя и/или пароле может быть другой формат текста:
`
На этом этапе вы можете установить пакеты java
и jdk
, перечисленные выше, если вы еще этого не сделали.
ИнициализироватьOpennms
:
{OPENNMS_HOME}/bin/runjava -s
{OPENNMS_HOME}/bin/install -dis
Если переменная OPENNMS_HOME
не установлена, она равна /opt/opennms
или можно запускать команды с полными путями:
/opt/opennms/bin/run/java -s
/opt/opennms/bin/run/install -dis
Вы можете получить некоторые сообщения об ошибках, но если все прошло хорошо, все будет в порядке. Должен быть создан файл для подтверждения:
/opt/opennms/etc/configured
Наконец:
systemctl enable opennms
systemctl start opennms
Если запустится без ошибок, значит все готово.
Возможно, это не сработает для вас точно так же, как для меня, и вам, возможно, придется изменить несколько вещей, но, надеюсь, это даст вам некоторый прогресс.
Написать MSG в строке 11, столбце 31 на терминале и вернуть приглашение оболочки в нижнюю часть окна:
echo "$( tput cup 10 30 )${MSG}$( tput cup ${LINES} 0))" && echo
Это должно сработать, еслиBATTERY=50
Он находит количество столбцов вашего терминала, затем настраивает курсор на ваш текст и печатает «BAT $BATTERY%»
echo "$(tput cup 0 $(expr $(tput cols) - 7))BAT $BATTERY%" && echo
Используйте escape-последовательности терминала для перемещения курсора. Практически все терминалы используют общий набор escape-последовательностей, которых здесь достаточно, они стандартизированы ANSI и стали популярными в VT100. Но вы можете использовать базу данных terminfo для поиска управляющих последовательностей для вашего терминала с двойным преимуществом переносимости и удобочитаемости. Вы можете использовать утилитуtput
для передачи возможностей terminfo .
print_in_top_right () {
local columns=$(tput cols) # get the terminal width
local text=${1:0:$columns} # truncate the text to fit on a line if needed
tput sc # Save the Cursor position
tput cup 0 $((columns - ${#text})) # move the CUrsor Position to the top line, with just enough space for $text on the right
printf %s "$text"
tput rc # Restore the Cursor position saved by sc
}
Обратите внимание, что как только терминал прокручивается, этот фрагмент текста будет прокручиваться вместе с ним. Нет универсального средства для сохранения текста, наложенного на терминал. Если вы хотите этого, вам нужен эмулятор терминала с этой функцией, который обычно резервирует выделенную линию для этой цели. Большинство графических эмуляторов терминала позволяют вам видеть заголовок окна, который вы можете установить с помощью xterm -совместимой управляющей последовательностиOSC 2
(OSC
isESC ]
).
set_window_title () {
printf '\e]2;%s\007' "$1"
}