Ugrálnom kell a Java 8 és a Java 13 között, hogy a különböző Minecraft verziók megfelelően működjenek, és ehhez meg kell írnom a következőt: sudo archlinux-java set java-8-openjdk
vagy sudo archlinux-java set java-13-openjdk
– a probléma az, hogy ezt egy egyszerű, duplán kattintható szkriptvé szeretném alakítani, amelyet az asztalomra tehetek, és nem kérem meg, hogy adja meg a jelszót .
Van valami, amit chmod-ra tudok tenni, vagy valami olyasmi, ami miatt a parancshoz nincs szükség sudo
-re?
Válasz
Biztonságosabb / óvatosabb megközelítés lenne, ha nem módosítanánk az alapértelmezett Java-környezetet az egész rendszeren, csak egyetlen program különböző verzióinak futtatásához.
Ehelyett egy módosított PATH
programmal indíthat el egy programot, hogy egy adott Java verziót használjon (amint azt a Arch Linux Wiki , ahol a archlinux-java
dokumentálva van):
$ PATH="/usr/lib/jvm/java-<version>-openjdk/bin${PATH:+:$PATH}" your_program
Ha .desktop
fájlt használ a program indításához, szerkessze annak Exec
kulcs :
Exec=env PATH="/usr/lib/jvm/java-<version>-openjdk/bin${PATH:+:$PATH}" your_program
Vagy a GUI használatával állítsa be a “Tulajdonságok” → “Alkalmazás”: “Parancs” mezőt.
Ha valóban meg akarja engedni a felhasználónak, hogy futtassa sudo archlinux-java
anélkül, hogy jelszót kérnének tőle, hozzáadhat
your_user ALL=(root) NOPASSWD: /usr/bin/archlinux-java
a /etc/sudoers
címre, a már meglévő your_user
sorok. Ehhez ne felejtse el használni a visudo
-t: a mentés előtt ellenőrzi a sudoers
fájlt, hogy nincs-e benne hiba, csökkentve ezzel a sudo
használhatatlan.
További olvasmány: