nachdem bei mir die Situation schon ein paar mal vorgekommen ist, möchte ich das hier posten:
Situation:
Ein PC ist neu geimaged. Nun werden Anpassungen vorgenommen und ein Image soll unter neuem Namen erstellt und auf den Server hochgeladen werden.
Ist-Ablauf:
Das Image wird ohne Fehlermeldung nur unvollständig auf dem Cache abgelegt und selbiges auf den Server hochgeladen. Ein Wiederherstellen eines PCs ist damit nicht möglich.
Ursache (vermutet):
Der Cache ist durch den alten Imagename bereits so sehr belegt, dass das zusätzliche, neue Image nicht mehr vollständig im Cache gespeichert werden kann.
Gewünschter Ablauf:
a) Es sollte eine Fehlermeldung erscheinen, dass das neue Image nicht vollständig im Cache gespeichert werden kann. Der Vorgang wird ggf. abgebrochen.
b) Es sollte gefragt werden, ob das vorherige Image gelöscht werden soll, um danach das neue Image vollständig speichern zu können.
Bisherige Lösung:
Am PC in Linbo mittels linbo_wrapper format:2 den Cache zuerst löschen und dann das Image neu erstellen lassen.
Ist das bei anderen reproduzierbar und damit ein Bug?
hi mcteefax,
ich hatte folgendes verhalten, was deine vermutung erhärtet:
download des images nicht möglich (rechner war evlt. vorher in anderer hw-gruppe oder image wurde umbenannt, so dass altes image im cache vorhanden ist). jedoch keine erhellende fehlermeldung beim abbruch.
macht man die partitionstabelle platt und partitioniert neu, ging wieder alles. holger hatte mir einen tipp mit dem cache gegeben… wenn man das nicht weiß, wird man verrückt, v.a. wenn das ganze auf einem rechner passiert, der als master-pc dienen soll!
wenn es ein generelles Problem ist, weshalb ist es dann kein Bug?
Die Personen, die sich bei uns nur um die Clients pflegen haben es schwer herauszufinden, ob das Erstellen des Images erfolgreich/vollständig verlief oder nicht. Außerdem ist die Anzeige der Cachebelegung auch nicht wirklich verwertbar.
Was sind die Gründe, weshalb keine Fehlermeldung erzeugt wird?
meine Ansicht: Wer ein Image erstellt und hochlädt der sollte wissen, welche Kapazität vorhanden ist. Ein ähnliches Problem ergibt sich, wenn Du /var/ voll hast. Da muss man Hand anlegen und Platz schaffen.
Wegen der Gründe dass keine Fehlermeldung generiert wird musst Du die Entwickler fragen. Hier kann ich nur vermuten, dass man gar nicht weiß wie groß das Image werden wird.
tatsächlich sind (sinnvolle) Fehlermeldungen wohl IMMER hilfreich.
Ich kann aber auch verstehen, warum einige das für ein eher exotisches Problem halten, denn beim Anlegen der Partitionierung hat man sich ja mal Gedanken gemacht - und da sollte eigentlich der Cache groß genug sein für alles, was passieren kann.
Wie immer gibt es Situationen, da kann es anders kommen:
durch irgendwas (kaputte Images) läuft die Cache-Partition voll
nimmt man eine Cachepartition ohne feste Größe und rollt auf eine neue Festplatte (SSD) aus, kann es sein, dass der Cache zu klein wird.
wenn eine Fehlermeldung generiert werden soll, dann muss man im Vorfeld abschätzen wie groß das Image werden wird. Das würde Zeit kosten. Außerdem: meine Meinung sollte der Personenkreis der Images erstellt ein gewisses Maß an Verständnis für das System haben. Man müsste - soll das mit der Cachgröße kein Problem werden - eine Festplatte verbauen die so groß wie irgend möglich ist. Das würde dann eine teure Angelegenheit werden.
ich denke nicht, dass irgendeine Abschätzung nötig ist.
Wenn ein Image erstellt wird und die Erstellung bricht ab - dann kann man diesen Fehler doch abfangen. Ich vermute sogar, dass ohnehin ein Fehlercode ausgegeben wird. Muss einfach nur abgefangen und ins Log geschrieben werden. Das macht Linbo bei vielen anderen Dingen ja auch.
Und was die Größe angeht: mehr als die aufsummierten Partitionsgrößen macht ja wenig Sinn. Insofern kann man als grobe Abschätzung ja immer sagen: Summe der Image-Partitionen = Cachegröße (und 2x Größe der Image-Partitionen + sonstige Partitionen = Festplattengröße). Wählt man den Cache kleiner, wird es halt in steigendem Maße gewagt, weil man nie sicher sein kann, wie „gut“ komprimiert wird.
Aber sinnvolle Fehlermeldungen im Fehlerfall zu produzieren - das halte ich unabhängig von der Problematik für „best practise“ beim Programmieren.
vor wenigen Jahren waren SSDs noch richtig teuer, weshalb man an Größe gespart hat (256GB). Jetzt unter Windows 10 und zugehöriger Software bekommt man halt Platzprobleme. Deshalb 50 neue SSDs zu kaufen ist auch nicht die Lösung.
Üblicherweise erzeugt doch ein OS automatisch eine Fehlermeldung, wenn mehr Daten geschrieben werden sollen, als Platz vorhanden ist. Eine vorherige Größenabschätzung wäre ja nicht mal unbedingt erforderlich, wenn auch schön (zeitsparend).
Aber ihr könnt euch sicher vorstellen, dass man zunächst eine ganze Weile sucht, bis man die Ursache für das Problem findet. Wenn es nämlich nur ein paar Kilo- oder Megabytes fehlen, sieht man den Fehler auch nicht an der Dateigröße des Images.
Jedenfalls würde ich mich freuen, wenn am Ende des Prozesses wenigstens stehen würde „… exit with status 1“.
da reden wir von zwei verschiedenen Dingen. Ich bin davon ausgegangen dass vorher festgestellt werden soll ob das Image in den Cache passt. Gegen eine Fehlermeldung wenn das „Kind“ in den Brunnen gefallen ist ist nichts einzuwenden. Inwieweit die Entwickler die Notwendigkeit sehen weiß ich nicht mehr. Ich hatte dazu mal ein Ticket geschrieben. Umgesetzt wurde der Vorschlag nicht.
Ich meine der wurde so längst umgesetzt. Ich bin mir ziemlich sicher, dass im Linbo-Fenster eine Meldung aufläuft, wenn die Erstellung abbricht. Bitte nochmal genau schauen.
Genau das wird doch da angezeigt. Also Erstellung erfolgreich, oder nicht!
Klar, könnte das viel deutlicher erfolgen, aber das lässt sich wohl kaum mit dem jetzigen Design von der Linbo-GUI ermöglichen. Aber das ist ja eine ganz andere Baustelle.
ich ab das nochmals nachvollzogen:
Wenn man den Button „Image erstellen + Hochladen“ verwendet bemerkt man die Fehlermeldung nicht mehr, weil sie praktisch sofort nach oben wegscrollt.
Ist schon unschön.
Issue wurde geschlossen. Hier die Stellungnahme des Entwicklers:
„Ich fürchte, dies wird innerhalb der gui niemals behoben werden, da sie den Rückgabecode von mk_cloop offensichtlich ignoriert. Daher wird dies nur innerhalb von linbo-remote behoben.“
Der Grund dafür ist der alte Code der linbo-GUI, der von niemanden mehr durchblickt wird.
Momentan gibt es zwar Gedanken die GUI neu zu schreiben, dieses wird aber in absehbarer Zeit nichts werden. Es sei denn jemand aus der Community nimmt sich der Sache an.
In der neuen GUI wird in diesem Fall ein Fehler angezeigt und der Upload nicht gestartet.
EDIT: Eine direkte Funktion zum Löschen alter Images gibt es aber noch nicht.
Hi Thorsten,
Nein, gibt es noch nicht, feel free
Das wird aber vermutlich noch ne Weile dauern, dafü müssen noch ein paar andere Vorraussetzungen erfüllt werden.
VG, Dorian