doas Fehler ?

Started by bevo, 2023/08/24, 16:39:02

Previous topic - Next topic

bevo

doas funktioniert nicht bei z.B. gparted oder update-grub

/etc/doas.config > permit keepenv nopass :$USER

bevo

edlin

Es funktioniert, wenn du den vollen Pfad angibst:
doas /usr/sbin/gparted

edlin
,,Ein kluger Mann macht nicht alle Fehler selber. Er lässt auch anderen eine Chance."

Winston Churchill

bevo

und bei update-grub ?

edlin

Den Pfad verrät dir:
doas which update-grub2

edlin
,,Ein kluger Mann macht nicht alle Fehler selber. Er lässt auch anderen eine Chance."

Winston Churchill

der_bud

Quote from: bevo on 2023/08/24, 16:39:02...

/etc/doas.config > permit keepenv nopass :$USER
...
Nur um sicherzugehen: Du hast bei Dir real aber schon statt ":$USER" Deinen echten Usernamen eingetragen?
Du lachst? Wieso lachst du? Das ist doch oft so, Leute lachen erst und dann sind sie tot.

bevo

@ der_bud   Jaa  ;)

fams

#6
So ganz ist mir das Verhalten von doas da nicht klar, oder es ist ein Bug.
Lt. Manpage werden einige Environmentvariablen wie PATH des Zielusers übernommen, default ist root und damit müssten auch die sbin-Verzeichnisse bekannt sein?
Der Parameter keepenv übernimmt lt. manpage nur zusätzliche Variablen des users.  Das scheint falsch zu sein.

edlin

Egal, ob Bug oder Feature, das Problem ist wohl nicht ganz neu:

https://www.linuxquestions.org/questions/linux-newbie-8/doas-setting-root%27s-path-sbin-for-admin-user-4175707100/

Habs noch nicht getestet, muss erst mal weg.

edlin
,,Ein kluger Mann macht nicht alle Fehler selber. Er lässt auch anderen eine Chance."

Winston Churchill

edlin

Viele Wege führen nach Rom, einen mal schnell ausprobiert.
Ich habe in der Datei ~/.profile des doas-Benutzers folgende Zeile angehangen:

PATH="/sbin:/usr/sbin:$PATH"

Neu angemeldet und
doas update-grub funktionierte ohne vollständigen Pfad.

Ich hoffe, damit ist das Wochenende gerettet. Andere Varianten hab ich nicht ausprobiert.

edlin
,,Ein kluger Mann macht nicht alle Fehler selber. Er lässt auch anderen eine Chance."

Winston Churchill

bevo

#9
Hmmm, leider finde ich die Datei ~/.profile nicht  :-\

Doch gefunden!

edlin

Wo hast du denn überall gesucht?
Bei mir spuckt es folgendes aus:
edlin@Devil:~$ ls ~/.profile
/home/edlin/.profile
edlin@Devil:~$

Sprich, die ,,versteckte" Datei liegt  im Homeverzeichnis des Benutzers.

edlin
,,Ein kluger Mann macht nicht alle Fehler selber. Er lässt auch anderen eine Chance."

Winston Churchill

bevo

#11
Es ist zum Mäuse melken!!
bevo@Farewell-future:~$ ls ~/.profile
ls: Zugriff auf '/home/bevo/.profile' nicht möglich: Datei oder Verzeichnis nicht gefunden


Dolphin und versteckte Dateien anzeigen.

Dolphin mit root Rechten findet die Datei!


if [ "$BASH" ]; then
  if [ -f ~/.bashrc ]; then
    . ~/.bashrc
  fi
fi

mesg n 2> /dev/null || true
PATH="/sbin:/usr/sbin:$PATH"


Aber update-grub funtioniert nicht.

In /etc/ ist auch eine Datei profile aber die hat root Berechtigung.

edlin

Hast du dich auch ab- und wieder angemeldet, damit das neue .profile wirksam wird?

Meine hat auch etwas mehr Profil:

# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022

# if running bash
if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
        . "$HOME/.bashrc"
    fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/.local/bin" ] ; then
    PATH="$HOME/.local/bin:$PATH"
fi
PATH="/sbin:/usr/sbin:$PATH"


edlin
,,Ein kluger Mann macht nicht alle Fehler selber. Er lässt auch anderen eine Chance."

Winston Churchill

edlin

#13
Was du mit Dolphin als root angezeigt bekommen hast, ist die .profile vom root und nicht vom Nutzer.

edlin

Du kannst ja spaßeshalber mal meine .profile in deinem Home-Verzeichnis anlegen und testen. Kann man ja wieder löschen wenns nix bringt.

edlin
,,Ein kluger Mann macht nicht alle Fehler selber. Er lässt auch anderen eine Chance."

Winston Churchill

bevo

Zuerst mal vielen Dank für Deine Hilfe !!!

Ja, neu angemeldet habe ich mich.

Die profile mit Dolphin als root hat aber bevo Berechtigung.

BINGO  :)

Ich habe eine neue .profile in meinem home angelegt und dein profile kopiert.

Danke

bevo