Problemer med SU [LØST]
Nå jeg lave en su kommer følgende fejl:
bash: uname: command not found
bash: [: =: unary operator expected
bash: sed: command not found
bash: ls: command not found
bash: /dev/cgroup/cpu/user/6176/tasks: Ingen sådan fil eller filkatalog
bash: /dev/cgroup/cpu/user/6176/notify_on_release: Ingen sådan fil eller filkatalog
Det er antageligvis pga problemer med PATH for den var ikke sat. Det har jeg gjort i /root/.bashrc og su virker som sådan godt nok, men fejlen må skyldes at PATH endnu ikke er sat når scriptet kører.
Men hvilket script kommer fejlen fra, og hvor er det rette sted at sætte PATH?
Det er Linux Mint Debian Edition (LMDE).
LØST: SE #15
bash: uname: command not found
bash: [: =: unary operator expected
bash: sed: command not found
bash: ls: command not found
bash: /dev/cgroup/cpu/user/6176/tasks: Ingen sådan fil eller filkatalog
bash: /dev/cgroup/cpu/user/6176/notify_on_release: Ingen sådan fil eller filkatalog
Det er antageligvis pga problemer med PATH for den var ikke sat. Det har jeg gjort i /root/.bashrc og su virker som sådan godt nok, men fejlen må skyldes at PATH endnu ikke er sat når scriptet kører.
Men hvilket script kommer fejlen fra, og hvor er det rette sted at sætte PATH?
Det er Linux Mint Debian Edition (LMDE).
LØST: SE #15
Kommentarer18
Jeg kan ikke lige huske Path
su lader brugeren køre en administrativ token fra terminalen, men på LMDE, eller de andre Mint, kan den ikke uden videre starte programmer, som jeg mener at huske at den kan i fx PClos. Der kan man til gengæld ikke bruge sudo.
Brug i stedet gksu eller gksudo til det, fx gksu /usr/bin/x-terminal-emulator.
Hvorfor vil du bruge su?
For at arbejde som root i
Ja okay ;)Men hvorfor så
Men hvorfor så ikke gksu /usr/bin/x-terminal-emulator.
Du kan kopiere terminal ikonet fra menuen, enter det, og tilføje gksu foran stien, hvis du ikke gider skrive den hver gang. Hvis ikke stien findes i Egenskalber for Terminalen, så skriv den selv.
Edit:
Prøv at se her. Du kan gøre det samme med Nautilus m.v.. Der skal du istedet skrive: gksudo nautilus.
http://db.tt/I7It3a1u
Manden har et problem med at
marlar: Kan du tjekke indholdet af /etc/environment? Hos mig indeholder den én linje:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
/etc/profile
/etc/profile /etc/enviroment er de traditionelle steder at sætte path sammen med /etc/xshrc hvor xshrc erstattes af din foretrukne shell
bruger du su -C "script" mener jeg du som udgangspunkt bruger en root login prompt.
Prøv også tjække at PATH ikke unsættes i en af de lokale dot filer. en klassisk fejl 40 situation, feks. vil PATH=$HOME/bin fjerne resten af path så du kun kigger i $HOME/bin.
/usr/bin/grep -s "PATH" .*
kan finde nogle af de tilfælde.edit correction grep liger self i /bin og ikke /usr bin
Umidbart er jeg tilbøgelig til at sette en halv øl på at problemet er at der i en dotfil eller selve scriptet er tilføjet et dir til path uden at den "gamle" $PATH er inkluderet i den nye PATH, i.e. en klassisk fejl 40.
Manden har et problem
Nej det er noget sludder, for su er ikke sat op til at bruges på Mint. Istedet bruges sudo, gksu osv.
Af samme grund vil su ikke finde de nødvendige protokoller. Jeg vil også stille spørgsmål ved foremålet ved at mingle med path. Naturligvis er det Marlars egen sag, men jeg kan ikke se begrundelsen.
Man kan sagtens logge på med su fra en terminal, men på Mint er det nu engang gksu der er den rigtige commando.
For de lidt langsomt opfattende bjerrk, for tredje gang. gksu /usr/bin/x-terminal-emulator er alt hvad der kræves for at arbejde i terminal som root !!!
INGEN GRUND TIL AT RODE MED PATH ...
frogmaster: "Sludder" er
Jeg forstår ikke helt din trang til at bestemme hvordan andre skal benytte deres systemer. Det er fint at du præsenterer alternativer, men lad os nu fokusere på Marlars forespørgsel. Du må i øvrigt meget gerne lade være med at ty til fornærmelser - er det virkelig nødvendigt?
Dette er mint 11, Ikke
administrator@mint-11 ~ $ su
Adgangskode:
mint-11 administrator # gedit
(gedit:29288): EggSMClient-WARNING **: Failed to connect to the session manager: None of the authentication protocols specified are supported
**
GLib-GIO:ERROR:/build/buildd/glib2.0-2.28.6/./gio/gdbusconnection.c:2279:initable_init: assertion failed: (connection->initialization_error == NULL)
Afbrudt (SIGABRT)
mint-11 administrator #
Jeg forstår ikke helt
Beklager hvis jeg har fornærmet dig. Men du insinuerer. Hvad får dig til at tro at jeg vil bestemme noget som helst?
Det handler bare om at give den rigtige information. Meningen var kun at oplyse om de korrekte commands, intet andet
Marlar vil forståeligt arbejde i terminalen som root:
For at arbejde som root i terminalen i visse tilfælde.
PATH er ikke det centrale emne ...
Jeg skriver dette fra min
- gksu er til at køre gui programmer som root, det er ikke det jeg vil. Jeg vil lave hardcore terminalarbejde :-)
- su virker som udgangspunkt helt fint i LMDE men den er "gået i stykker"
- jeg kan sagtens starte en root terminal, der er allerede en genvej til dette. Men su passer ind som en handy middelvej mellem en root terminal og sudo hvis man skal køre nogle få sammenhængende programmer som root.
- endelig generer det mig at skidtet ikke virker og jeg bliver ikke spor klogere på linux ved bare at slå mig til tåls med en root terminal: -)
Men alle forslag er velkomne, også frømesters alternative løsninger!
PS. #9: i dette tilfælde er PATH nu nok det centrale idet det er årsagen til at su brokker sig.
I Mint er den standard.Du
Det er ikke en fejl i Mint eller PATH at su ikke kan starte programmer.
Du vil være nødt til at skrive den fulde sti til terminalens script, enten fra en oprettet genvej, fra en kopi af Mint-menuens terminal genvej, eller en kopi af terminal genvejen fra /usr/share/applications.
Du skal bruge gksu på grund af tilladelserne til at køre terminal som root (og alle andre terminal programmer som root), der startes fra Desktop Enviroment, (der er andre som eksempelvis su-to-root -X -c /usr/bin/etherape).
... bortset fra hvis du starter en root-terminal eller terminal programmer som root fra en bruger-terminal:
sudo x-terminal-emulator eller gksu x-terminal-emulator (PATH burde virke her).
Både gksu og sudo virker fra terminalen, men det er kun gksu der virker hvis du starter en root-terminal fra en genvej (DE).
Humlen er, at du ikke behøver at rette i PATH, kun at oprette en genvej med den fulde sti til terminal scriptet i /usr/bin/.
Jeg skal da lige nævne, at jeg blev træt af LMDE, og har derfor skrottet den for nu. Stierne er fra Mint 11, og måske ikke identiske med LMDE, men alt det her har jeg gentaget i LMDE.
Lidt offtopic men
Lidt offtopic men hvorfor blev du træt af LMDE? Jeg har selv været ved at skrotte den flere gange fordi der var for mange breakages men giver pt opdateringspakkerne en chance.
Ved du om Mint 11 kan opgraderes til 12 når den tid kommer, eller skal man forfra med reinstallation? Det er nemlig derfor jeg bruger en rullende distro, ikke fordi jeg nødvendigvis har brug for de nyeste pakker hele tiden.
Lidt offtopic men
Samme årsag som dig sikkert, men jeg har downloadet den nyeste ISO for et par dage siden. Den siges at være bedre ...
#12: Ved du om Mint 11 kan opgraderes til 12 når den tid kommer, eller skal man forfra med reinstallation?
Det har jeg prøvet fra Mint 10 til 11. det gik helt i kage. Til gengæld gik det fint med Ubuntu 10 til 11.
Jeg ved at Mint anbefaler at lade være.
PClos, der jo også er en rolling kører bare derudaf, men den er betydeligt langsommere end LMDE, og der er rimeligt store forskelle i terminal kommandoerne.
problem med su
hvad med
sudo su
marlar: Kan du tjekke
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
Bingo! Det var den der var synderen. Jeg indsatte nævnte linje og nu funker su perfekt!
#14: hvad med sudo su
Det var ikke tilladelsen til at køre su den var gal med, det var path problemer efter login.
Angående su, sudo, gksu og gksudo:
su starter en ny subshell som root.
sudo kører en enkelt kommando som root
gksu og gksudo bruges til at starte grafiske programmer som root selv om sudo også kan anvendes fra terminalen, omend med problemer i visse tilfælde. Der er i Debian-baserede systemer ingen forskel på gksu og gksudo, gksudo symlinker til gksu.
Bingo! Det var den der
Jo jo, men det er jo ikke pointen ;)
su fungerer for såvidt, du vil stadig være nødt til at skrive sudo hvis du vil starte et program.
bruger@mint-11 ~ $ su
Adgangskode:
mint-11 bruger # sudo gedit
eller sudo nautilus
Skriver du stien til terminalen får du en fuld root terminal. Men ok stort nummer for meget lidt ...
Jo jo, men det er jo
Jamen for mig var det lige netop pointen!
su fungerer for såvidt, du vil stadig være nødt til at skrive sudo hvis du vil starte et program
Men det vil jeg jo heller ikke. Som jeg skrev, så var det til ren terminalarbejde, altså til systemkommandoer. Et af problemerne er at jeg har en del aliaser og de virker ikke med sudo. Det gør de derimod hvis jeg arbejde i root subshell via su.
Vi har vist talt forbi hinanden :)
Vi har vist talt forbi
Ja det har vi da ;)
gksu /usr/bin/x-terminal-emulator giver fuld kontrol over hele maskinen uden at bruge sudo m.v.
.