Trebuie să sar între Java 8 și Java 13 pentru ca diferitele versiuni Minecraft să funcționeze corect, iar acest lucru necesită să introduc sudo archlinux-java set java-8-openjdk sau sudo archlinux-java set java-13-openjdk – problema este că vreau să transform acest lucru într-un simplu script dublu clic pe care îl pot pune pe desktopul meu și să nu-mi solicite parola .
Există ceva ce pot modifica sau ceva care face ca această comandă să nu necesite sudo?
Răspuns
Ar fi o abordare mai sigură / mai prudentă să nu schimbați mediul Java implicit la nivel de sistem doar pentru a rula diferite versiuni ale unui singur program.
Puteți, în schimb, porni un program cu un PATH modificat pentru a-l face să utilizeze o versiune Java specifică (așa cum este sugerat în Arch Linux Wiki , unde este documentat archlinux-java):
$ PATH="/usr/lib/jvm/java-<version>-openjdk/bin${PATH:+:$PATH}" your_program
Dacă utilizați un fișier .desktop pentru a lansa programul, modificați Exec cheie :
Exec=env PATH="/usr/lib/jvm/java-<version>-openjdk/bin${PATH:+:$PATH}" your_program
Sau, alternativ, utilizând GUI, reglați „Proprietăți” → „Aplicație”: câmpul „Comandă”.
într-adevăr doriți să permiteți unui utilizator să ruleze sudo archlinux-java fără a vi se solicita o parolă, puteți adăuga
your_user ALL=(root) NOPASSWD: /usr/bin/archlinux-java
către /etc/sudoers, după orice deja prezent your_user linii. Nu uitați să utilizați visudo pentru a face acest lucru: verifică fișierul sudoers pentru erori înainte de a-l salva, reducând riscul de a crea sudo inutilizabil.
Lecturi suplimentare: