Server-Update via SSH
Server-Update via SSH
Hallo,
ich habe ein kleines Problem. Ich bin in der Linux-Welt noch vollkommen neu und unerfahren und habe nun die Aufgabe, mehrere Debian-Workstations an unterschiedlichen Standorten mittels Remote-Upgrade zu aktualisieren. Dies soll nicht grafisch, sondern über Kommandozeile ablaufen. Am besten wäre es natürlich, ein Skript dazu zu schreiben.
Kann mir jemand helfen, wie dies am besten anzugehen ist? Wie gesagt, bin in dem Feld recht unerfahren.
Schon im Vorraus vielen Dank!
ich habe ein kleines Problem. Ich bin in der Linux-Welt noch vollkommen neu und unerfahren und habe nun die Aufgabe, mehrere Debian-Workstations an unterschiedlichen Standorten mittels Remote-Upgrade zu aktualisieren. Dies soll nicht grafisch, sondern über Kommandozeile ablaufen. Am besten wäre es natürlich, ein Skript dazu zu schreiben.
Kann mir jemand helfen, wie dies am besten anzugehen ist? Wie gesagt, bin in dem Feld recht unerfahren.
Schon im Vorraus vielen Dank!
Re: Server-Update via SSH
Mein Weg wäre: Login über ssh, screen starten und darin das Update machen.
Die Beschreibung von clusterssh hört sich so an als ob das evtl was für Dich sei.
Die Beschreibung von clusterssh hört sich so an als ob das evtl was für Dich sei.
- feltel
- Webmaster
- Beiträge: 10458
- Registriert: 20.12.2001 13:08:23
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Leipzig, Germany
-
Kontaktdaten:
Re: Server-Update via SSH
apt-dater wäre auch ein nützliches Hilfsmittel.
debianforum.de unterstützen? Hier! | debianforum.de Verhaltensregeln | Bitte keine Supportanfragen per PM
Re: Server-Update via SSH
Code: Alles auswählen
ssh .... maschine
su -
(/etc/apt/souces.list /etc/apt/sources.d/*.list kontrollieren)
[aptitude|apt-get] update
[aptitude|apt-get] upgrade
Eventuell einen Paket-Proxy wie apt-cacher-ng.
Eventuell eine zentrale Administrationslösung wie cfengine.
http://packages.debian.org/search?keywords=cfengine
oder ala clusterssh auch parallel ssh:
http://www.linux-magazin.de/Heft-Abo/Au ... a-so-viele
weitere:
Code: Alles auswählen
$ apt-cache search ssh | grep cluster
clusterssh - administer multiple ssh or rsh shells simultaneously
kanif - cluster management and administration swiss army knife
$ apt-cache search ssh | grep parallel
dish - the diligence/distributed shell for parallel sysadmin
taktuk - efficient, large scale, parallel remote execution of commands
So einen Arbeitgeber wünscht/verflucht mensch doch?Ich bin in der Linux-Welt noch vollkommen neu und unerfahren und habe nun die Aufgabe, mehrere Debian-Workstations an unterschiedlichen Standorten mittels Remote-Upgrade zu aktualisieren.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
Re: Server-Update via SSH
Danke für die zahlreichen Antworten!
Soweit erscheint es mir auch logisch, mit ClusterSSH oder ähnlichem auf alle Maschinen quasi parallel zuzugreifen. Bei mir als Anfänger hadert es jedoch noch bei der Umsetzung. Kann mir jemand dabei weiterhelfen? Und muss ich die Updates dann zuerst auf die einzelnen Server übertragen oder braucht man das dann nicht?
Über Hilfe würde ich mich sehr freuen!
Viele Grüße
Chris
Soweit erscheint es mir auch logisch, mit ClusterSSH oder ähnlichem auf alle Maschinen quasi parallel zuzugreifen. Bei mir als Anfänger hadert es jedoch noch bei der Umsetzung. Kann mir jemand dabei weiterhelfen? Und muss ich die Updates dann zuerst auf die einzelnen Server übertragen oder braucht man das dann nicht?
Über Hilfe würde ich mich sehr freuen!
Viele Grüße
Chris
- mistersixt
- Beiträge: 6601
- Registriert: 24.09.2003 14:33:25
- Lizenz eigener Beiträge: GNU Free Documentation License
Re: Server-Update via SSH
Du kannst Dich per clusterssh parallel auf mehreren Computern anmelden, und Befehle werden 1-zu-1 auf alle Maschinen identisch ausgeführt. Aber genau das würde ich eher nicht machen, denn wenn beispielsweise aptitude/apt-get auf manchen Rechnern während des dist-upgrades Rückfragen an Dich haben, andere Rechner jedoch durchlaufen, was machst Du dann?
Ich würde lieber ssh-Sessions zu jedem Rechner einzeln aufmachen und dann händisch, aber parallel, die Upgrades durchführen.
Gruss, mistersixt.
Ich würde lieber ssh-Sessions zu jedem Rechner einzeln aufmachen und dann händisch, aber parallel, die Upgrades durchführen.
Gruss, mistersixt.
--
System: Debian Bookworm, 6.11.x.-x-amd64, ext4, AMD Ryzen 7 3700X, 8 x 3.8 Ghz., Radeon RX 5700 XT, 32 GB Ram, XFCE
System: Debian Bookworm, 6.11.x.-x-amd64, ext4, AMD Ryzen 7 3700X, 8 x 3.8 Ghz., Radeon RX 5700 XT, 32 GB Ram, XFCE
Re: Server-Update via SSH
Ok, soweit verständlich.
Kannst du mir sagen, wie ich Upgrades auf die einzelnen Rechner übertragen kann? Die sind nicht mit dem Internet verbunden, sondern in einem privaten Netz
Kannst du mir sagen, wie ich Upgrades auf die einzelnen Rechner übertragen kann? Die sind nicht mit dem Internet verbunden, sondern in einem privaten Netz
- Lord_Carlos
- Beiträge: 5578
- Registriert: 30.04.2006 17:58:52
- Lizenz eigener Beiträge: GNU Free Documentation License
- Wohnort: Dänemark
Re: Server-Update via SSH
Uff, ich glaube das ist nicht so einfach.justolder hat geschrieben:Ok, soweit verständlich.
Kannst du mir sagen, wie ich Upgrades auf die einzelnen Rechner übertragen kann? Die sind nicht mit dem Internet verbunden, sondern in einem privaten Netz
Gibt es keine moeglichkeit die mit dem Internet zu verbinden?
Eine loesung waere es in dem Privaten Netzwerk einen eigenen Debian Archiv Mirror zu betreiben und den zwischendurch mal ans internet anzuschließen.
Code: Alles auswählen
╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!
Re: Server-Update via SSH
Leider nein, keine direkte Verbindung mit dem Internet möglich. Auch die Geschichte mit dem Mirror ist leider nicht erwünscht.Lord_Carlos hat geschrieben:Uff, ich glaube das ist nicht so einfach.justolder hat geschrieben:Ok, soweit verständlich.
Kannst du mir sagen, wie ich Upgrades auf die einzelnen Rechner übertragen kann? Die sind nicht mit dem Internet verbunden, sondern in einem privaten Netz
Gibt es keine moeglichkeit die mit dem Internet zu verbinden?
Eine loesung waere es in dem Privaten Netzwerk einen eigenen Debian Archiv Mirror zu betreiben und den zwischendurch mal ans internet anzuschließen.
Es sollte eine Möglichkeit sein, die Pakete direkt von einer Workstation aus auf die Server einzuspielen...
Re: Server-Update via SSH
Du klickst in das jeweilige window und kuemmerst dich darum?mistersixt hat geschrieben:Du kannst Dich per clusterssh parallel auf mehreren Computern anmelden, und Befehle werden 1-zu-1 auf alle Maschinen identisch ausgeführt. Aber genau das würde ich eher nicht machen, denn wenn beispielsweise aptitude/apt-get auf manchen Rechnern während des dist-upgrades Rückfragen an Dich haben, andere Rechner jedoch durchlaufen, was machst Du dann?
http://sunoano.name/ws/public_xhtml/ssh.html#clusterssh
Ich weiss schon was du meinst aber genau das macht clusterssh im Grunde fuer uns; die upgrades die nicht einfach durchlaufen kann man dann selektieren und dann damit arbeiten.Ich würde lieber ssh-Sessions zu jedem Rechner einzeln aufmachen und dann händisch, aber parallel, die Upgrades durchführen.
Im Grunde ist beides moeglich, mit clusterssh habe ich halt die Maschinen die durchlaufen alle gleich mal weg und musste nur einmal aptitude update && aptitude full-upgrade eingeben. Den Rest, sagen wir von 10 bleiben 3 haengen, macht man dann halt fertig indem man nur die windows selektiert.
Zuletzt geändert von suno am 17.03.2010 13:54:36, insgesamt 1-mal geändert.
Re: Server-Update via SSH
Und wie willst du dann remote auf die Maschine kommen?justolder hat geschrieben: Leider nein, keine direkte Verbindung mit dem Internet möglich.
/me entweder verwirrt oder total bereit neues-krasses-physik-zeug zu lernen
Re: Server-Update via SSH
Also die Workstations, über die auf die Server zugegriffen wird, haben Internetzugang.
Ich habe mir das dann so vorgestellt, dass ich die Pakete auf diese Workstations downloade und die dann an die Server mittels eines Skriptes verteile. Ist das nicht möglich?
Ich habe mir das dann so vorgestellt, dass ich die Pakete auf diese Workstations downloade und die dann an die Server mittels eines Skriptes verteile. Ist das nicht möglich?
- novalix
- Beiträge: 1909
- Registriert: 05.10.2005 12:32:57
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: elberfeld
Re: Server-Update via SSH
Hi,
bei der Infrastruktur, die Du beschreibst kann ich nur sagen: Doch, Ihr wollt einen Mirror.
1. Googlesuche nach "lokaler apt mirror"
2. mindestens die ersten beiden Einträge lesen
3. feststellen "Ja, wir wollen apt-mirror"
Groetjes, niels
bei der Infrastruktur, die Du beschreibst kann ich nur sagen: Doch, Ihr wollt einen Mirror.
1. Googlesuche nach "lokaler apt mirror"
2. mindestens die ersten beiden Einträge lesen
3. feststellen "Ja, wir wollen apt-mirror"
Groetjes, niels
Das Wem, Wieviel, Wann, Wozu und Wie zu bestimmen ist aber nicht jedermannns Sache und ist nicht leicht.
Darum ist das Richtige selten, lobenswert und schön.
Darum ist das Richtige selten, lobenswert und schön.
-
- Beiträge: 2186
- Registriert: 18.09.2005 15:52:02
- Lizenz eigener Beiträge: GNU Free Documentation License
-
Kontaktdaten:
Re: Server-Update via SSH
Nicht so bescheiden... eigentlich würdest du doch lieber hinfahren! :-Pmistersixt hat geschrieben:Ich würde lieber ssh-Sessions zu jedem Rechner einzeln aufmachen und dann händisch, aber parallel, die Upgrades durchführen.
jhr
*SCNR*
/me shuts up
Desktop: Intel Core2Quad Q8300 2.5GHz, 256GB SSD + 1 TB HDD, 8 GB RAM, Debian Sid, Kernel 3.13
- mistersixt
- Beiträge: 6601
- Registriert: 24.09.2003 14:33:25
- Lizenz eigener Beiträge: GNU Free Documentation License
Re: Server-Update via SSH
Wenn die Rechner auf den Bahamas, in Australien und den Cayman Islands stünden.... yupp !!!jhr-online hat geschrieben:Nicht so bescheiden... eigentlich würdest du doch lieber hinfahren!mistersixt hat geschrieben:Ich würde lieber ssh-Sessions zu jedem Rechner einzeln aufmachen und dann händisch, aber parallel, die Upgrades durchführen.
--
System: Debian Bookworm, 6.11.x.-x-amd64, ext4, AMD Ryzen 7 3700X, 8 x 3.8 Ghz., Radeon RX 5700 XT, 32 GB Ram, XFCE
System: Debian Bookworm, 6.11.x.-x-amd64, ext4, AMD Ryzen 7 3700X, 8 x 3.8 Ghz., Radeon RX 5700 XT, 32 GB Ram, XFCE
Re: Server-Update via SSH
Hi,
also ich hab das jetzt nochmal final mit den Verantwortlichen abgeklärt.
Die Update-Pakete sollen auf Windows-Workstations heruntergeladen werden, um danach per sftp auf die Server verschoben werden. Dort soll dann das Update manuell angestossen werden.
Ist dies praktisch umsetzbar?
also ich hab das jetzt nochmal final mit den Verantwortlichen abgeklärt.
Die Update-Pakete sollen auf Windows-Workstations heruntergeladen werden, um danach per sftp auf die Server verschoben werden. Dort soll dann das Update manuell angestossen werden.
Ist dies praktisch umsetzbar?
Re: Server-Update via SSH
Mir ist kein tool bekannt, dem du eine Paketliste mit Versionen vorwirfst und welche dir dann die aktuellen Pakete inkl. Downloadlink ausspuckt. Du musst also ein wenig mehr Arbeit investieren.justolder hat geschrieben:Ist dies praktisch umsetzbar?
Ich gehe davon aus, dass es etch Maschinen sind und du sollst diese auf lenny bringen richtig?
Die Maschinen sind alle _exakt gleich_, richtig?
Dann wäre mein Vorgehen wie folgt:
1.) Herausbekommen welche Pakete du für das Upgrade überhaupt benötigst.
2.) Diese Pakete herunterladen.
3.) Mit ein klein wenig Magie ein lokales Repository erzeugen
4.) Dieses repository per scp/sftp oder CD/DVD auf die Maschinen bringen
5.) Die Paket einspielen.
Um das zu bewerkstelligen, benötigst du eine Maschine, die exakt die gleichen Pakete in der gleichen Version installiert hat.
Mit dieser Maschine musst du das Upgrade erstmal testen. Alles andere ist unproffessionell.
ad1)
Schliess die Maschine ans Internet an, ändere in der /etc/apt/sources.list alle Einträge mit etch in lenny um.
Der Dateiinhalt könnte dann so aussehen:
Code: Alles auswählen
deb http://ftp.de.debian.org/debian/ lenny main contrib non-free
# deb-src http://ftp.de.debian.org/debian/ lenny main contrib non-free
deb http://security.debian.org/ lenny/updates main contrib non-free
ad2) Jetzt installiere die ersten Upgrades
Code: Alles auswählen
aptitude install dpkg aptitude apt libc6
aptitude upgrade
Code: Alles auswählen
aptitude dist-upgrade
update-grub
Für den nächsten Schritt benötigst du das Paket dpkg-dev:
Code: Alles auswählen
aptitude install dpkg-dev
Sämtliche heruntergeladenen Pakete befinden sich nun unter /var/cache/apt/archives. Damit erzeugst du ein lokales Archiv:
Code: Alles auswählen
mkdir -p /home/repository/updates
cp /var/cache/apt/archives/*deb /home/repository/updates
cd /home/repository
dpkg-scanpackages updates /dev/null | gzip > updates/Packages.gz
Den Ordner /home/repository packst du jetzt auf eine CD oder kopierst ihn gepackt auf die zu aktualisierende Maschine.
ad5)
Jetzt wirds ernst: nun musst du die Maschine noch dafür vorbereiten das extra Archiv zu aktzeptieren.
Code: Alles auswählen
echo 'deb file:///home/repository/ updates/' > /etc/apt/sources.list.d/updates.list
echo 'APT::Get::AllowUnauthenticated "true";' > /etc/apt/apt.conf.d/01file
echo 'Aptitude::CmdLine::Ignore-Trust-Violations "true";' >> /etc/apt/apt.conf.d/01file
echo 'Cmdline::ignore-trust-violations "yes";' >> /etc/apt/apt.conf.d/01file
Code: Alles auswählen
aptitude update
aptitude install dpkg aptitude apt libc6
aptitude dist-upgrade -y
# Aufräumen:
rm /etc/apt/apt.conf.d/01file
rm /etc/apt/sources.list.d/updates.list
aptitude update
rm -fr /home/repository
Ich denke es ist von deinem Vorgesetzten eher ungeschickt einen 'Unwissenden' mit dem Thema zu betreuen. Die Server werden ja sicherlich wichtig sein.
Ich wünsche dir viel Erfolg dabei.
(bin heute nicht mehr online, bei Fragen werden dir sicherlich auch andere helfen können).
Re: Server-Update via SSH
Erstmal Danke für die gemachte Mühe! Ihr seid echt klasse!!!
Allerdings soll das Update nicht von etch auf lenny geschehen, die Kisten sind alle schon auf lenny.
Es geht dabei lediglich um die Security-Updates!
Allerdings soll das Update nicht von etch auf lenny geschehen, die Kisten sind alle schon auf lenny.
Es geht dabei lediglich um die Security-Updates!
- novalix
- Beiträge: 1909
- Registriert: 05.10.2005 12:32:57
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: elberfeld
Re: Server-Update via SSH
Kriege ich nach wie vor nicht in den Kopf, warum die Updates unbedingt über ne Windows Workstation verteilt werden müssen. Ein Adminrechner mit nem vernünftigen Betriebssystem (von mir aus Dualboot oder Virtualbox) wäre doch keine so schlechte Sache, wenn da mehrere Debianserver rumstehen.
Sei 's drum. Im Linux Magazin hat mal ein Leser ein Script gepostet[1], mit dem er per Sneaker-Net Debianrechner von Freunden updatet. Vielleicht ist das ja was für Dich.
Groetjes, niels
[1] http://www.linux-magazin.ch/Heft-Abo/Au ... tegory=352
Sei 's drum. Im Linux Magazin hat mal ein Leser ein Script gepostet[1], mit dem er per Sneaker-Net Debianrechner von Freunden updatet. Vielleicht ist das ja was für Dich.
Groetjes, niels
[1] http://www.linux-magazin.ch/Heft-Abo/Au ... tegory=352
Das Wem, Wieviel, Wann, Wozu und Wie zu bestimmen ist aber nicht jedermannns Sache und ist nicht leicht.
Darum ist das Richtige selten, lobenswert und schön.
Darum ist das Richtige selten, lobenswert und schön.
Re: Server-Update via SSH
Ich denke dann ist es einfacher direkt die Update DVD zu laden:
http://cdimage.debian.org/cdimage/relea ... 6/iso-dvd/
Das sollte die schmerzloseste Lösung sein. Mittels apt-cdrom add kannst du sie dem debian Rechner als Updatequelle bekanntgeben, ein aptitude upgrade leistet den Rest der Arbeit.
http://cdimage.debian.org/cdimage/relea ... 6/iso-dvd/
Das sollte die schmerzloseste Lösung sein. Mittels apt-cdrom add kannst du sie dem debian Rechner als Updatequelle bekanntgeben, ein aptitude upgrade leistet den Rest der Arbeit.
- novalix
- Beiträge: 1909
- Registriert: 05.10.2005 12:32:57
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: elberfeld
Re: Server-Update via SSH
Wenn die Server jeweils ein DVD-Laufwerk haben, geht das, wenn auch nur bei jeweiligen Release Updates.ThorstenS hat geschrieben:Ich denke dann ist es einfacher direkt die Update DVD zu laden:
Wenn es dem OP in seiner Firma gestattet ist, externe Datenträger einzusetzen, könnte er mit diesem Script zu Hause einen Mirror erstellen, die Pakete auf einen Stick ziehen und in der Firma von einer Windows Workstation aus die Pakete per sftp auf die Server ziehen. Wann immer ihm danach ist.
Groetjes, niels
Das Wem, Wieviel, Wann, Wozu und Wie zu bestimmen ist aber nicht jedermannns Sache und ist nicht leicht.
Darum ist das Richtige selten, lobenswert und schön.
Darum ist das Richtige selten, lobenswert und schön.
Re: Server-Update via SSH
da hast du recht, man würde nur bis zum aktuellen PointRelease kommen.
Mit dem von dir geposteten Script wäre er aktuell.
Mit dem von dir geposteten Script wäre er aktuell.