Загрузка не удалась. Возможно, проблемы с правами доступа?

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

idm_project_installation_ubuntu [2017/09/11 14:53]
Denis Mitin создано
idm_project_installation_ubuntu [2017/09/11 15:38] (текущий)
Denis Mitin Добавление подсветки синтаксиса
Строка 6: Строка 6:
  
 После загрузки,​ нам нужна библиотека Java JDK. Создатели рекомендуют использовать OpenJDK, поэтому ее и будем использовать. Скачать ее можно, введя в терминале данную команду:​{{ :​публикации:​midpoint_ubuntu_installation_2_.jpg?​direct |}} После загрузки,​ нам нужна библиотека Java JDK. Создатели рекомендуют использовать OpenJDK, поэтому ее и будем использовать. Скачать ее можно, введя в терминале данную команду:​{{ :​публикации:​midpoint_ubuntu_installation_2_.jpg?​direct |}}
-<​code>​sudo apt-get install openjdk-8-jdk</​code>​+<​code ​bash>sudo apt-get install openjdk-8-jdk</​code>​
 Смена языка (по стандарту) **windows + пробел**,​ терминал можно найти в поиске вверху слева (там еще значок Ubuntu). Смена языка (по стандарту) **windows + пробел**,​ терминал можно найти в поиске вверху слева (там еще значок Ubuntu).
 Для выполнения команды нужна права суперпользователя,​ вследствие чего необходимо ввести пароль и согласиться с внесением изменений (Y или Д в зависимости от языка) Для выполнения команды нужна права суперпользователя,​ вследствие чего необходимо ввести пароль и согласиться с внесением изменений (Y или Д в зависимости от языка)
Строка 12: Строка 12:
 Следующим важным шагом будет установка Apache Tomcat. Я использовал версию 8.5.16, но можно скачать и более новую. Архив надо разархивировать в папку ''/​opt/''​. Следующим важным шагом будет установка Apache Tomcat. Я использовал версию 8.5.16, но можно скачать и более новую. Архив надо разархивировать в папку ''/​opt/''​.
 Однако уже тут у вас могут возникнуть проблемы. Если у вас только что установленная система,​ то скорее всего у вас нет прав доступа для изменения содержимого данной папки. Чтобы исправить этот недочет,​ нужно ввести в терминале:​{{ :​публикации:​midpoint_ubuntu_installation_3_.jpg?​direct |}} Однако уже тут у вас могут возникнуть проблемы. Если у вас только что установленная система,​ то скорее всего у вас нет прав доступа для изменения содержимого данной папки. Чтобы исправить этот недочет,​ нужно ввести в терминале:​{{ :​публикации:​midpoint_ubuntu_installation_3_.jpg?​direct |}}
-<​code>​sudo chmod –R 757 /​opt/</​code>​+<​code ​bash>sudo chmod –R 757 /​opt/</​code>​
 Тем самым вы даете себе права на редактирование папки и ее содержимого. Теперь у вас должно без проблем появиться содержимое при распаковке Apache Tomcat. Тем самым вы даете себе права на редактирование папки и ее содержимого. Теперь у вас должно без проблем появиться содержимое при распаковке Apache Tomcat.
 Далее для упрощения работы необходимо создать что-то наподобие ярлыка. Делается это следующей командой:​ Далее для упрощения работы необходимо создать что-то наподобие ярлыка. Делается это следующей командой:​
-<​code>​ln -s /​opt/​apache-tomcat-8.5.16 /​opt/​apache-tomcat</​code>​+<​code ​bash>ln -s /​opt/​apache-tomcat-8.5.16 /​opt/​apache-tomcat</​code>​
 Это также необходимо для стандартной работы midPoint, однако в будущем вы можете поменять все пути. Это также необходимо для стандартной работы midPoint, однако в будущем вы можете поменять все пути.
 Следующим шагом нам необходимо создать пользователя с именем tomcat. Вводим такую команду:​ Следующим шагом нам необходимо создать пользователя с именем tomcat. Вводим такую команду:​
-<​code>​sudo useradd -c "​Apache Tomcat"​ -r -d /​opt/​apache-tomcat -s /​usr/​sbin/​nologin tomcat</​code>​+<​code ​bash>sudo useradd -c "​Apache Tomcat"​ -r -d /​opt/​apache-tomcat -s /​usr/​sbin/​nologin tomcat</​code>​
 Теперь назначим владельца папки ''/​opt/​apache-tomcat''​ пользователя tomcat: Теперь назначим владельца папки ''/​opt/​apache-tomcat''​ пользователя tomcat:
-<​code>​sudo chown -R tomcat:​tomcat /​opt/​apache-tomcat</​code>​+<​code ​bash>sudo chown -R tomcat:​tomcat /​opt/​apache-tomcat</​code>​
 Приступаем к настройке. Первым делом создадим скрипт,​ который будем запускать Apache Tomcat. Для этого мы можем скачать заранее заготовленый файл, либо создать его в любом текстовом редакторе. Вот содержимое данного скрипта:​ Приступаем к настройке. Первым делом создадим скрипт,​ который будем запускать Apache Tomcat. Для этого мы можем скачать заранее заготовленый файл, либо создать его в любом текстовом редакторе. Вот содержимое данного скрипта:​
  
-<​code>#​!/​bin/​bash+<​code ​bash>#​!/​bin/​bash
 # #
 # Startup script for Tomcat Servlet Engine # Startup script for Tomcat Servlet Engine
Строка 65: Строка 65:
  
 Файл должен называться **tomcat**, его местонахождение - ''/​etc/​init.d''​. Однако при попытке сохранить или переместить файл по данному пути у вас выдаст ошибку. Чтобы ее исправить,​ необходимо дать право на редактирование содержимого путем команды,​ наподобие выше:{{ :​публикации:​midpoint_ubuntu_installation_4_.jpg?​direct |}} Файл должен называться **tomcat**, его местонахождение - ''/​etc/​init.d''​. Однако при попытке сохранить или переместить файл по данному пути у вас выдаст ошибку. Чтобы ее исправить,​ необходимо дать право на редактирование содержимого путем команды,​ наподобие выше:{{ :​публикации:​midpoint_ubuntu_installation_4_.jpg?​direct |}}
-<​code>​sudo chmod –R 757 /​etc/​init.d/</​code>​+<​code ​bash>sudo chmod –R 757 /​etc/​init.d/</​code>​
 Теперь без проблем вы можете поместить туда файл. Теперь без проблем вы можете поместить туда файл.
 Далее нам необходимо указать tomcat’y его рабочую область,​ для удобства это будет локальная сеть. Необходимо редактировать две области файла, которые находится по следующему пути: ''/​opt/​apache-tomcat/​conf/​server.xml''​. Далее нам необходимо указать tomcat’y его рабочую область,​ для удобства это будет локальная сеть. Необходимо редактировать две области файла, которые находится по следующему пути: ''/​opt/​apache-tomcat/​conf/​server.xml''​.
 Находим следующие строки:​ Находим следующие строки:​
-<​code> ​  <​Connector port="​8080"​ protocol="​HTTP/​1.1"​+<​code ​bash>   <​Connector port="​8080"​ protocol="​HTTP/​1.1"​
                ​connectionTimeout="​20000"​                ​connectionTimeout="​20000"​
                ​redirectPort="​8443"/></​code>​                ​redirectPort="​8443"/></​code>​
 И добавляем в конец перед /> данную строку:​ ''​address="​127.0.0.1"''​{{ :​публикации:​midpoint_ubuntu_installation_5_.jpg?​direct |}} И добавляем в конец перед /> данную строку:​ ''​address="​127.0.0.1"''​{{ :​публикации:​midpoint_ubuntu_installation_5_.jpg?​direct |}}
 То же самое надо проделать и другой областью. Вот ее итоговый вариант:​ То же самое надо проделать и другой областью. Вот ее итоговый вариант:​
-<​code> ​   <​Connector port="​8009"​ protocol="​AJP/​1.3"​ redirectPort="​8443"​+<​code ​bash>    <​Connector port="​8009"​ protocol="​AJP/​1.3"​ redirectPort="​8443"​
                 address="​127.0.0.1"/></​code>​{{ :​публикации:​midpoint_ubuntu_installation_6_.jpg?​direct |}}                 address="​127.0.0.1"/></​code>​{{ :​публикации:​midpoint_ubuntu_installation_6_.jpg?​direct |}}
 Т.е теперь у вас должно быть два коннектора (с портами 8080 и 8009), которые будет адресовываться на локальный хост, а не интернет. Т.е теперь у вас должно быть два коннектора (с портами 8080 и 8009), которые будет адресовываться на локальный хост, а не интернет.
 ===== Установка Apache2 ===== ===== Установка Apache2 =====
 Теперь,​ после настройки tomcat’a, необходимо установить Apache, используя следующую команду в терминале:​ Теперь,​ после настройки tomcat’a, необходимо установить Apache, используя следующую команду в терминале:​
-<​code>​sudo apt-get install apache2</​code>​{{ :​публикации:​midpoint_ubuntu_installation_7_.jpg?​direct |}}+<​code ​bash>sudo apt-get install apache2</​code>​{{ :​публикации:​midpoint_ubuntu_installation_7_.jpg?​direct |}}
 После установки нужно активировать три модуля,​ которые необходимы для корректной работы. Делается это с помощью четырех команд:​ После установки нужно активировать три модуля,​ которые необходимы для корректной работы. Делается это с помощью четырех команд:​
-<​code>​cd /​etc/​apache2/​mods-enabled+<​code ​bash>cd /​etc/​apache2/​mods-enabled
 ln -s ../​mods-available/​rewrite.load ln -s ../​mods-available/​rewrite.load
 ln -s ../​mods-available/​proxy.load ln -s ../​mods-available/​proxy.load
 ln -s ../​mods-available/​proxy_http.load</​code>​ ln -s ../​mods-available/​proxy_http.load</​code>​
 При выполнении команд ln может возникнуть ошибка доступа. Исправляем с помощью:​ При выполнении команд ln может возникнуть ошибка доступа. Исправляем с помощью:​
-<​code>​sudo chmod –R 757 /​etc/​apache2/</​code>​+<​code ​bash>sudo chmod –R 757 /​etc/​apache2/</​code>​
 Теперь необходимо включить прокси,​ по которому будет происходить работа. Для этого необходимо в файле (если него нет – создать) ''/​etc/​apache2/​sites-available/​default''​ добавить следующие строки:​ Теперь необходимо включить прокси,​ по которому будет происходить работа. Для этого необходимо в файле (если него нет – создать) ''/​etc/​apache2/​sites-available/​default''​ добавить следующие строки:​
-<​code> ​      ​ProxyRequests ​          Off+<​code ​bash>       ​ProxyRequests ​          Off
        ​ProxyPreserveHost ​      On        ​ProxyPreserveHost ​      On
    
Строка 94: Строка 94:
        ​ProxyPassReverse ​       /​midpoint ​      ​http://​localhost:​8080/​midpoint</​code>​        ​ProxyPassReverse ​       /​midpoint ​      ​http://​localhost:​8080/​midpoint</​code>​
 Если у вас чистая система,​ то добавляем следующие строки в этот же файл: Если у вас чистая система,​ то добавляем следующие строки в этот же файл:
-<​code> ​       RewriteEngine On+<​code ​bash>        RewriteEngine On
         RewriteRule ​            ​^/?​$ ​    /​midpoint/​ [R]</​code>​         RewriteRule ​            ​^/?​$ ​    /​midpoint/​ [R]</​code>​
 Если у вас уже есть какие-то хосты в системе,​ то пункт стоит пропустить. Если у вас уже есть какие-то хосты в системе,​ то пункт стоит пропустить.
 Далее перезагружаем службу apache с помощью команды в терминале:​ Далее перезагружаем службу apache с помощью команды в терминале:​
-<​code>​service apache2 reload</​code>​+<​code ​bash>service apache2 reload</​code>​
 ===== Установка PostgreSQL ===== ===== Установка PostgreSQL =====
 Для работы midPoint необходима база данных,​ и поэтому нам необходимо установить PostgreSQL, путем просто команды : Для работы midPoint необходима база данных,​ и поэтому нам необходимо установить PostgreSQL, путем просто команды :
-<​code>​sudo apt-get install postgresql</​code>​+<​code ​bash>sudo apt-get install postgresql</​code>​
 Добавляем пользователя midPoint в данном сервисе,​ и придумываем пароль,​ который ни при каких обстоятельствах не забудем:​ Добавляем пользователя midPoint в данном сервисе,​ и придумываем пароль,​ который ни при каких обстоятельствах не забудем:​
-<​code>​sudo -u postgres createuser --pwprompt --no-superuser --no-createdb --no-createrole midpoint</​code>​+<​code ​bash>sudo -u postgres createuser --pwprompt --no-superuser --no-createdb --no-createrole midpoint</​code>​
 Теперь создаем базу данных:​ Теперь создаем базу данных:​
-<​code>​sudo -u postgres createdb --owner=midpoint midpoint</​code>​+<​code ​bash>sudo -u postgres createdb --owner=midpoint midpoint</​code>​
 Далее необходимо активировать SQL схему для определенной midPoint версии. Файл зовется ''​postgresql-x.y-all.sql'',​ где **x.y** – версия,​ которую вы используете. Его можно найти в архиве с midPoint по следующему пути: ""​config/​sql/​_all/""​ Далее необходимо активировать SQL схему для определенной midPoint версии. Файл зовется ''​postgresql-x.y-all.sql'',​ где **x.y** – версия,​ которую вы используете. Его можно найти в архиве с midPoint по следующему пути: ""​config/​sql/​_all/""​
 Далее активируем эту схему командой,​ где необходимо указать полный путь до файла, иначе будет ошибка. Вводим пароль от midpoint по запросу:​ Далее активируем эту схему командой,​ где необходимо указать полный путь до файла, иначе будет ошибка. Вводим пароль от midpoint по запросу:​
-<​code>​psql --host=localhost --username=midpoint < postgresql-X.Y-all.sql</​code>​+<​code ​bash>psql --host=localhost --username=midpoint < postgresql-X.Y-all.sql</​code>​
 База данных готова,​ переходим к самой установке midPoint. База данных готова,​ переходим к самой установке midPoint.
 ===== Установка Midpoint ===== ===== Установка Midpoint =====
 Нам необходим файл midpoint.war. Найти его можно в архиве в папке ''​war''​. Перемещаем файл в ''/​opt/​apache-tomcat/​webapps''​. Если не можем переместить,​ то проверяем права, и исправляем с помощью ​ Нам необходим файл midpoint.war. Найти его можно в архиве в папке ''​war''​. Перемещаем файл в ''/​opt/​apache-tomcat/​webapps''​. Если не можем переместить,​ то проверяем права, и исправляем с помощью ​
-<​code>​sudo chmod –R 757 /​opt/​apache-tomcat/​webapps/</​code>​+<​code ​bash>sudo chmod –R 757 /​opt/​apache-tomcat/​webapps/</​code>​
 Теперь создаем папку с midpoint командой:​ Теперь создаем папку с midpoint командой:​
-<​code>​mkdir /​var/​opt/​midpoint</​code>​+<​code ​bash>mkdir /​var/​opt/​midpoint</​code>​
 Назначаем владельца папки Tomcat: Назначаем владельца папки Tomcat:
-<​code>​sudo chown tomcat:​tomcat /​var/​opt/​midpoint</​code>​+<​code ​bash>sudo chown tomcat:​tomcat /​var/​opt/​midpoint</​code>​
 Далее прописываем дополнительные параметры запуска midpoint в любом месте в файле ''/​opt/​apache-tomcat/​bin/​catalina.sh'':​ Далее прописываем дополнительные параметры запуска midpoint в любом месте в файле ''/​opt/​apache-tomcat/​bin/​catalina.sh'':​
-<​code>​JAVA_OPTS="​$JAVA_OPTS -server -Xms256m -Xmx512m -XX:​PermSize=128m -XX:​MaxPermSize=256m -Dmidpoint.home=/​var/​opt/​midpoint/​ -Djavax.net.ssl.trustStore=/​var/​opt/​midpoint/​keystore.jceks -Djavax.net.ssl.trustStoreType=jceks"</​code>​{{ :​публикации:​midpoint_ubuntu_installation_8_.jpg?​direct |}}+<​code ​bash>​JAVA_OPTS="​$JAVA_OPTS -server -Xms256m -Xmx512m -XX:​PermSize=128m -XX:​MaxPermSize=256m -Dmidpoint.home=/​var/​opt/​midpoint/​ -Djavax.net.ssl.trustStore=/​var/​opt/​midpoint/​keystore.jceks -Djavax.net.ssl.trustStoreType=jceks"</​code>​{{ :​публикации:​midpoint_ubuntu_installation_8_.jpg?​direct |}}
 Теперь включаем tomcat: <​code>/​etc/​init.d/​tomcat</​code>​ Теперь включаем tomcat: <​code>/​etc/​init.d/​tomcat</​code>​
-Однако тут на чистой системе появится проблема.\\ Дело в том, что запускать скрипт нужно от обычного пользователя. Однако в таком случае система выдаст ошибку **«Отказано в доступе»**,​ что навивает на мысли об использовании прав суперпользователя. Но даже при запуске от имени ''​sudo''​ система выдаст ошибку **«Не найдена команда»**. Это происходит из-за того, что в системе не разрешен запуск пользователей,​ которые входят в ''​usr/​sbin/​nologin''​. Исправить эту ошибку можно, добавив ''/​usr/​sbin/​nologin''​ в файл ''/​etc/​shells''​. Если не можете сохранить файл, проверьте права на файл, в случае необходимости введите:​ <​code>​sudo chmod 757 /etc/shells </​code>​+Однако тут на чистой системе появится проблема.\\ Дело в том, что запускать скрипт нужно от обычного пользователя. Однако в таком случае система выдаст ошибку **«Отказано в доступе»**,​ что навивает на мысли об использовании прав суперпользователя. Но даже при запуске от имени ''​sudo''​ система выдаст ошибку **«Не найдена команда»**. Это происходит из-за того, что в системе не разрешен запуск пользователей,​ которые входят в ''​usr/​sbin/​nologin''​. Исправить эту ошибку можно, добавив ''/​usr/​sbin/​nologin''​ в файл ''/​etc/​shells''​. Если не можете сохранить файл, проверьте права на файл, в случае необходимости введите:​ <​code ​bash>sudo chmod 757 /etc/shells </​code>​
 Теперь у вас получится включить скрипт. Если даже сейчас он не запустится (как у меня и произошло),​ то необходимо проверить,​ какой владелец стоит у папок ''/​opt/​apache-tomcat''​ и ''/​opt/​apache-tomcat-8.5.16''​ (в зависимости от версии). Теперь у вас получится включить скрипт. Если даже сейчас он не запустится (как у меня и произошло),​ то необходимо проверить,​ какой владелец стоит у папок ''/​opt/​apache-tomcat''​ и ''/​opt/​apache-tomcat-8.5.16''​ (в зависимости от версии).
-В особо тяжелом случае,​ если при создании аккаунта tomcat не запросил пароль,​ то при любом случае при запуске скрипта что бы вы ни ввели, будет ошибка **«Сбой в проверке подлинности»**. Тогда необходимо вручную задать пароль tomcat’у,​ для этого нужна команда:​ <​code>​sudo passwd tomcat </​code>​Далее следуем указаниям. ​+В особо тяжелом случае,​ если при создании аккаунта tomcat не запросил пароль,​ то при любом случае при запуске скрипта что бы вы ни ввели, будет ошибка **«Сбой в проверке подлинности»**. Тогда необходимо вручную задать пароль tomcat’у,​ для этого нужна команда:​ <​code ​bash>sudo passwd tomcat </​code>​Далее следуем указаниям. ​
 Как только скрипт появится,​ в терминале будут показаны параметры,​ и в конце появится надпись **“Tomcat started”**. Однако надо подождать еще минуты три (в зависимости от производительности),​ потому что программе нужно время, чтобы инициализировать модуль midPoint.{{ :​публикации:​midpoint_ubuntu_installation_9_.jpg?​direct |}} Как только скрипт появится,​ в терминале будут показаны параметры,​ и в конце появится надпись **“Tomcat started”**. Однако надо подождать еще минуты три (в зависимости от производительности),​ потому что программе нужно время, чтобы инициализировать модуль midPoint.{{ :​публикации:​midpoint_ubuntu_installation_9_.jpg?​direct |}}
 Далее останавливаем tomcat’a для дальнейшей настройки. Далее останавливаем tomcat’a для дальнейшей настройки.
 Переходим в ''/​var/​opt/​midpoint/​config.xml'',​ выставляет себе права на правку:​ Переходим в ''/​var/​opt/​midpoint/​config.xml'',​ выставляет себе права на правку:​
-<​code>​ sudo chmod –R 757 /​var/​opt/​midpoint/​config.xml </​code>​+<​code ​bash> sudo chmod –R 757 /​var/​opt/​midpoint/​config.xml </​code>​
 Заменяем все, что находится между ''<​repository>''​ и ''</​repository>'':​ Заменяем все, что находится между ''<​repository>''​ и ''</​repository>'':​
         <​repository>​         <​repository>​
Строка 139: Строка 139:
         </​repository>​         </​repository>​
 Далее нам необходимо удалить вспомогательную базу данных,​ которая создает таблицы,​ дабы избежать конфликтов в будущем. Используем rm: Далее нам необходимо удалить вспомогательную базу данных,​ которая создает таблицы,​ дабы избежать конфликтов в будущем. Используем rm:
-<​code>​rm /​var/​opt/​midpoint/​midpoint.mv.db+<​code ​bash>rm /​var/​opt/​midpoint/​midpoint.mv.db
 rm /​var/​opt/​midpoint/​midpoint-activiti.mv.db </​code>​ rm /​var/​opt/​midpoint/​midpoint-activiti.mv.db </​code>​
-Остается только включить tomcat командой <​code>​ /​etc/​init.d/​tomcat start</​code>​ Проверяем,​ работает ли Apache, зайдя на ''​localhost''​.{{ :​публикации:​midpoint_ubuntu_installation_10_.jpg?​direct |}} Потом заходим на ''​localhost:​8080'',​ чтобы убедиться в работе Tomcat.{{ :​публикации:​midpoint_ubuntu_installation_11_.jpg?​direct |}} А теперь самое главное:​ ''​localhost:​8080/​midpoint''​{{ :​публикации:​midpoint_ubuntu_installation_1_.jpg?​direct |}}+Остается только включить tomcat командой <​code ​bash> /​etc/​init.d/​tomcat start</​code>​ Проверяем,​ работает ли Apache, зайдя на ''​localhost''​.{{ :​публикации:​midpoint_ubuntu_installation_10_.jpg?​direct |}} Потом заходим на ''​localhost:​8080'',​ чтобы убедиться в работе Tomcat.{{ :​публикации:​midpoint_ubuntu_installation_11_.jpg?​direct |}} А теперь самое главное:​ ''​localhost:​8080/​midpoint''​{{ :​публикации:​midpoint_ubuntu_installation_1_.jpg?​direct |}}
 Если вы увидели эту же картинку,​ то поздравляю,​ вы настроили все правильно!\\ Логин: ''​administrator'',​ пароль:​ ''​5ecr3t''​ Если вы увидели эту же картинку,​ то поздравляю,​ вы настроили все правильно!\\ Логин: ''​administrator'',​ пароль:​ ''​5ecr3t''​