Como executar o IntelliJ IDEA como um usuário de sistema dedicado?

4

o problema

Instalei o IntelliJ IDEA no meu sistema (para /opt/jetbrains ), e quero que ele seja capaz de modificar seus arquivos (fazer auto-atualização) sem permitir que nenhum outro processo os modifique. / p>

a configuração

Eu descobri que precisarei de um usuário do sistema, a quem o diretório /opt/jetbrains pertencerá, e executarei o IDEA como esse usuário:

# Set up things
sudo mkdir /opt/jetbrains
sudo adduser --system --home /opt/jetbrains jetbrains
sudo chown jetbrains /opt/jetbrains

# Install IDEA
wget https://download.jetbrains.com/idea/ideaIU-2017.1.2.tar.gz -O idea.tar.gz
sudo -u jetbrains tar -xzf idea.tar.gz -C /opt/jetbrains/
rm idea.tar.gz

# Configure idea.desktop
# set the 'Exec' line, to run as user jetbrains

o que eu tentei

Eu li Executar uma script de shell como outro usuário que não possui senha

Eu tentei o seguinte, mas recebi um erro, bem como uma solicitação de senha.

  • sudo su -c "/opt/jetbrains/idea-ultimate/bin/idea.sh" -s /bin/sh jetbrains
  • sudo -u jetbrains /opt/jetbrains/idea-ultimate/bin/idea.sh

Ambas as saídas:

No protocol specified

Start Failed: Failed to initialize graphics environment

java.awt.AWTError: Can't connect to X11 window server using ':0' as the value of the DISPLAY variable.
  at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)
  at sun.awt.X11GraphicsEnvironment.access0(X11GraphicsEnvironment.java:65)
  at sun.awt.X11GraphicsEnvironment.run(X11GraphicsEnvironment.java:115)
  at java.security.AccessController.doPrivileged(Native Method)
  at sun.awt.X11GraphicsEnvironment.<clinit>(X11GraphicsEnvironment.java:74)
  at ...

Eu também tentei gksu -w -u jetbrains gksu /opt/jetbrains/idea-ultimate/bin/idea.sh , mas isso me levou a uma senha - do usuário jetbrains , que obviamente não tem senha.

    
por Mateusz 02.05.2017 / 18:40

1 resposta

3

É tarde, mas espero que ajude alguém. Eu estou fazendo isso:

xhost +SI:localuser:foxx1337 && sudo -u foxx1337 /opt/jetbrains/idea-ultimate/bin/idea.sh

Isto é baseado na resposta maravilhosa que o sim deu aqui - link

    
por foxx1337 15.12.2017 / 23:42