[ERLEDIGT] Upgrade im einem Schritt ausführen

Alles rund um sicherheitsrelevante Fragen und Probleme.
Antworten
Richard
Beiträge: 639
Registriert: 11.10.2012 14:18:37
Lizenz eigener Beiträge: GNU General Public License

[ERLEDIGT] Upgrade im einem Schritt ausführen

Beitrag von Richard » 24.09.2019 15:29:49

Hi,

ich habe auf dem Pi in die .bashrc diese Zeile drin
sudo apt update && sudo apt dist-upgrade -y && sudo apt autoremove && sudo apt clean
Führe ich 'upgrade' aus wird diese Zeile ausgeführt. Es kommt aber vor, dass wenn einer der Schritte lange dauert, meist dist-upgrade, das Passwort bis zu den letzten beiden schritten vergessen wurde. Ich müsste es dann neu eingeben. Sinn und Zweck ist ja aber, dass das alles einem einem rutsch durch läuft.

Was würde denn passieren, wenn ich das in ein script stecke und das script mit sudo starte? Wird das Passwort dann auch nach x Minuten vergessen? Das script in visudo einzufügen ist denke ich keine gute Idee, denn dann könnte ja jeder was er will in das script eintragen und so root-rechte bekommen.

Ziel ist es das upgrade komplett durchlaufen zu lassen mit nur einmal das Passwort eingeben zu müssen, gleich zu Beginn.
Zuletzt geändert von Richard am 25.09.2019 16:05:55, insgesamt 1-mal geändert.

Benutzeravatar
hikaru
Moderator
Beiträge: 13585
Registriert: 09.04.2008 12:48:59

Re: Upgrade im einem Schritt ausführen

Beitrag von hikaru » 24.09.2019 15:52:48

Richard hat geschrieben: ↑ zum Beitrag ↑
24.09.2019 15:29:49
Was würde denn passieren, wenn ich das in ein script stecke und das script mit sudo starte? Wird das Passwort dann auch nach x Minuten vergessen?
Ja, aber das wäre kein Problem.
Dein Problem ist, dass du dir insgesamt viermal eine Shell mit root-Rechten über sudo beschaffst, aber nur einmal das Passwort. Wenn vor dem Start des letzten sudo-Aufrufs mehr als x* Minuten vergangen sind, ist deine ursprüngliche Passworteingabe nicht mehr gültig.

Steckst du hingegen alles ohne sudo in ein Script und rufst dann nur dieses Script mit sudo auf, dann läuft das gesamte Script in einer einzigen Shell mit root-Rechten und es spielt keine Rolle, wie lange es dauert.
Alternativ zu einem Script in Form einer Textdatei könntest du mit sudo auch gezielt eine Shell-Session starten und innerhalb dieser die eigentlichen Befehle absetzen:

Code: Alles auswählen

sudo sh -c 'apt update && apt dist-upgrade -y && apt autoremove && apt clean'

*) Ich meine mich zu erinnern, dass x=15 sei.

Richard
Beiträge: 639
Registriert: 11.10.2012 14:18:37
Lizenz eigener Beiträge: GNU General Public License

Re: Upgrade im einem Schritt ausführen

Beitrag von Richard » 24.09.2019 17:23:59

Ich will das ja wieder über ein alias aufrufen und wenn ich das script als alias in die .bashrc schreiben und dann mit sudo ausführen wird das alias nicht gefunden. Ich vermute weil es die alias vom user und nicht von root sind.

Benutzeravatar
TRex
Moderator
Beiträge: 8071
Registriert: 23.11.2006 12:23:54
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: KA

Re: Upgrade im einem Schritt ausführen

Beitrag von TRex » 24.09.2019 19:14:23

Dann definiere den alias doch so wie von hikaru beschrieben in deiner .bashrc.
Jesus saves. Buddha does incremental backups.
Windows ist doof, Linux funktioniert nichtDon't break debian!Wie man widerspricht

Richard
Beiträge: 639
Registriert: 11.10.2012 14:18:37
Lizenz eigener Beiträge: GNU General Public License

Re: Upgrade im einem Schritt ausführen

Beitrag von Richard » 25.09.2019 16:05:39

Ja, so gehts. Hatte ich nicht ganz verstanden. Danke.

Benutzeravatar
hikaru
Moderator
Beiträge: 13585
Registriert: 09.04.2008 12:48:59

Re: [ERLEDIGT] Upgrade im einem Schritt ausführen

Beitrag von hikaru » 25.09.2019 16:22:10

Es sei noch angemerkt, dass ich die Lösung konzeptuell hässlich finde, denn sie verlangt, dass der User ein im Grunde beliebiges Shell-Script per sudo als root ausführen kann.
Falls jemand deine .bashrc in die Finger kriegt (indem er z.B. aus deinem Browser ausbricht), könnte er den Alias beliebig abändern und so beliebige Befehle als root ausführen.

Andererseits ist das eher eine akademische Betrachtung, denn auf einem Desktop-System ist root eher der uninteressantere Account. Alle wertvollen Daten gehören normalerweise dem (meist einzigen) Nutzer, und wer es schafft diesen Account zu übernehmen, der hat schon das größtmögliche Schädigungspotenzial erreicht.

Antworten