Отказано в разрешении на папку / tmp при установке Glassfish на CentOS - PullRequest
1 голос
/ 06 февраля 2012

Я пытаюсь установить Glassfish 3.1.1 на сервер Centos 6.2 Linux с внешним интерфейсом Apache HTTP.Я создал новую группу с именем glassfish, используя:

# groupadd glassfish

и добавил нового пользователя glassfish, используя:

# useradd -s /bin/bash -g glassfish glassfish
# passwd glassfish 

Следуя инструкциям по установке Glassfish, я получаюследующая ошибка при запуске файла самораспаковывания:

glassfish@host3 [~/software]# sh ./glassfish-3.1.1-unix.sh 
Extracting the installer archive...
Extracting the installer runtime...
Extracting the installer resources...
Extracting the installer metadata...

Welcome to GlassFish V3 installer

Using the user defined JAVA_HOME : /usr/java/jdk1.6.0_30
Entering setup...
product-installer.sh: line 178: /tmp/install.020512204334/install/bin/engine-wrapper: Permission denied

В каталоге tmp:

4 drwxrwxrwx  12 root root  4096 Feb  5 20:39 tmp/

Кто-нибудь знает, как решить эту ошибку?

ОБНОВЛЕНИЕ 1

Я ввел следующую команду как пользователь root, но ничего не изменилось при установке в качестве пользователя glassfish:

 # mount -o remount,exec /tmp /var/tmp

ОБНОВЛЕНИЕ 2

Я ввел некоторую set -x и установил + xКоманды в файл glassfish-3.1.1-unix.sh для целей отладки, и первая проблема, возникающая при выполнении этого файла, выглядит следующим образом:

+ echo 'Extracting the installer runtime...'
Extracting the installer runtime...
+ /home/glassfish/java/jdk1.6.0_30/bin/jar xf ./Product/Packages/Engine.zip
java.io.FileNotFoundException: ./Product/Packages/Engine.zip (No such file or directory)

Однако, если я возьму тот же glassfish-3.1.1-unix.sh и распакуйте его в директорию-заглушку, я вижу, что /Product/Packages/Engine.zip есть.Таким образом, файл не поврежден.

Кроме того, я снова попробовал весь процесс установки, но использовал пользователя root вместо пользователя glassfish, и возникает та же самая ошибка.

Что еще может вызвать эту ошибку?Я использую CentOS 6.2.

Ответы [ 3 ]

4 голосов
/ 06 февраля 2012

/tmp установлен noexec.Переустановите это exec.

0 голосов
/ 08 февраля 2012

Я в конце концов решил это с помощью форума поддержки GlassFish. Смотрите здесь:

http://www.java.net/forum/topic/glassfish/glassfish/what-directories-does-glassfish-311-self-extracting-installer-touch-outside-directory-it-runs#comment-821920

0 голосов
/ 06 февраля 2012

Ну, может быть, вам нужно достаточно привилегий ...

Выполнить с «привилегиями root»

$ su -

или

Добавить пользователя "glassfish" как sudoer

Как добавить sudoer

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...