Dlaczego gksu nie jest już domyślnie instalowany?

99

Zawsze zalecałem naciskanie ALT+ F2i pisanie na przykład gksu nautiluslub gksudo nautilusoba są równoważne; do uruchamiania programów graficznych z uprawnieniami administratora . Jednak właśnie zainstalowałem Raring na systemie testowym i to już nie działa.

gksui gksudonie są instalowane jako część domyślnej instalacji raringowej; chociaż są w repozytoriach. W 12.04 przynajmniej gksudobył tylko dowiązaniem symbolicznymgksu

Powodem, dla którego zawsze to robiłem, jest to, że chociaż korzystanie z niego sudow pewnych okolicznościach jest często bezpieczne , może powodować problemy z aplikacjami graficznymi, ponieważ gksuuruchamiasz program jako użytkownik root, a sudoTy sam jako użytkownik, ale z podwyższonymi uprawnieniami.

Może to oznaczać, że przypadkowo zmienisz właściciela krytycznych plików systemowych. Może to powodować problemy.

To rozumowanie wyjaśniono lepiej tutaj:

Dlaczego polecenie zostało usunięte z nowej instalacji i czego powinniśmy użyć zamiast tego?

Warren Hill
źródło
1
Zobacz brak gksudo na forum Ubuntu .
user68186,
4
Jako wyjaśnienie gksudoi niegksuone identyczne, nawet jeśli jedno jest dowiązaniem symbolicznym do drugiego (program wykrywa, w jaki sposób został zainicjowany). Istnieje subtelna różnica, która w rzadkich przypadkach może prowadzić do utraty wybranych plików systemowych. Dlatego, dopóki nie zaczniesz używać pkexec, zawsze używaj gksudozamiast gksu.
Paddy Landau,
1
@PaddyLandau Lubię wielu innych tutaj zawsze „gksu” i gksudobyły takie same patrz Jaka jest różnica między gksudo i gksu? . Czy możesz dodać odpowiedź na to pytanie, która wyjaśnia różnicę; lub podaj link do strony internetowej, która to wyjaśnia, aby jeden z nas mógł to zrobić.
Warren Hill,
2
Warto zauważyć, że żadna z dotychczasowych odpowiedzi nie wyjaśnia, dlaczego gksu nie jest już domyślnie instalowany, co jest faktycznym pytaniem.
MestreLion
3
@MestreLion. Powodem, dla którego gksuprzestano instalować się domyślnie, jest to, że programiści uważają, że pakiet polkit jest lepszym sposobem kontrolowania uprawnień. Dlatego stopniowo migrują aplikacje, aby z nich korzystać. gksubył tylko częścią domyślnej instalacji, ponieważ od tego zależały inne aplikacje. Ponieważ nic w domyślnej instalacji nie zależy gksulub gksudonie jest już pobierane jako zależność.
Warren Hill,

Odpowiedzi:

68

Po długiej dyskusji na temat # ubuntu-devel rozumiem teraz sposób myślenia.

gksu można zainstalować na 13.04 za pomocą sudo apt-get install gksui będzie działać.

Jeśli zdecydowałeś się zainstalować gksu i używasz wersji 64-bitowej, musisz gksu-propertiesraz uruchomić, aby ustawić uwierzytelnianie na sudo. Nie ma takiej potrzeby na 32-bitach, ponieważ domyślnie ustawiony jest na sudo.

Jednak gksu nie jest już zalecane i może być całkowicie usunięte z przyszłych wydań Ubuntu. Ogólnie rzecz biorąc, zespół programistów wolałby, abyśmy nie korzystali z aplikacji GUI jako root, ale zamiast tego używali sudo i wiersza poleceń.

W dłuższej perspektywie preferowany jest pkexec, jednak nie jest on obecnie bardzo łatwy w użyciu.

pkexec pozwala autoryzowanemu użytkownikowi wykonać PROGRAM jako inny użytkownik. Jeśli nazwa użytkownika nie zostanie podana, program zostanie uruchomiony jako superużytkownik administracyjny, root.

zobacz stronę podręcznika, man pkexecaby uzyskać więcej informacji.

W międzyczasie możesz otworzyć terminal CTRL+ ALT+ Tlub wyszukać terminal w desce rozdzielczej.

Nie zamykaj terminala, dopóki to nie zakończysz, jest to ważne, ponieważ program GUI jest potomkiem terminala, a jeśli go zamkniesz, program GUI również się zamknie.

Wchodzić sudo -i

Jesteś teraz zalogowany jako root, więc możesz na przykład wprowadzić odpowiednie zmiany

gedit path_to_file 

aby edytować plik konfiguracyjny lub

nautilus 

aby uruchomić menedżera plików

Po zakończeniu zamknij aplikację GUI, a następnie w terminalu

exit

Możesz teraz zamknąć terminal.

Warren Hill
źródło
58
Nakłanianie użytkowników do korzystania z wiersza poleceń zamiast uruchamiania aplikacji graficznych, ponieważ root nie będzie działał poprawnie w przypadku konwersji systemu Windows ...
Seth
4
@ co, oni mają teraz dos i PowerShell, prawda? Witamy w retro-futurystycznej przyszłości, teraz z większą liczbą kliknięć.
belacqua
4
Nawiasem mówiąc, możesz anulować problem „zamykanie terminala zabija wszystkie odrodzone programy”, uruchamiając program z &sufiksem, aby działał jako proces w tle, a następnie wydawał disown %1bash - lub inny numer zadania, którym jest program. Następnie możesz bezpiecznie zamknąć terminal. Może to być coś w stylu:sudo my-program &;disown %1;exit;
Chuck R
18
However gksu is not recommended any more and it may be removed entirely.... Chcesz wyjaśnić, dlaczego ?
MestreLion
3
Więcej na temat systemu Windows, korzystanie z niego jest po prostu ... Wolne. Wszystko w tym jest powolne. Sposób, w jaki robisz, słaba wymówka dla terminala, instalowanie oprogramowania, uruchamianie i wyłączanie, usuwanie oprogramowania, pisanie poleceń, próba wykonania powłoki powłoki, zadanie, które mogę wykonać w ciągu 5 sekund w systemie Linux, może zająć mi do 10 minuty w systemie Windows. Nieefektywne to mało powiedziane. Fakt, że czuję, że mam większą kontrolę w systemie OS X lub w moim telefonie z Androidem, naprawdę mówi coś o wyborach projektowych okien.
Braden Best
9

Właśnie zainstalowałem 13.04: GKSU jest już zainstalowany ...


źródło
Właśnie sprawdziłem ..... jest zainstalowany .......
Qasim
1
Zamierzałem wydać polecenie dotyczące tej odpowiedzi, ale poświęciłem chwilę na sprawdzenie, czy gksu tam jest. To jest. Zainstalowałem nawet świeży 13.04 64-bitowy i on też tam był.
Luis Alvarado
1
Właśnie sprawdziłem ponownie w moim systemie. Nadal nie ma tych wątków na forach Ubuntu tutaj i tutaj . Być może został dodany do najnowszej aktualizacji, czy może kupiłeś go, instalując coś innego?
Warren Hill