Jak uruchamiać aplikacje jako root?


13

Mam dziwny problem z Kate i Kwrite. Po kliknięciu przycisku Otwórz plik ulega awarii z błędem segmentacji.

Jestem kompletnym nowicjuszem w Linuksie i myślę, że problem polega na tym, że nie uruchamiam aplikacji jako root.

Jak uruchomić aplikacje jako root w Ubuntu? Czy to jest złą praktyką? Jaki jest cel całego rootowania, skoro chociaż musimy tak często używać roota, nie jest on używany jako domyślny?


Możesz zrobić kilka bardzo szkodliwych rzeczy, używając roota do otwarcia edytora, więc nie idź tą drogą;) 2 inne rozwiązania, które nie wymagają roota: spróbuj naprawić segmentation faultlub użyj innego edytora (gedit jest edytorem gnome). kate en kwrite to program KDE (więc nie Gnome).
Rinzwind

1
jakie szkodliwe rzeczy można zrobić w edytorze tekstu. dźwięki szalone
l - '' '' ----------- '' „” „”

1
@ АртёмЦарионов Po pierwsze, jako root możesz edytować pliki używane przez komputer do uruchamiania systemu operacyjnego lub ładować środowisko graficzne, skutecznie uszkadzając komputer.
Amanda

Odpowiedzi:


15

Uruchomienie programu jako root jest dość proste.

Do użytku z programem konsolowym

sudo <program name>

Jeśli jest to aplikacja GUI, użyj

gksudo <program name>

13

Systemy operacyjne typu UNIX (w tym Linux) wykorzystują koncepcję zwaną separacją uprawnień, aby zapewnić bezpieczeństwo systemu. UNIX został zaprojektowany od podstaw jako system dla wielu użytkowników - to znaczy, że wiele osób mogło korzystać z jednego komputera z systemem UNIX jednocześnie. Ponieważ większość użytkowników nie musi być w stanie modyfikować systemu podstawowego, tylko administrator systemu powinien mieć to uprawnienie. Ten uprzywilejowany użytkownik jest tradycyjnie nazywany rootem . (Root jest podobny do administratora w systemie Windows).

Ma to sens na kilku poziomach. Zwykle serwer WWW lub inny proces, który udostępnia port innym (potencjalnie złośliwym) komputerom, będzie działał jako własny użytkownik (Apache działa jako użytkownik nobody), dzięki czemu nawet jeśli program serwera WWW zostanie zhakowany, atakujący nie będzie mógł wyrzucić do kosza cała maszyna dość łatwo. Ma to nawet sens w przypadku większości komputerów dla jednego użytkownika, takich jak komputery stacjonarne: jeśli na przykład innym członkom twojej rodziny uda się uruchomić rm -rf /( NIE uruchamiaj tego ), nie będą mieli uprawnień do usunięcia każdego pliku w systemie , np. zrobiliby to, gdyby nie było czegoś takiego jak rozdzielenie przywilejów.

Istnieje kilka poleceń, których możesz użyć do podniesienia swoich uprawnień. sudoKomenda istnieje tymczasowo daje uprawnienia root-poziom, kiedy trzeba je do administrowania systemem. Możesz także użyć poleceń gksudolub su. Z tego ostatniego można korzystać tylko wtedy, gdy znasz hasło roota i jest to dobra opcja, jeśli twoje konto nie ma uprawnień do korzystania sudo.

Użytkownik root może robić wszystko w systemie, prawie bez wyjątków. Więc nawet jeśli poprosisz o coś przez przypadek, zostanie to wykonane z niewielkim ostrzeżeniem lub bez ostrzeżenia, nawet jeśli jest to szkodliwe dla zdrowia twojego systemu. Dlatego dobrą praktyką jest wykonywanie większości czynności jako zwykły użytkownik i używanie roota tylko w razie potrzeby, na przykład podczas instalowania programu.

Nie musisz używać roota, aby pozbyć się błędu segmentacji. Jeśli root jest jedyną rzeczą, która naprawia segfault, to program ma błąd. Programy nie powinny zawieść w ten sposób tylko dlatego, że nie mają rootowania.


Wystąpił tego rodzaju błąd i zwykle dotyczy to uprawnień do plików. Używanie rootjest jak wzięcie młota do złamania orzecha ziemnego. Lepiej zidentyfikuj plik i zdecyduj, czy zmienisz własność lub pozwolenie zgodnie z potrzebami. Na przykład mam admingrupę plików, których inni nie powinni aktualizować ani uzyskiwać dostępu.
będzie

5

Oprócz poprzedniej odpowiedzi, która mówi o sudo i gksudo, tak, zdecydowanie złą praktyką jest uruchamianie programu jako root, chyba że jest to administracyjny.

Spróbuj znaleźć przyczynę awarii programów. Jeśli potrzebujesz, poproś o pomoc innych.


2

Możesz także przejść do /usr/share/applicationsUbuntu i edytować plik uruchamiania aplikacji, którą próbujesz uruchomić.
Tak jak podczas edycji pliku github atom, zwykle używam symboli wieloznacznych, aby znaleźć takie pliki

sudo nano atom*

Spowoduje to otwarcie atom.desktoppliku, znalezienie polecenia Exec i dodanie gksudo. Na przykład,

Przed

Exec=/usr/share/atom/atom %U  

Po

Exec=gksudo -k -u root /usr/share/atom/atom %U

Teraz, gdy aplikacja zostanie uruchomiona, poprosi o hasło roota.


cóż, nie widzę takiego pliku na serwerze Tomcat. Muszę codziennie uruchamiać aplikację GUI: „sudo ./manager-linux-x64.run” codziennie, co, jak wiem, nie jest dobrą rzeczą. Ale pkexec nie działa w tej aplikacji.
Prabesh bhattarai
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.