www.archive-net-2013.com » NET » M » MADDES

Choose link from "Titles, links and description words view":

Or switch to "Titles and links view".

    Archived pages: 45 . Archive date: 2013-06.

  • Title: Maddes Seine Homepage - Maddes.net
    Descriptive info: .. Tach auch!.. Dies ist die - derzeit stark unterentwickelte - Homepage von Matthias Maddes Bücher.. *.. Sie dient als Kontaktpunkt für Freunde und Bekannte, und jene die es werden wollen.. Es gibt hier keine Gimicks oder verspieltes Design, nur Erfahrungen zu einigen meiner Hobbies.. Diese Seiten können auch über einen.. HTTPS-Zugriff.. angezeigt werden.. Falls Euer Browser die ausstellende Firma nicht kennt, dann einfach.. das Class 1 Zertifikat von CaCert einspielen.. (PEM-Format sollte mit allen Browsern funktionieren).. Wer mir verschlüsselte Daten schicken will, bekommt hier meinen.. Public Key.. (PGP 5, Fingerprint D661 89DD 9068 FA92 18CA FB58 5175 D3FB DC19 75B5).. Beim Testen hilft eine mit meinem Public Key zu entschlüsselnde.. Test-Datei.. Mehr zu Verschlüsselung bei.. GnuPG.. org.. ,.. GPGshell.. und der.. c't Krypto-Kampagne.. Empfehlenswert ist auch das Plug-In.. EnigMail.. für.. Mozilla.. 's Browser Suite bzw.. eMail-Client Thunderbird.. Und das findet Ihr auf dieser Seite:.. Flipper / Pinball: Indiana Jones - The Pinball Adventure.. Alles was ich zum Thema Flipper weiss und erlebt habe, inkl.. Kauf, Transport, Reinigen und Spielen.. Flipper / Pinball: Debugging with PinMAME.. M6809PM.. MC6809-MC6809E Microprocessor Programming Manual.. Scripts.. Ein paar kleine Windows Scripts, die einem manch lästige Aufgabe abnehmen oder erleichtern.. DVD-Liste.. Eine Liste meiner DVD-Sammlung,  ...   in das Router Linux.. AVM Fritz!Box.. Informationen und Modifikationen für AVM Fritzboxen, insbesondere Modell 7390.. Subversion / CVS.. Versionskontrolle und wie man Subversion und CVS bequem mit SSH verknüpft.. Futurama.. Episodenführer für USA und Deutschland bis zur 2.. Staffel, sowie VCD-Cover inkl.. Tips wie man solche leicht selber erstellt.. Playstation 3.. Infos, Tipps Tricks zur Playstation 3.. Sowie eine Liste meiner Spiele zur Referenz für Freunde.. Werkzeuge.. Liste meiner Werkzeuge zur Referenz für Freunde.. Sonstiges.. Alles Mögliche was ich mal benötigte oder interessant fand.. Kontakt.. Und zwar zu mir.. Für Eure Fragen, Anregungen oder wenn Ihr einfach nur mal Hallo sagen wollt.. Ausserdem führe ich noch folgende Seiten, welche sich jeweils mit einem bestimmten Thema beschäftigen:.. Quake Info Pool.. Alles um den ersten echten 3D-Egoshooter von.. id Software.. Inoffizielle Windows 95/98 Updates Homepage.. Mein Versuch etwas Licht in das Dunkel von Microsofts Updates für Windows 95/98 zu bringen, besonders in Bezug auf Sicherheit im Internet.. Nun noch ein paar Verweise auf die Homepages einiger Freunde:.. Union der Helden.. Online Fotocomic mit deutschen Superhelden.. jawstyle.. de.. Judith's Alternative Wear Style.. Klamotten für Dich, aber nicht für jedermann.. Christoph Bach.. Joachim Rudolph.. Michael Speelmanns.. Neuroticfish.. Deutsches Industrial-Synthpop-Projekt.. Keine Keller-Musik, sondern echt gute Mucke..

    Original link path: /
    Open archive

  • Title: Menu - Maddes.net
    Descriptive info: Menu.. Start.. Flipper/Pinball.. My IJ.. Debugging with PinMAME.. Software.. Freeware.. OpenSSH.. DD-WRT / OpenWRT.. Hardware.. Gesellschafts- spiele.. Laserarena..

    Original link path: /menu.htm
    Open archive

  • Title: Startseite - Maddes.net
    Descriptive info: Top..

    Original link path: /welcome.htm
    Open archive

  • Title: Flipper / Pinball - Maddes.net
    Descriptive info: Flipper / Pinball.. For international visitors:.. due to visitor's request some of the paragraphs have been translated to english.. Letzte Aktualisierung / Last update:.. 2004-09-22.. Specials:.. Interview with Brian Eddy, January 2004.. DOHO - Solving a pinball mystery.. How To Examine Or Debug A WPC ROM.. Index.. Vorwort.. Vor dem Kauf.. Flipper-Emulatoren.. Kauf.. Transport, Abbau, Aufbau.. Flipper-Beine und -Füsse.. Werkzeug.. Schrauben, Muttern Co.. Handbuch.. ROMs.. Lampen.. Reinigung.. Beschaffung aus den USA oder anderswo.. Reisen und Kaufen in den USA / Pinball Expo.. Indiana Jones - The Pinball Adventure.. Indiana Jones - ROMs.. Indiana Jones - Sound Map.. Indiana Jones - Einstellungen.. Indiana Jones - High Scores.. Indiana Jones - Modifikationen.. Flipper-Händler.. Links.. Foreword.. Before the purchase.. Pinball emulators.. Buying.. Transport, Disassembly, Assembly.. Pinball legs and levelers.. Tools.. Screws, Nuts Co.. Manual.. Lamps.. Cleaning.. Purchasing from the USA or elsewhere (from Germany).. Travel und buy in the USA / Pinball Expo.. IJ:TPA (in general).. IJ - ROMs.. IJ - Sound Map.. IJ - Settings.. IJ - High Scores.. IJ - Modifications.. Pinball dealers.. Da ich seit August 2002 stolzer Besitzer eines Indiana Jones - The Pinball Adventure bin, und man bei der Anschaffung eines Flippers so einiges erleben kann, schreibe ich hier meine Erfahrungen über dieses Erlebnis auf, damit andere es besser machen oder schneller zum Ziel gelangen.. Die Tips und Anregungen basieren teilweise auf Informationen von verschiedenen internationalen Webseiten, sowie auf meinen eigenen Erfahrungen.. Ausprobieren geschieht immer auf eigene Gefahr.. Danken möchte ich Volker Wix, Eckart Wackerbarth und auch Malte, da diese geduldig meine Flipper-Fragen beantwortet und bei vielen Sachen geholfen haben.. Ausserdem Danke an Ralf Hesse für seine selbstlose schnelle Hilfe als ich Anfänger-Probleme mit meinen Flipper-Fingern hatte.. Nicht zu vergessen Michael Voß, der mir mal ebend eine neue Idol-Lock-Tür für meinen IJ aus einem Karton hervorzauberte, als meine gebrochen war.. Und natürlich auch den vielen Kontakten aus dem Internet, ohne die ich vieles erst nach langer Zeit gewusst hätte.. Als erstes sollte man wissen, dass es kaum noch Hersteller von Flippern gibt.. Die Firmen.. Bally/Williams.. , Gottlieb und.. DataEast/Sega.. (.. DataEast Archive.. ) gibt es seit Ende der 1990er nicht mehr.. Nur noch die Firma.. Stern.. stellt Flipper her, und ab und zu gibt es auch einen Flipper von der Video Arcade Abteilung von.. Williams.. (bei den neuen Williams handelt es sich aber nicht um typische Flipper des 20.. Jahrhunderts, sondern hier werden die Ziele über einen Monitor projeziert).. Flipper sind ein sehr spezielles Hobby , dies fängt beim Werkzeug für die zolligen Masse der mechanischen Teile an (Schrauben, etc.. ) und hört bei den schwer zu beschaffenden Ersatzteilen (Plastiken, Display, Backglass, etc.. ) auch noch nicht auf, daher kann dieses Hobby auch nach dem Kauf etwas teurer sein.. Es gibt aber einige Möglichkeiten die wichtigsten Teile zu schützen (z.. Mylar oder Abstandsscheiben für die Plastiken).. Die Plastiken, die grafisch-bedruckten Gläser und Sonder-Mechaniken sind das teuerste und kritschste, da diese nur für das jeweilige Flipper-Modell hergestellt wurden.. Mit Glück findet man ein Original-Ersatzteil im Internet bei, meist ausländischen, Händlern oder eBay, vielleicht kann sogar die Original-Hersteller-Firma diese anhand der Produktionsnummer nachbauen.. Als Alternative gibt es noch Reproduktionen, die von kleinen Firmen oder Einzelpersonen, mit Hilfe von Scannern, PC und Drucker, nachgebaut werden.. Die Qualität, Farbechtheit und Langlebigkeit kann hier natürlich sehr stark variieren.. Weiterhin sollte man vielleicht auch Schaltpläne lesen und mit dem Lötkolben umgehen können, da die Maschinen ab den 1980ern immer mehr zu HighTech-Geräten wurden.. Es hilft auch ein qualifizierter Freund, den man dafür begeistern kann.. Ansonsten findet man immer noch Hilfe in Form von Webseiten, Foren und Newsgroups.. Ausserdem sollte man sich die Frage stellen, ob man man überhaupt Platz für ein Ungetüm mit den Massen BxHxT 70x180x150 cm hat, ohne die Lebensqualität oder Funktion von Schränken und Türen einzuschränken? Dazu kommt noch, dass man zwar die Spezialeffekte und Musik einstellen bzw.. abschalten kann, aber nicht das Gerumpel der Kugeln und Mechaniken, was besonders in hellhörigen Miethäusern ein Problem sein kann.. Hier verhindern aber ein paar besonders dicke und absorbierende Gummi-Füsse das Schlimmste.. Nach der Flipper-Auswahl bleiben dann nur noch der Kauf und der Transport bis zum ersten Spiel auf dem eigenen Flipper.. Bei der Flipper-Auswahl helfen Flipper-Emulatioren enorm, denn hier kann man seinen Wunsch-Flipper oder das günstige Angebot stundenlang in Ruhe spielen, um zu Entscheiden ob es dieser Flipper sein soll.. Ausserdem sind diese ein guter Ersatz, wenn man einen Flipper nicht mehr kaufen kann, oder sich nicht leisten, aufstellen oder in den Spielhallen finden kann.. Im Internet sollte man sich über alles und insbesondere die typischen Probleme eines Flippers informieren.. Welche Sachen gehen sehr oft kaputt? Welche anderen häufigen Macken gibt es? Besonders auf die optischen Sachen wie Plastiken, Backglass, Display und Sonder-Mechaniken beim Kauf achten.. Einige gute Startpunkte für die Suche gibt es am Ende bei den Links.. (Flipper-ROMs auf dem PC testen).. Flipper können mit.. PinMAME.. plus.. Visual Pinball.. emuliert werden.. PinMAME emuliert dabei das ROM (Logik) und Visual Pinball die Mechanik (Spielfeld).. Als erstes lädt man sich das aktuelle Visual PinMAME und die PinMAME-Samples (Sounds) herunter.. Visual PinMAME entpackt man in das gewünschte Zielverzeichnis (z.. C:\VPinMAME) und folgt dem Installation Guide, der sich nun im Zielverzeichnis befindet.. Alle ROMs kommen.. als ZIP-Datei.. in das.. roms.. -verzeichnis.. Das ROM zum Testen aus dem Guide bekommt man auf einer der später aufgeführten Webseiten.. Danach lädt man sich den aktuellen Visual PinBall und installiert diesen im gewünschten Zielverzeichnis (z.. C:\VPinball).. Um die virtuellen Abbildungen moderner Flipper zu spielen (z.. Indiana Jones, Star Wars, etc.. ) benötigt man noch Scripts (.. VBS-Dateien), welche das elektr(on?)ische System abbilden.. Diese gibt es entweder als Packet auf.. AJ's VPinMAME Table Downloads.. ShivaSite.. IRPinball.. und.. Arcade At Home.. (unter Pinball Emus).. Aktuell ist die Script-Sammlung.. 3.. 10.. (Stand: 07/2003), aber für einige Flipper (z.. DataEast Star Wars) benötigt man zusätzlich noch ein paar Scripts aus der älteren.. 02.. Die Scripts bekommt man auch einzeln von den Programmierern auf der.. PinMAME-Sourceforge-Projekt-Seite.. unter CVS - Browse - PinMame -.. VPVBS.. Mit PinMAME kann man also auch ROMs auf dem PC testen, leider ist manchmal die Tastatur-Belegung für die ganzen Signale sehr unübersichtlich.. Zum Glück ist aber das Spielen mit Visual Pinball super simpel.. Weitere Links:.. - ROMs, Scripts, Tables (.. Alternativer Link auf VPForums.. ).. - Auch Vieles.. VPForums.. - Foren.. - Scripts, Tables.. Parker's Pinball Pages.. - ROMs, Tables (.. Zweiter Link.. , auch anschauen).. Gerhard Crew Pinballs.. - ROMs, Tables.. Raider's Link Haven.. - Pinball Links.. Flipper bekommt man beim Spielautomaten-Händler oder bei eBay.. Beim Kauf besonders auf die optischen Sachen wie Plastiken, Backglass und Sonder-Mechaniken achten.. Bei den Händler bekommt man meist generalüberholte Flipper mit einer 3-monatigen Garantie und auch eine Rücknahme-Garantie für die nächsten 3 Jahre, für den Fall wenn man einen anderen Flipper haben möchte (natürlich wird nicht der volle Verkaufspreis angerechnet :).. Einige Händler erweitern die Flipper sogar, z.. durch einen Kopfhörer-Anschluss oder besonders lärmdämmende Füsse.. Die Händler findet man in den Gelben Seiten unter Automaten, aber nicht jeder Automat ist auch ein Spielgerät bzw.. Flipper (z.. Kaffeautomat, Kartenautomat, etc.. ).. Bei.. eBay.. (Kategorie: Sammeln Seltenes Sammeln Seltenes Automaten Flipper) bekommt man natürlich meist gebrauchte Ware, bei der man meist noch selber Hand anlegen muss.. Hier sollte man sich Fotos und eine genauere Beschreibung des Zustandes schicken lassen, am Besten selber vorbeifahren und Probe spielen.. Die Preise für Flipper meines Interesses (z.. Williams Indiana Jones, DataEast Star Wars), liegen bei den meisten Händlern zwischen 1.. 500 EUR und 2.. 300 EUR.. Dabei muss man aber darauf achten, ob der Versand schon inbegriffen ist oder nicht.. Eine vernünftiger Preis für einen gut erhaltenen Williams Indiana Jones wäre 1.. 500 EUR ohne Versand.. Ausserdem kann man manchmal durch Vorkasse (=Risikominimierung für den Händler) Rabatte erhalten.. Beim Versand darauf achten, ob der Flipper einem nur vor die Haustür gestellt oder auch gleich in die Wohnung getragen wird.. Händler aus meiner Umgebung (Ruhrgebiet):.. Michael Voß.. , Hilden.. Verkauft gut erhaltene Flipper an Privatpersonen und stellt diese auch gewerblich auf.. Ausserdem ist er der Veranstalter des jährlichen Flipper-Turniers im Wuppertaler.. Strandcafe.. , wo auch das ganze Jahr über immer einige sehr gute Flipper zum Spielen stehen.. September 2002 lief das Turnier mit 16 verschiedenen Flippern und den neuen Stern-Flipper RollerCoaster gab es dort auch zum Spielen.. Heiku Automaten.. , Wattenscheid, zwischen Bochum/Gelsenkirchen/Essen, Autobahn A40.. Generalüberholte Flipper, Preise.. inkl.. Versand, Selbstabholer bekommen Rabatt, auf Vorteilsprodukte achten.. Super nettes und hilfsbereites Team, empfehlenswert.. Automaten Hoffman.. , Kettwig, bei Essen, Autobahn A52.. ohne.. Versand, Rabatte sind mir nicht bekannt.. Super nette und hilfsbereite Verkäufer, Techniker scheint aber leider das genaue Gegenteil zu sein, vielleicht ist das anders wenn man schon Kunde ist (war ich nicht).. Haben selbst-entwickelte grosse absorbierende Gummi-Füsse, Ähnliches gibt es aber auch woanders, aber hier scheinbar immer auf Lager.. ArkAdiA Amusementgames.. , Beek en Donk/NL, Nähe Eindhoven.. Keine direkte Erfahrung, schien aber sehr teuer.. Du kennst noch andere Händler die eine etwas grössere Auswahl an Flippern haben? Dann gleich mit mir.. aufnehmen und den Link zum Händler oder dessen vollständige Adresse mitteilen.. Tip:.. Map24.. Stadtplan.. net.. und/oder.. helfen beim Planen einer Route zum Händler.. Vorab: Leider kann ich nichts zum Transport bei Versand-Kauf sagen, da ich meinen Flipper selbst abgeholt habe.. Man braucht.. immer 2 bis 4 Mann.. zum Abbau, Transport und Aufbau, je nach Erfahrung sowie zu transportienden Weg und Kraft.. Da ein Flipper mit umgeklappten Kopf und ohne Beine immer noch die Masse BxHxT 70x70x150 cm hat, kann es sein dass dieser nicht in einen Kombi passt, je nach Flipper und Kombi.. Meist fehlen immer nur ein paar Millimeter.. Am Besten vorher genau Ausmessen und prüfen, ob der Kombi ausreichend Raum und Tür-Öffnung hat.. Falls nicht entweder auf einen Transporter bzw.. Anhänger ausweichen oder sich was einfallen lassen wie man den Flipper und die Heckklappe für den Transport fixieren und sichern kann.. Optional kann man auch den Kopf komplett abmontieren, dann muss man sich aber sicher sein, dass man alle Verbindung wieder zu 100% selbst wiederherstellen kann.. Beschriften der Verbindungen und Fotos vor der Demontage helfen dabei.. Wenn man einen Flipper Treppen hoch oder runter transportieren muss, sollte man unbedingt eine Treppenkarre (mit Sternrädern) verwenden.. Die Treppenkarre muss das Gewicht (ca.. 150kg) auch transportieren können, ansonsten bricht einem die Schaufel noch ab, und der Flipper purzelt von alleine (wieder) runter.. Die Schaufel sollte auch sehr tief sein (ca.. 30cm), damit der Flipper nicht zum Runterkippen neigt.. Hilfreich sind auch passende Trageholme, welche es für die Leute unterhalb des Flippers leichter machen zu drücken.. Bei einer normalen Sackkarre sind ganz schnell die Treppenstufen vermackt, egal ob Holz oder Stein, da es meist keine fliessende Transport-Bewegung ist und die Karre öfter über die Treppe schleift.. Achtung!!!.. Ein Treppentransport ohne Karre ist überaus anstrengend, schlecht für den Rücken und äusserst gefährlich wenn ein Träger nachgibt.. Selbst beim Transport mit einer Karre wird der Rücken der ziehenden/haltenden Personen stark beansprucht.. Man muss immer aufpassen, dass das Gerät keine Eigendynmaik nach unten entwickelt, da dann die Personen unterhalb des Flippers gefährdet sind.. Es gilt also: am Besten immer 4 Leute beim Treppentransport trotz Karre, zwei ziehend, zwei drückend und unbedingt vorher absprechen: wer wann den Flipper stabil hält (ist leicht wenn er auf einer Stufe/Ebene steht).. Und bevor man den Flipper die Treppen hoch oder runter transportiert, vorher das Treppenhaus kontrollieren, Hindernisse entfernen, Nachbarn informieren (Gegenverkehr) sowie Türen öffnen (hilft beim Rangieren auf kleinen Absätzen).. Am Ende dieses Abschnitts liste ich ein paar Treppenkarren-Hersteller und -Händler auf, ansonsten bei einem Werkzeug-Verleih nachfragen.. Abbau:.. Kugeln rausnehmen (Alle!!! Auch aus Ball-Lock!!!) und gut aufbewahren.. Ausschalten.. Stromkabel ziehen.. Unterlagen und andere lose Teile aus Gehäuse nehmen.. Kopf öffnen und.. unbedingt.. festhalten, Flügelschrauben entfernen und gut aufbewahren, Kopf schliessen, umklappen (auf Kabel achten, evtl.. Stoff dazwischen legen) und festgurten (Länge mind.. 3,20m, Stoff/Karton gegen Reibungen verwenden, darf nicht rutschen).. Stromkabel im Kopfloch verstauen.. Schlüssel bei den Flügelschrauben aufbewahren.. Beine hinten entfernen und hochkant stellen, dann Beine vorne entfernen (Schrauben bei den Flügelschrauben aufbewahren), auf lose Gummi-Füsse achten.. Mit Treppenkarre immer nur an die Unterseite fahren, Flipper an Karre festgurten (evtl.. den Gurt vom Kopf verwenden, dabei.. den Kopf festhalten).. Nichts liegen lassen (Handbücher, Schlüssel, Kugeln, Schrauben, Füsse, Ersatzteile, etc.. Aufbau:.. Flipper von Treppenkarre abgurten, dabei.. den Kopf festhalten und wieder am Gerät festgurten.. Kurz alles feucht abwischen (besonders unter'm Kopf, da geht man nur selten dran).. Lose Gummi-Füsse an Füssen anbringen, Beine vorne anbringen und nach vorne kippen, dann Beine hinten anbringen (Tip: 2 Bierkästen können als temporärer Bein-Ersatz untergeschoben werden).. Stromkabel aus Kopfloch entfernen.. Kopf abgurten, hochstellen,.. festhalten und öffnen, Flügelschrauben einsetzen, Kopf schliessen.. Lautstärke runterregeln, falls extern möglich, und später beim Testen langsam lauter machen.. Kugeln einlegen.. Stromkabel einstecken.. Ausrichten, bei neueren Geräten (mind.. ab Anfang 90) ist der Flipper auf ebenen Boden korrekt ausgerichtet, wenn die Füsse an allen vier Ecken gleichlang aus dem Bein herausgeschraubt sind.. Einschalten und Testen.. Unterlagen ins Gehäuse legen.. Treppenkarren-Hersteller/-Händler:.. Alle Hersteller haben Standard-Modelle, die aber auch modifiziert werden können, da die Karren erst nach der Bestellung produziert werden.. Einige Hersteller verkaufen auch direkt an Kunden, manche sogar auch direkt per Versand, andere wiederum sind nur über Händler beziehbar.. Manchmal kommt man aber auch über einen Händler an Rabatte, die man als Privatkunde mit nur einer Bestellung nicht bekommt.. Tips zum Treppentransport stehen am Anfang dieses Abschnitts.. HubHeber.. - Eine motorisierte Treppenkarre der Firma IMPACT GmbH aus Kön, auch mit vertiefter Fussplatte.. Sieht sehr bequem aus :) Danke an Jasmin Awad für die Info.. Fetra.. - Fechtel Transportgeräte GmbH, Borgholzhausen, Nähe Hannover, Autobahn A2.. Kein Verkauf.. Standard-Modell FTK1326 scheint passend.. Georg Keller KG.. , Langenfeld, Nähe Düsseldorf, Autobahn A3.. Direktverkauf.. Kein Versand.. Ausstellungsraum.. Super nett und hilfsbereit.. Empfehlenswert.. Braucke GmbH Co.. KG.. , Bielefeld, Autobahn A2.. Versand-Verkauf.. Hustedt Lagertechnik.. (Händler), Köln.. Rudi Bentlage.. (Händler), Schwalmtal-Waldniel, Nähe Mönchengladbach, Autobahn A52.. Super nettes und hilfsbereites Team.. Du kennst noch andere Hersteller von Treppenkarren? Dann gleich mit mir.. aufnehmen und den Link zum Hersteller oder dessen vollständige Adresse mitteilen.. Um Lärm zu reduzieren sollte man extra grosse Gummi-Füsse verwenden, z.. die Bigfoot-Gummis von.. Ähnliches gibt  ...   Zahlungsweise über das Internet ist.. PayPal.. Partner von eBay und der Standard bei eBay USA und von internationalen Anbietern und Käufern.. PayPal fungiert als eine Internet-Bank, bei der man Gelder an eMail-Adressen überweisen kann, welche auch bei PayPal registriert sind.. Man füllt sein PayPal-Konto durch eine einfache Überweisung oder per Kreditkarte auf, und kann dann kostenlos Geld an ein anderes PayPal-Konto (=eMail-Adresse) überweisen.. Erst wenn man Geld von seinem PayPal-Konto auf sein normales Bankkonto zurückholt werden Gebühren bei PayPal fällig.. PayPal hat in einigen Ländern nationale Konten eingerichtet (auch Deutschland), so dass das Auffüllen des PayPal-Konto eine nationale bzw.. EU-Überweisung und dadurch bei einigen Banken/Konten kostenlos ist.. Zoll / Versand:.. Die Bearbeitung beim Zollamt führt immer zu zusätzlichen Kosten und meistens auch zu starken Lieferverzögerungen.. Auf importierte Ware von ausserhalb der EU wird Umsatzsteuer (=Mehrwertsteuer) und Zoll erhoben.. Bei versicherten Paketen wird die Art des Inhalts und der dazugehörige Wert auf dem Paket vermerkt.. Manchmal können die Zollbeamten sich nichts unter der (englischen) Beschreibung vorstellen, so dass das Paket im Zollamt eingelagert wird und der Empfänger per Post aufgefordert wird Angaben zum Inhalt und Wert des Pakets zu machen.. Bittet daher den Absender Pinball Machine Parts oder Passenderes auf das Paket zu schreiben, vielleicht kann der Zollbeamte daraus einen Flipper ableiten und findet den passenden Zollsatz (0.. 6%, Stand: 07/2003).. Falls auf dem Zoll-Bescheid ein wesentlich höherer Zoll-Satz steht, könnte es sein, dass der Zollbeamte das Paket falsch eingeordnet und dadurch einen zu hohen Zoll-Satz berechnet hat.. Kontaktiert das Zollamt und weist darauf hin, dass Flipper unter Spielgeräte eingeordnet sind und dass es sich um Ersatzteile handelt.. Um Lagerzeiten beim Zollamt zu verkürzen oder zu vermeiden, könnte vielleicht eine Voranmeldung Eures Pakets helfen.. Einfach mal anrufen und auch die Einordnungsproblematik erwähnen, vielleicht klappt dann auch die Bearbeitung sofort (Pinball = Flipper = Spielegerät).. Wer selbst in die USA reist, sollte.. vorher.. schon alles bestellen, bezahlen und sich die Sachen ins Hotel schicken lassen, dies spart lokale Steuern sowie Versandkosten und meistens kommt man damit auch günstig durch den deutschen Zoll.. Bevor man bestellt sollte man aber mit dem Hotel telefonieren, ob diese überhaupt Pakete für Gäste annehmen und damit diese wissen, dass ein Paket für einen zukünftigen Gast geliefert wird.. Bei der Lieferanschrift sollte zusätzlich der eigene Name und etwas wie Guest Oct.. 13th-18th mitangegeben werden, damit das Hotel-Personal das Paket besser zuordnen kann.. Ich habe mir auf diese Weise ohne Probleme ein Ticket für ein.. Chicago Bears.. Spiel ins Hotel liefern lassen.. Wenn man die.. Pinball Expo.. besucht, sollte man die Händler fragen, ob diese auch dort sein werden und man das Paket dort abholen kann.. Das.. Ramada O'Hare.. nimmt meistens Pakete für Gäste an.. Ausserdem bietet dieses einen Shuttle-Bus von und zum.. Flughafen O'Hare (ORD).. an, welcher alle 15 Minuten fährt.. Vorsichtshalber sollte man das Hotel im Vorfeld über die eigenen Ankunft- und Abfahrtzeiten informieren sowie die Telefonnummer des Hotels immer parat haben.. Vom Flughafen kommt man auch mit der U-Bahn (.. CTA.. ) nach Downtown Chicago.. Direkt um das Hotel findet man McDonalds, das Restaurant Pine Grove (Frühstück bis Mittagessen) mit kostenlosen WLAN und die Sportsbar Shoeless Joe (auch mit Essen).. Bei Reisen in die USA sollte man sicherstellen, dass alle mitgenommenen elektronischen Geräte (Rasierer, Zahnbürste, Mobiltelefon, Kamera, Laptop, etc.. ) auch mit 110V funktionieren und dass man ausreichend Steckdosen-Adapter hat.. Besitzer eines Laptops mit WLAN sollten dieses unbedingt mit in die USA nehmen, da man mit Voice over IP -Diensten (VoIP) sehr günstig nach Hause telefonieren kann.. Beliebte Dienste sind.. Skype.. Web.. , wobei Skype auch eine günstige Alternative für Anrufe aus Deutschland in die USA darstellt.. Und das Headset darf man nicht vergessen.. Mein Williams Indiana Jones 3Slot Flipper, Modell 50217, wurde 1993-10-29 produziert, trägt die Seriennummer 50217 347901 und läuft mit Spiel-ROM U6 Version L-7 und Sound-ROM U2 Version L-3.. Der Indiana Jones ist ein Williams WPC Flipper, also kein Solid-State, System 3 bis 11, WPC 95 oder P2K Flipper.. Ausserdem ist dieser ein Mono-Flipper, auch wenn gerne das Gegenteil behauptet wird, mit 3 Lautsprechern.. Im Kabinett befindet sich der Tieftöner, und im Flipperkopf ein Mittel-/Hochtöner (links) und ein reiner Hochtöner (rechts), wobei die Lautsprecher im Flipperkopf über das selbe Kabel ihr Signal erhalten und nur ein Kondensator als Hochpassfilter den Unterschied ausmacht.. Folgende Handbücher lagen meinem IJ bei: Williams Indiana Jones Operations Manual (.. 16-50017-101.. datiert 1993-07-??) and Williams WPC Schematic Manual (.. 16-9473-1.. datiert 1993-05-17).. Diese Handbücher gibt es als Download auf.. oder.. Mike Purcell's Pinball Manual FTP Server.. Ausserdem gibt es dort auch das Williams Indiana Jones Operators Handbook (.. 16-50017-103.. datiert 1993-07-??).. Leider hat Stormaster seine Website seit 08/2003 geschlossen, und daher gibt es die Downloads der Manuals nun auch hier.. Ich habe dazu noch 3 Korrektur-Blätter für das Operations Manual (Amendments.. 16-50017-AMD-1.. datiert 1993-08-20,.. 16-50017-AMD-2.. datiert 1993-09-10 für Seite 1-38,.. 16-50017-AMD-3.. datiert 1993-09-29) sowie einen Extra-Zettel (.. 16-9045.. Flipper Shaft End Play Spacing Gauge ).. Ausserdem einen Extra-Schaltplan für das WPC Schematic Manual (Power Wiring Diagram mit WPC Transformer 3 (DOT) 5610-13491-00 anstatt WPC Transformer 3 (DOT) 5610-12835-00 beim Secondary Cable, Sound Board mit J4/J3 anstatt J501/J502, und mehr farb-codierte Verbindungen beim 100VAC Interlock und beim Kill Switch).. Hier ist auch ein Scan der deutschen.. Scorecard.. Vieles Wissenswertes über diesen Flipper gibt es auf Mike Saunder's.. Indiana Jones - The Web Site.. Ausserdem auch in den vorhandenen Internet Pinball Databases (IPDB) auf.. IPDB.. ORG.. sowie der.. alten IPDB.. Laut Anleitung verwendet der Flipper 7x GE#44 (Metallsockel,6.. 575W) und 61x GE#555 (Glassockel, 6.. 575W) Lampen, wobei 3 bzw.. 2 für die allgemeine Beleuchtung (General Illumination) dienen.. Ausserdem gibt es laut Anleitung 11x GE#89 (Metallsockel, 12V, 5W) und 10x GE#906 (Glassockel, 13V, 6W) Flasher.. Da aber für die GE#906 Flasher nur die Backbox, Eternal Life und Light Jackpot angegeben sind, können die Angaben nicht vollständig sein bzw.. nicht stimmen, da die grünen Flasher an den Rampen auch GE#906 benutzen.. Bei der Grundreinigung habe ich mal alle Lampen gezählt:.. Ort.. GE#555.. GE#44.. GE#906.. GE#89.. Backbox.. 36x GE#555.. 12x GE#906.. Path of Adventure.. 12x GE#555.. Oberes Spielfeld (Upper).. 3x GE#555.. 24x GE#44.. 4x GE#906.. 8x GE#89.. Unteres Spielfeld (Lower).. 50x GE#555.. 5x GE#44.. 2x GE#906.. 4x GE#89.. Summe:.. 101x GE#555.. 29x GE#44.. 18x GE#906.. 12x GE#89.. Jackpot Backbox Lights.. Lost Plastic Lights.. Das IJ Plastic Set (31-1773) hat 29 Teile und beinhaltet auch die Slingshot-Abdeckungen sowie den Propeller des Doppeldecker-Flugzeug.. Es enthält nicht die Flugzeuge, die rechte Rampe, die Ruine, die Idol Lock Basis, die Idol Lock Tür und Seitenteile des PoA.. Genauso sind die Standard-Plastiken wie Lanes, Starposts, Targets, Flasher- und Bumperkappen nicht Bestandteil des Sets.. Meine Anleitung zum Einstellen des Path Of Adventure habe ich.. in diesem News-Posting.. veröffentlicht.. Da ich kein Archiv der Indiana Jones ROMs finden konnte, habe ich einige Versionen der Game und Sound ROMs zusammengetragen:.. Game ROM.. U6.. :.. L-1,.. L-2,.. L-3.. L-4.. L-5.. L-6.. L-7.. Sound ROM.. U2.. L-1.. L-2.. (kam mit Game ROM L-4),.. (kam mit Game ROM L-6).. U3.. L-3(!).. Du hast eines der fehlenden Game ROMs im Schrank liegen? Dann gleich auslesen (vielleicht hat auch ein Freund einen EPROM-Gerät) und mit mir.. aufnehmen.. Hier ist eine.. Auflistung der IJ Sound-Codes.. (Sound Map) und ich bitte um Eure Hilfe bei der Vervollständigung.. Zum einfacheren Testen habe ich eine Erweiterung für den Sound Command Mode von PinMAME (Taste F4) entwickelt, die es erlaubt die Hex-Ziffern eines Sound-Codes direkt einzugeben.. Seit Version 1.. 51 ist diese nun standardmässig in PinMAME implementiert.. Indiana Jones - Settings.. Meine allgemeinen Einstellungen des IJ-Flippers:.. U.. tilities /.. pezial Einst.. -.. Factory Reset: ausführen.. A.. djustments /.. E.. instellungen.. 1.. Standard Adjustments.. 28.. Minimum Volume Control: YES einstellen, erlaubt auch Lautstärken 0 bis 7.. Nun Flipper auf gewünschte Lautstärke einstellen.. Datum+Uhrzeit: Datum/Uhrzeit eingeben.. Custom Message: Text eingeben falls gewünscht.. |F|0.. |.. |R|1234567890123456|.. --------------------.. |1|.. HERZLICH.. WILLKOMMEN.. |2|.. IN.. MADDES'.. SPIELHOELLE.. |3|.. VIEL.. SPASS.. 21.. Language: GERMAN einstellen.. Show Date/Time: YES einstellen.. 32.. No Bonus Flips: YES einstellen.. Pricing Adjustments.. Free Play: YES einstellen.. H.. S.. T.. D.. Adjustments.. 09.. High Score Reset: OFF einstellen.. Meine Spiel-Einstellungen des IJ-Flippers:.. 9.. Presets.. Install Easy bzw.. Medium: einstellen, siehe Operations Manual 1-23.. Install Add -A -Ball: einstellen, ExtraBall statt Credit Rewards, siehe Operations Manual 1-24.. Tilt Warnings: 5 einstellen, da beweglicher Laminatboden.. 05.. Replay System: FIXED einstellen, Festwerte für Replay (=ExtraBall, wegen Add-A-Ball, siehe U.. 08).. Replay Level 1: 500 Mio.. einstellen.. Replay Level 2: OFF einstellen.. - optional:.. 26.. Tournament Play: YES einstellen, ACHTUNG!!! Dadurch gibt Hand Of Fate IMMER nur 10 Mio.. , aber dafür spielt jeder für sich (Jackpot, etc.. Alternativ kann man auch den Buy-in deaktivieren und dafür 2 Replay Level einstellen, dann muss man von vornherein gut Spielen um in den Genuss des ersten ExtraBall und eines Adventures zu kommen:.. Replay Level 1: 250 Mio.. Replay Level 2: 500 Mio.. 2.. Feature Adjustments.. Buy Extra Ball: OFF einstellen.. Maddes - Easy, SuperBall, ExtraBall bei 500 Mio.. 808.. 348.. 280.. OZ.. Oliver Zwerschke.. 2003-06-11.. 743.. 555.. 270.. MAD.. Maddes.. 2004-06-05.. 614.. 819.. 190.. H R.. Heiko Röcken.. 2004-01-02.. 608.. 168.. 800.. 2002-11-18 (ohne Sound).. 489.. 680.. 690.. 2003-01-11.. 456.. 262.. 810.. 276.. 404.. 720.. M_P.. Mario Pirich.. 2003-02-23.. 234.. 122.. 440.. 2003-04-11.. 131.. 240.. 790.. CBA.. 2003-02-09.. 078.. 031.. 320.. NOP.. Klaus Kuphal.. 2003-04-17.. 034.. 059.. 760.. 2002-11-22.. 851.. 644.. 2003-01-27.. 778.. 568.. 163.. 650.. J_B.. Julia Brauckmann.. 2004-12-29.. Maddes - Andere Einstellungen.. (Aug.. /Sep.. 2002).. 238.. 406.. 310.. Medium, SuperBall, ExtraBall bei 250+500 Mio.. 120.. 550.. 030.. 012.. 836.. 410.. Medium, SuperBall.. 791.. 011.. 510.. 717.. 250.. 750.. Vorbesitzer Martin Krossa.. 154.. 820.. 330.. M.. Martin Krossa.. ???.. 111.. 669.. 620.. Unbekannt.. 023.. 627.. 730.. Martin Kross.. 936.. 923.. 770.. 994.. 668.. 980.. Hier eine kurze Liste der von mir gefundenen Modifikationen.. Batterien von der Platine entfernen (Auslauf-Schutz).. Damit die Platinen nicht durch auslaufende Batterien beschädigt werden, empfiehlt es sich die Batterien von der Platine zu entfernen und separat daneben zu platzieren.. Infos dazu auch auf.. http://www.. flipper-pinball-fan.. be/.. Fertige Sets gibt es bei.. FlipperService.. (Art.. 2200, 6.. 90 EUR) oder auch in den USA bei.. PinGizmos.. (RBK-01, 19 USD,.. Bild.. Download Bilder/Scans.. Anti-Bounce for Start-Mode-Hole.. Das Blech am Start-Mode-Loch kann sich nach einiger Zeit nach hinten biegen, daher geht der Ball nicht ins Loch, sondern springt wieder raus.. Dann muss man den Path-Of-Adventure entfernen und das Blech neu zurecht biegen, als dauerhafte Lösung kann man dahinter ein zusätzliches Blech schrauben, ähnlich wie auf.. The Pinball Ark.. in der Special-When-Lit Sektion beim Twilight Zone slotmachine-target oder sogar Streben einschweissen (hat ein Freund für mich erledigt).. Lost Backpanel Jackpot Lights.. Die Jackpot-Symbole im Flipperkopf, direkt zwischen den Boxen und unter dem Dot-Matrix-Display, kann man zusätzlich zu denen auf dem Spielfeld beleuchten.. Siehe.. in der Special-When-Lit Sektion.. Ein fertiges Set gibt es in den USA bei.. (IJBB-01, 50 USD,.. Lost Plastic.. Bei frühen Entwicklungs- und Verkaufsflippern des IJ war an der hinteren Wand noch eine beleuchtete Plastik mit Sonnenuntergang und Maya-Tempel vorhanden.. Im Operations Manual ist auf 2-23 die Beschreibung der dazugehörigen Beleuchtung zu sehen.. Ein fertiges Beleuchtungs-Set (ohne Plastik) gibt es in den USA bei.. (IJLP-01, 35 USD,.. Hier ein zusätzlicher Download von Martin Gruhn's nicht mehr existierender.. Lost Plastic HowTo Seite.. mit weiteren Informationen.. Ein Hinweis auf die Original-Verdrahtung der Beleuchtung unter dem Spielfeld anstatt in der Backbox ist in.. diesem News-Posting.. vorhanden: die GE#44 Lampe aussen neben dem linken Loop-Pfeil, in der Nähe von A-D-V und dem Start-Mode-Loch.. Für die Plastik gibt es keine direkte Bezugsquellen ausser vielleicht bei eBay.. Ich werde beim nächsten Basteln an meinem IJ einen hochauflösenden Scan von der Plastik machen.. Rotierender Motor bei linkem Flugzeug.. Infos dazu auf.. Flipper Pinball Fan.. The King Of Payne.. und auch.. Gameroom.. Extra-Beleuchtung des PoA mit roten LEDs.. Gefunden auf.. Hinweis: Superhelle LEDs sind teuer (1,00 - 4,00 EUR), der Ersteller hat rote(!) LEDs verwendet, weisse benötigen eine höhere Spannung, ausserdem auf den Abstrahl-Winkel (120 ) und die Leuchtstärke (mcd) achten.. Conrad 153737, 153867, 153881.. Extra-Beleuchtung bei rechtem Flugzeug (Messerschmitt).. Line-Out am Flipper-Kopf.. Mehr Infos wenn ich eine erfolgreiche Vor-Verstärkung realisiert habe, evtl.. mit Kopfhöreranschluss.. (Sound Sheet 4 of 5, R50, rechts unten).. Pinball Freak / Michael Voß.. - Verkauft und stellt Flipper auf, hat auch viele Ersatzteile.. Flipper.. de / Pinball Paradise.. - Offizieller Nachfolger von.. Bally/Wulff.. und damit Ersatzteillieferant, Fachbegriff-Lexikon,.. Verkauf von Mylar!.. - Versandhandel, günstige Lampen und Flasher, Laden in Dortmund, nette Leute.. Pinball-Network.. - Versandhandel,.. durchsichtige Unterlegscheiben.. , Batteriehalter für Platinen, etc.. Flipperland.. - Versandhandel.. Flipperservice.. separates Batteriefach.. - Gebrauchte Flipper und Zubehör, teilweise günstige Lampen und Flasher, Kategorie.. Automaten.. (siehe auch Unterkategorie Flipper).. - International, gebrauchte Flipper und Zubehör, Kategorie.. Coin-Ops.. (siehe auch Unterkategorie Pinball).. Marco Specialties Inc.. (USA) - Gut sortierter international Anbieter,.. reagieren nicht auf eMails.. , also Online bestellen oder anrufen (ist günstig wenn man vorher die.. Tarife.. kontrolliert).. - Hersteller.. Deutscher Flipperverein.. - Alles rund um die deutsche Flipperszene, News, Turnier-Ankündigungen, Hilfe bei Anschaffung, etc.. Niederländischer Flipperverein.. - (In holländisch) Alles rund um die grosse holländische und internationale Flipperszene, News, Turnier-Ankündigungen, Händler-Links, etc.. Pinball Abbreviations Database.. - Die gebräuchlichsten Abkürzungen in rec.. games.. pinball.. Englisch-Wörterbuch der Technischen Universität München.. - enthät auch viele technische Begriffe.. Pinball News.. - Internationale und sehr aktive News-Seite.. Newsgroup rec.. - Zugriff über Google.. - Handbücher/Manuals, Score Cards, Links.. (bei einem IP-Wechsel gibt es die neue in der RGP Newsgroup) - Handbücher/Manuals, Score Cards, Scans.. Pinball HQ.. - Reparatur, Restauration (.. alternativer Link.. - Alles über DateEast Flipper.. - Alles über Indiana Jones - The Pinball Adventure.. Balls Of Steel.. - Datenbank mit Scans von Plastiken und Spielfeldern sowie Anleitungen für eigene Scans und Reproduktionen.. in Wuppertal - Veranstaltungsort eines jährlichen und erst-klassigen Flipper-Turniers von.. aus Hilden (alle Unterstriche aus der Mail-Adresse entfernen, ist zum Schutz für ihn gegen Spam), wo auch das ganze Jahr über immer einige sehr gute Flipper zum Spielen stehen.. Flippern.. - Datenbank, wo welcher Flipper in den Spielhallen und Kneipen steht.. Ich bitte Euch die Datenbank für Euren Ort mitzupflegen, danke.. Telefon-Tarifvergleich.. - für günstige Anrufe ins Ausland, z.. Händler.. Martin Reynolds..

    Original link path: /pinball/
    Open archive

  • Title: Flipper / Pinball - How To Examine Or Debug A WPC ROM - Maddes.net
    Descriptive info: Contact.. Updates:.. 2011-12:.. Corrected BCS disassembly to BLO.. Thanks to Pixel for pointing me to this.. 2010-12:.. Updated how to retrieve PinMAME source code from Subversion repository.. Add link to Uncle Willy archive and fixed a bunch of links.. 2010-01:.. PinMAME 2.. 2 has been.. released.. Executables with MAME Debugger are available too on Sourceforge.. 2009-02:.. Uploaded.. PinMAME/32 2.. 1 MAME debug version.. 2008-08:.. 0 MAME debug version.. Now Visual PinMAME is also completely Open Source.. 2008-06:.. Setup for MinGW and also Visual C++ is now described in text files of the PinMAME CVS repository.. 2008-05:.. Microsoft has changed/is changing its homepage (again), so most links got broken and some pages I can not find yet.. Will do my best to find all information again.. Let's hope that MS is not trashing valuable information for compiling PinMAME with older VC++ versions.. 2008-04:.. PinMAME/32 1.. 60 MAME debug version.. and VC project files for PinMAME 1.. 60 (68 KiB) (VC 6.. 0, 2002, 2003, 2005, 2008).. Added a PinMAME source code patch with a new debugger command called CODELIST.. Updated.. 59 MAME debug version.. package with new build that includes CODELIST.. Updated VC project files for PinMAME 1.. 59 with general.. user files for VS2008 that contain reasonable debugging settings.. 2008-03:.. Added a section with my PinMAME source code patches.. Updated MinGW information with instructions for a more up-to-date compiling environment.. 59 (67 KiB) (VC 6.. Added information about Visual Studio 2008.. 2007-09:.. WPC_Tool v1.. 4a (100 KiB).. 56 MAME debug version.. 56 (38 KiB) (VC 6.. 0, 2003, 2005).. Added information about Visual Studio 2005 SP1.. Index.. Introduction.. Useful Tools.. Getting the PinMAME source.. Compiling PinMAME/32 with MinGW.. Compiling PinMAME with Visual C++ (6.. Compiling ZLib with Visual C++.. 6809 information, instruction set and tools.. Modifying WPC ROMs correctly.. Information and how to create a new correct checksum.. Adding support of modified ROMs to PinMAME.. The WPC DCS machine of Indiana Jones: The Pinball Adventure.. Technical summary.. WPC specialties.. 6809 memory map for WPC machines.. WPC bankswitch map.. WPC Game ROM map.. WPC Debugging And Understanding.. General information.. Disassembling.. Example: Checksum check (part #1 of powerup code).. Example: Memory check (part #2 of powerup code).. Debugging game functions.. The three call a bank function routines.. This is my attempt to help newbies to understand how a WPC machine works software-wise.. You can find a lot of information about it on the newsgroups.. rec.. and the archived.. Uncle Willy (from Williams).. , but these are scattered around and sometimes only understandable if you already know something about WPC machines.. So this HowTo shall be an introduction to and documentation about WPC software.. This HowTo is based on Indiana Jones L-7, a WPC DCS pinball machine.. WPC[-89], WPC-S and WPC-95 should be very similar (see.. Marvin's WPC Repair Guide.. All absolute Game ROM addresses on this page are related to this specific IJ 4 MiBit Game ROM, but should mostly fit to other WPC ROMs of the same size.. At first you need a tool to extract all the tools and files from archive files like ZIP, RAR and ACE.. For this I recommend the freeware tool.. 7-Zip.. Other freeware tools are.. listed here.. You need a good hex editor to have a look at the ROM image.. Any hex editor with a search function should be sufficient.. I prefer the shareware text editor.. UltraEdit.. , as it provides a column text mode and nice search/replace/goto features in hex mode.. As a good freeware text editor I can advise.. Notepad++.. with column selection mode and the.. Hex Editor plugin.. Other freeware text and hex editors are.. A debug version of.. is also necessary.. Before 2.. 2 you had to compile this version yourself.. Nowadays you can just.. download it.. But if you want to use modified ROMs or features of the latest PinMAME development then you still have to compile it yourself.. For finding strings inside a binary file use SysInternals'.. Strings.. , so you just have to wade through possible strings and no hex trash.. Some checksum tools are useful too.. Those will be mentioned in the corresponding sections.. Last but not least a working brain, which you can put in gear when starting your explorations :).. On the initial writing of this page PinMAME was at v1.. 001 and the complete (PinMAMEW) sourcecode was directly downloadable from its homepage, later the source code was available from a.. CVS (Concurrent Versions System).. directory and the whole thing could only be downloaded via a CVS client.. Now the source code is maintained inside a.. Subversion.. (short: SVN) repository and the source can be downloaded again as a tar ball.. Go to the.. web interface of PinMAME's Subversion repository.. Either browse to a tagged release inside the tags folder or to the latest development inside the trunk folder.. Finally click Download GNU tarball at the bottom of the page to download the source code.. It is recommended to add the directory revision (stated at the top of the page) to the filename after downloading, so the exact revision of the source code is kept for reference.. If you want to get the latest development very often, or if you want to modify the source code on your own, then it is recommend to get the source code via a Subversion client.. This allows to update the source code faster by only downloading deltas and, more important, while keeping your local changes.. Conflicts between your changes and the official updates will be marked so you can work on them.. Last but not least with the client's status and diff commands you can determine what files where changed by you and create a unified diff of your changes.. Clients for Windows are available from.. Subversion's Binary Packages page.. A simple command line client is way enough to handle the PinMAME repository, I recommend.. Win32Svn.. 's zip package (svn-win32-.. zip), just unpack it, add its bin folder to your PATH environment variable and use it.. If you need a client GUI for SVN then take a look at.. pysvn Workbench.. TortoiseSVN.. or.. RapidSVN.. Also check out the free online eBook.. Version Control with Subversion.. for introduction to Subversion usage/handling and reference.. Refer to.. PinMAME's develop project page.. on how to check out the source code, but do not forget to add the path you want to check out (trunk or a tagged release).. Example:.. svn co https://pinmame.. svn.. sourceforge.. net/svnroot/pinmame/tags/release_2_2.. \release22.. Follow the instructions in the file.. setup_mingw.. txt.. and create a build that includes the MAME debugger.. To use this build, get the PinMAMEW binary package, extract it and copy your compiled build to its directory.. setup_vc.. If something is not covered there then check out the.. MSDN forums.. There are some important Microsoft Blogs for Visual Studio 2005:.. general informationen by Scott Guthrie.. long installation duration and high diskspace usage.. integrating SP1 into the Setup-CD/DVD (Slipstream).. by Heath Stewart.. That my adopt to newer versions too.. The Express Editions of Visual Studio are free and can be used for commercial use too (see.. FAQ.. For Visual C++ 2008.. Express Edition.. download the ISO image of it, which is accessible through the offline installation link on the download page.. By the way it is.. not.. necessary to register, just ignore those messages.. Windows Platform SDK.. (WinSDK,.. Windows SDK Blog.. ) (WinSDK was previously called Platform SDK, short PSDK).. The WinSDKs coming with VC++ 6.. 0, 2002 Pro, 2003 Pro, 2005 Pro and all 2008 (incl.. Express Edition) are sufficient to build PinMAME.. Note for Express Edition:.. You can change between WinSDKs by using the command line with WindowsSdkVer.. exe -version:v6.. 1 (see.. here.. ) that sets the WindowsSDKDir variable for VC++ or add the WinSDK pathes to Visual C++ via Tools Options under VC++ Directories.. DirectX SDK.. (DXSDK,.. all downloads.. ) (.. ToyMaker's DirectX Infos.. Note for Visual C++ 6.. 0:.. Add all DXSDK bin, include and library pathes in fullname (no variables) to Visual C++ 6.. 0 via Tools Options on register Directories.. Do not forget to update the.. MSDN Library.. Always install a MSDN Library with information/integration for your Visual Studio version first and then update it with the latest MSDN Library.. You can always add the new information of the latest MSDN Library by.. configuring the Help Collection Manager.. Since Express Editions there are some.. free MSDN Lib releases.. : May 2006, April 2007,.. April 2009 (VS 2008 SP1).. Note for Express Editions:.. You can only integrate the MSDN Library of the Visual Studio Express Edition you use, but you can always use the latest full MSDN Library as a stand-alone help.. Information I collected to compile the original MAME, not PinMAME, with VC++ 2005 was once available on the VPForums.. com site in the.. compiling PinMAME 1.. 53 with VC++ 2005.. thread (now dead).. My package also provides a project file to compile.. ZLib.. version 1.. 3 yourself.. To do so check out the included instructions carefully and you need MASM 6.. x to compile it with the optimized assembler parts, e.. g.. from the.. Processor Pack for Visual C++ 6.. 0 SP5.. After you downloaded the package, extract it to a temporary folder and copy the following files to the BIN folder of Visual C++ or copy them to a separate folder and add its path to Visual C++ via Tools Options under VC++ Directories :.. H2INC.. ERR.. EXE.. ML.. MASMREF.. DOC (normally in VC's main folder, but it doesn't matter if it's in the BIN folder).. MASM can.. be used for commercial use, see its EULA.. There's also a.. MASM 8.. 0 for VC++ 2005.. , but this does.. work with the ZLib 1.. 3 source, so control your VC++ Directories when you have compiling problems with ZLib's assembler sources.. Information and FAQs about MASM are available at.. masm32.. , the.. newsgroup comp.. lang.. asm.. x86.. Jon Kirwan's homepage.. and.. EMS Professional Software.. The 6809 processor, which is used in WPC pinball machines, is a product of.. Motorola Microcomputers.. (became Motorola Semiconductors and is now Freescale as of 2006).. A free programming manual (Code: M6809PM or M6809PM/AD) is still available, check out.. my htmlized version.. for all related information.. A copy of the original data sheet is available at the.. BitSavers.. org PDF Document Archive.. The 6809 was produced in several versions.. WPC machines use a 68B09EP.. The B and E are important.. B = certified for 2 MHz, A would be 1.. 5 MHz, no character behind the 68 is 1 MHz (datasheet).. E = external clock, the internal divider is 4 (datasheet,.. M6809PM section 1.. 11.. P = plastic package, L would be ceramic, S would be cerdip (datasheet).. An additional C marks a version with a wider temperature range (datasheet).. [source: 6809 datasheet,.. ].. The 6809 is an 8-bit processor with five 16-bit registers, based on the 6800 family.. The meaning of its registers are explained in the programming manual in sections 1.. 4 to 1.. Its memory address space is 64 KiB (linear $0000 to $FFFF, 16Bit address).. The memory storage format is Big Endian, which means values are stored from HIGHEST byte TO LOWEST byte, e.. g #$A607 is stored as #$A6 #$07.. The typical 6809 vector locations for reset and interrupts are listed in the.. M6809PM section 3.. and in the WPC memory map below.. More information and links regarding the 6809 can be found at the.. 6809 Emulation Page.. For a nice comprehensive overview of the 6809 instructions I suggest to read the.. 6809 Datsheet.. at Keith's Home Page (now dead).. For in-depth infos from the 6809 developers themselves check out the old Byte magazine articles digitalized by.. Tim Lidner.. under Document Reproduction.. Wouter's 6809 Page.. also offers a Motorola Microcomputers MC6809 Course Outline.. The newsgroup.. comp.. sys.. m6809.. is a good place for 6809 discussions.. Although you will mainly use PinMAME to debug the Game ROM, it is always good to have a disassembler and assembler for the 6809 at hand.. A freeware disassembler is.. Peter Clare.. 's DASMx (or Pete Clare).. The latest version is 1.. 40 from 2003 on his homepage (version 1.. 30 from 1999 is available.. A professional, but not free, disassembler is.. DataRescue.. 's IDA Pro.. More on disassembling later in the debugging section.. To compile assembler sourcecode for the 6809 you need an assembler from Motorola or others.. As most of you won't do this on a 6809 machine, it has to be a cross assembler.. Cross assemblers are compilers that do not run on the environment (CPU and OS respectively) for which they compile the sourcecode for.. The free Motorola cross assembler (MOTOASMS.. ZIP) and the accompanying documentation (ASREF.. ZIP) are no longer available from Motorola's homepage.. Fortunately you can find them on any Simtel mirror (see below).. The free cross assemblers of Frank A.. Vorstenbosch are listed and available for download on.. Soft Lookup.. The last updates were done in 1999, but that doesn't mean that these are not good.. AS09 is the one for 6809 machine code.. The free cross assemblers ASxxxx of Alan R.. Baldwin are available at.. Shop PDP.. of the Kent State University in Kent, Ohio, USA.. Most downloads are available on any.. Simtel.. mirror:.. MotoAsms.. AsRef.. AS09 1.. ASxxxx Cross Assemblers 4.. Also.. The Coin-Op Cauldron.. 's Laboratory offers downloads of the Motorola tools and DASMx, and R.. J.. Kuhn's homepage.. Development Tools for Electronic and Robotic Hobbyists.. offers the cross assemblers of Frank A.. Vorstenbosch.. Modifying WPC ROMs correctly (e.. for fixing typos and bad translations).. Some people slightly modify the Game ROM with a hex editor to correct typos and/or bad translations.. WARNING!!! Using an unofficial/modified Game ROM in your pinball machine voids your warranty and may cause severe damage to it and could even cause fire (e.. shortcutted coil with +50V)!!! It's your risk, pinball machine and house!!!.. Never release your home-made versions to the public, you can mess  ...   and APPLE system.. For Indiana Jones L-7 also add.. ijone_l7_general_manual.. to your symbol files pile, as it contains some manually defined symbols for the System ROM part.. IDA supports segments in its own special way: Virtual Address (memory address) = LinearAddress (ROM address) - (Segment Base 4).. The left shifting by 4 equals a multiplication by 16 (2^4), so for example $0A08 becomes $A080.. To map the System ROM correctly create a segment from $00078000 to $00080000 (somehow IDA needs for the end address the first byte.. in the segment) with a base of $00007000, resulting in $00078000 - ($00007000 4) = $8000.. The base for the other switched banks can be calculated as following: (Start address - $4000) 4.. Unfortunately IDA doesn't support negative bases, so you can not map the first bank correctly.. Following is the disassembled code of the first part of the startup code which checks the actual Game ROM checksum.. Maybe you will find the code here easy to understand, but you have to learn how to interpret the code when you do not have speaking labels and explaining comments.. Try it yourself by examining the first 100 commands in PinMAME.. before.. reading my commented disassembled code.. Initial register values on startup:.. PC.. #$8D17.. #$0000.. CC.. #$50.. B.. X.. Y.. reset_entry: ; Disable IRQ and FIRQ, NMI is always enabled and can't be disabled orcc #$50 ; Turn off(?) CPU LED (bit 7) ldaa #$00 staa WPC_LED ; Here starts the checksum code chksum_init: ; Set registers as if all checks were fine ldy #$0006 clrb ; Compare against special case (for developing, avoids checksum and memory check) ldx GAMEROM_CHKSUM_CORRECTION ; IJ L-7: #$D559 cmpx #$00FF lbeq checks_done ; Prepare registers for main checksum loop ldu #$003F ; #$3F banks for a possible 8MBit ROM ldd #$0000 ; clear A:B exg d,u chksum_loop: ; At this point, B contains the next bank to be summed up and U the sum of all previous summed up bytes tfr b,a ; create a working copy of B in A for the next checks ; Check every 8th bank (#$3F, #$37, #$2F, etc.. ) if WPC ASIC rolled through the ROM and is back at the last Game ROM bank coma ; invert A bita #$07 ; bit test (AND) of A with %00000111 (correct binary notation?) bne chksum_no_possible_end_of_rom_check ; For checking the bank before this bank will be used, hence A is decreased and the bank selected (#$3E, #$36, #$2E, etc.. ) coma deca staa WPC_ROMBANK_SELECTOR ; The first byte of a bank contains the bank number as referenced by this checksum routine (last bank is #$3F and counting down for the previous banks) cmpa BANK_NUMBER_CHECK ; compare A to first byte of bank bne chksum_end ; Doesn't fit, WPC ASIC has rolled, all banks summed up chksum_no_possible_end_of_rom_check: ; Select the next bank (stored in B), save B in U and get current checksum into D (A:B) for continuing summing up stab WPC_ROMBANK_SELECTOR exg d,u ; The following loop has nothing to do with checksum, as it seems to reset the soundboard 256 times and nothing more, maybe necessary for sound initialization or to keep the soundboard quiet (BONG!) ldy #$0100 chksum_wpc_soundback_loop: staa WPC_SOUNDBACK leay -1,y bne chksum_wpc_soundback_loop ; Finally we add the bytes of the selected bank in a loop ldy #$0006 ; has nothing to do with the checksum, but is used for the small WPC Watchdog code inside this loop ldx #BANK ; start address of the bank in 6809 memory chksum_addbytes_of_bank_loop: addb ,x ; adds byte from memory address in X+Offset into B (low byte of D) adca #$00 ; adds carry from previous add to A (high byte of D) addb 1,x adca #$00 addb 2,x adca #$00 addb 3,x adca #$00 addb 4,x adca #$00 addb 5,x adca #$00 addb 6,x adca #$00 addb 7,x adca #$00 ; Small WPC watchdog code which has nothing to do with the checksum.. Maybe keeps the watchdog quiet(?) exg y,d stab WPC_WATCHDOG exg y,d ; Back to the checksum code, add 8 to the address in X for the next 8 bytes leax 8,x ; Check if X reach the end of the bank (X=start of ROM) cmpx #$8000 blo chksum_addbytes_of_bank_loop ; loop as long as it is below $8000 (start of System ROM) ; Save current checksum in U and get selected bank back in B and decrement it for the next loop exg d,u decb bra chksum_loop ; chksum_end: ; Get current checksum back in D and subtract checksum stored in Game ROM from it, if result is 0 it is the same (=good) exg d,u subd GAMEROM_CHKSUM beq chksum_good ldab #$01 ; B=1 when bad checksum, otherwise 0 because of SUBD chksum_good:.. Conclusion:.. The checksum routine just sums up all bytes of the Game ROM and compares it to the stored checksum within the Game ROM itself.. It offers a special branch for developing purposes.. During checksum calculation it writes to a WPC sound and watchdog register for unknown reasons.. The routine is programmed for 1MBit ROMs (128 KiB) and multiples of this up to 8MBit (1MB).. Every bank in the Game ROM, except for the last page, has its own page number as its first byte, as referenced by the checksum routine (last page of ROM is #$3F and counting down to the first page of the ROM).. This is used to recognize the WPC ASIC rolling through the ROM, so that the Game ROM bytes are only summed up once.. tfr d,y ; backup B in Y (0 or 1) ldab #$06 ; again for WPC watchdog ; some initialization; why? ldaa #$B4 staa WPC_PROTMEM ldaa #$01 staa WPC_PROTMEMCTRL staa WPC_PROTMEM ; fill $0000-$172F with bit sample (first #$55, then #$AA) ldaa #$55 memchk_start: ldx #$0000 memchk_fill_loop: staa ,x staa 1,x staa 2,x staa 3,x stab WPC_WATCHDOG leax 4,x cmpx #$1730 blo memchk_fill_loop ; loop as long as below $1730 ; then check if memory shows still the stored sample ldx #$0000 memchk_cmp_loop: cmpa ,x bne memchk_bad cmpa 1,x bne memchk_bad cmpa 2,x bne memchk_bad cmpa 3,x bne memchk_bad stab WPC_WATCHDOG leax 4,x cmpx #$1730 blo memchk_cmp_loop ; loop as long as below $1730 ; check for first sample cmpa #$55 bne memchk_good ; invert sample for second memchk coma bra memchk_start ; memchk_good: tfr y,d ; get result of checksum check back bra check_results ; memchk_bad: tfr y,d ; get result of checksum check back orab #$02 ; check_results: ; final test of all checks tstb beq checks_done ; let the CPU LED blink tfr d,u ; backup B in U check_err_led_blink: ; turn LED on ldaa #$80 staa WPC_LED staa WPC_SOUNDBACK ; ldx #$FFFF ldaa #$06 check_err_led_on_wait: staa WPC_WATCHDOG leax 1,x leax -1,x leax -1,x bne check_err_led_on_wait ; turn LED off ldaa #$00 staa WPC_LED ; ldx #$FFFF ldaa #$06 check_err_led_off_wait: staa WPC_WATCHDOG leax 1,x leax -1,x leax -1,x bne check_err_led_off_wait ; blink several times, exactly: (%11 both = once, %10 memory error = twice, %01 checksum = once) ; stupid scheme, isn't it? decb/bne would be better, blink the code directly lsrb bcc check_err_led_blink ; extra loop, why? ldab #$04 ldaa #$06 check_err_extra_wait: ldx #$C000 check_err_extra_wait_inner: staa WPC_WATCHDOG staa WPC_SOUNDBACK leax -1,x bne check_err_extra_wait_inner decb bne check_err_extra_wait tfr u,d ; get old B back bitb #$02 ; check for memory test error check_memerr_endless_loop: bne check_memerr_endless_loop ; endless loop if bit is set checks_done:.. Most of the time you will be interessted what happens when a special function is started in a game.. The best way to do this is to exit the debugger, hit all switches necessary to start the function in the emulation, but get back into the debugger before or directly after you strike the last switch.. Use the TRACE command to log what addresses are executed during this function.. Unfortunately you can not log the content of a memory address with TRACE, so you don't know the bank of the code from $4000 to $7FFF, but you can search for the bytes of the code in the Game ROM to find out.. Another way to find functions inside a WPC ROM is to debug three routines (I named them call a bank function routines) which are in each and every WPC ROM.. These routines are used when another function is called.. As the target function could be within another bank, these routines care about switching the bank and calling the target function.. The JSR routines also care about restoring the previous bank if necessary and jumping back to the original calling code.. To find these routines search for the byte sequence 6E 9F 00 12 (=jmp [$0012]) in the System ROM, as this is always the last command of all three routines.. All three routines use a simple general purpose structure I named.. Pointer Structure (PS).. , this structure is used to point to functions (FPS) and data (DPS):.. word.. address of target.. byte.. bank of target.. #$FF means a System ROM or dynamically selected target.. The calls to the three routines are done very tricky with a FPS, or a pointer to one, directly behind the calling JSR, hence totally confusing disassemblers because of mixed code and data.. My Java package.. can create corresponding symbol files for DASMx, so the disassembler doesn't get confused,.. but.. there could also be some false positives (e.. in graphics).. Other weird FPS constructs are calls of functions in non-existant banks, in IJ L-7 of bank $18 (try PinMAME: WP 0011 18).. These FPS really work, as unused conductors, which depend on the ROM size, always have high voltage (=bit set).. For IJ L-7 bank $18 leads to bank $38.. Below is.. jmpPagedFunc.. in hex values and 6809 assembler with comments.. Hex values.. Code.. Comment.. jmpPagedFunc:.. 34 17.. pshs x,b,a,cc.. ; Push registers (entry values) on System stack (S-5).. AE 65.. ldx 5,s.. ; Load X from S+5:S+6 (S+5 was last System stack value when entering routine = pushed PC of calling code by JSR = address behind JSR).. EC 84.. ldd ,x.. ; Load D from X:X+1 (address of target function).. DD 12.. std Bank_Jump_Address.. ; Store D to $0012:$0013.. A6 02.. lda 2,x.. ; Load A from X+2 (bank of target function).. 2B 05.. bmi jmpPagedFunc_noswitch.. ; Check if special bank (bank = #$80 (=negative), #$FF is used for System ROM calls).. 97 11.. sta Current_Bank.. ; Store A to $0011 (=real memory, readable).. B7 3F FC.. sta WPC_RomBank_Selector.. ; Store A to $3FFC (=hardware register, switches bank through ASIC).. jmpPagedFunc_noswitch:.. 35 17.. puls cc,a,b,x.. ; Restore registers (entry values) from System stack (S+5).. 32 62.. leas 2,s.. ; Ignore PC of calling code as this is a bank JUMP (S+2).. 6E 9F 00 12.. jmp [Bank_Jump_Address].. ; Direct-Jump to address in $0012:$0013.. ; End of jmpPagedFunc.. jsrPagedFunc.. jsrPagedFunc:.. 32 7F.. leas -1,s.. ; Reserve additional byte on System stack for current/entry bank on cross-bank calls (S-1).. 34 47.. pshs u,b,a,cc.. EE 66.. ldu 6,s.. ; Load U from S+6:S+7 (S+6 was last System stack value when entering routine = pushed PC of calling code by JSR = address behind JSR = FPS address).. 37 06.. pulu a,b.. ; Pull A and B (=D) from new User stack U:U+1 (address of target function) (U+2).. A6 C0.. lda ,u+.. ; Load A from U (bank of target function) (U+1).. 2B 22.. bmi jsrPagedFunc_noswitch.. 91 11.. cmpa Current_Bank.. ; Compare with value in $0011 (current bank).. 27 1E.. beq jsrPagedFunc_noswitch.. ; If equal then directly call function.. EF 66.. stu 6,s.. ; Store changed U back to S+6:S+7 (adjusting return address (PC) of calling code on System stack).. D6 11.. ldb Current_Bank.. ; Load B from $0011 (=real memory, readable).. E7 65.. stb 5,s.. ; Store B to S+5 (the reserved byte on the System stack).. 35 47.. puls cc,a,b,u.. ; Restore registers (entry values) from System stack (now pointing to stored entry bank) (S+5).. AD 9F 00 12.. jsr [Bank_Jump_Address].. ; Subroutine-Jump to address in $0012:$0013.. 34 03.. pshs a,cc.. ; Push registers (function results #1) on System stack (S-2).. A6 62.. lda 2,s.. ; Load A from S+2 (stored entry bank).. E7 62.. stb 2,s.. ; Store B (function results #2) to S+2 (overwriting stored entry bank).. 35 87.. puls cc,a,b,pc.. ; Pull registers (function results) from System stack and return (pull PC = RTS) (S+3+2).. jsrPagedFunc_noswitch:.. stu 6,S.. ; Restore registers (entry values) from System stack (now pointing to reserved byte) (S+5).. 32 61.. leas 1,s.. ; Ignore additional byte on System stack (S+1).. ; Direct-Jump to address in $0012:$0013 (same bank = no bank handling), called function will RTS.. ; End of jsrPagedFunc.. jsrPagedFuncIndirect.. jsrPagedFuncIndirect:.. 34 57.. pshs u,x,b,a,cc.. ; Push registers (entry values) on System stack (S-7).. EE 68.. ldu 8,s.. ; Load U from S+8:S+9 (S+8 was last System stack value when entering routine = pushed PC of calling code by JSR = address behind JSR).. 37 10.. pulu x.. ; Pull X from new User stack U:U+1 (U+2), X now points to a Function Pointer Structure (FPS).. EF 68.. stu 8,s.. ; Store changed U back to S+8:S+9 (adjusting return address (PC) of calling code on System stack).. 2B 20.. bmi jsrPagedFuncIndirect_noswitch.. 27 1C.. beq jsrPagedFuncIndirect_noswitch.. E7 67.. stb 7,s.. ; Store B to S+7 (the reserved byte on the System stack).. 35 57.. puls cc,a,b,x,u.. ; Restore registers (entry values) from System stack (now pointing to stored entry bank) (S+7).. jsrPagedFuncIndirect_noswitch:.. ; Restore registers (entry values) from System stack (now pointing to reserved byte) (S+7).. ; End of jsrPagedFuncIndirect.. Show complete commented startup code and version update check.. Hints what everybody does wrong or understands wrong in the beginning.. (PULL PC, non-returning JSR).. The End?.. Of course this is not the end, if you know something about WPC ROMs that is missing or have a correction, more details or just want to help, then do not hesitate and use the contact link below..

    Original link path: /pinball/wpc_debugging.htm
    Open archive

  • Title: MC6809-MC6809E Microprocessor Programming Manual [M6809PM] - Table Of Contents - Maddes.net
    Descriptive info: MC6809-MC6809E 8-Bit Microprocessor Programming Manual [M6809PM/AD].. Motorola Inc.. , 1981.. Original Issue: March 1, 1981.. Reprinted: May 1983.. Last update:.. 2012-09-25.. Corrections.. Table Of Contents.. List Of Illustrations.. List Of Tables.. Legal Stuff.. Change log.. This is the Programming Manual for the 6809 microprocessor from Motorola Inc.. (now.. Freescale.. as of 2006).. It is Motorola Inc.. It can be freely obtained as a scanned PDF at.. Freescale's homepage.. under [Support ] Documentation Order Literature (=Literature Distribution Center) Search for description 6809 and with item status Active and Archive.. Another download location for M6809PM is the.. , which also has a copy of the original data sheet.. I htmlized.. sections 1-4.. plus appendices.. C.. D.. F.. , so you can easily search inside the text.. I tried to keep the original layout of the print where possible.. Also some corrections were made to the text.. Corrections are formatted like.. this.. If you think there are any legal concerns to this please contact me via the contact link.. And remember: Use all information at your own risk.. You can download all html pages in one.. archive file.. Table 4-4:.. PSHU.. Appendix A:.. PULU.. Appendix D:.. Branch Notes.. ASRA, ASRB, LSR, ORB.. SWI3.. (Thanks to.. Alex.. SECTION 1.. GENERAL DESCRIPTION.. Features.. Software Features.. Programming Model.. Index Registers (X, Y).. 6.. Stack Pointer Registers (U, S).. 7.. Program Counter (PC).. Accumulator Registers (A, B, D).. Direct Page Register (DP).. Condition Code Register (CC).. Condition Code Bits.. Half Carry (H), Bit 5.. Negative (N), Bit 3.. Zero (Z), Bit 2.. Overflow (V), Bit 1.. Carry (C), Bit 0.. Interrupt Mask Bits and Stacking Indicator.. Fast Interrupt Request Mask (F), Bit 6.. Interrupt Request Mask (I), Bit 4.. Entire Flag (E), Bit 7.. Pin Assignments and Signal Description.. MC6809 Clocks.. Oscillator (EXTAL, XTAL).. Enable (E).. Quadrature (Q).. MC6809E Clocks (E and Q).. Three State Controls (TSC) (MC6809E).. Last Instruction Cycle (LIC) (MC6809E).. Address Bus (A0-A15).. Data Bus (D0-D7).. Read/Write (R/.. W.. Processor State Indicators (BA, BS).. Normal.. Interrupt or Reset Acknowledge.. Sync Acknowledge.. Halt/Bus Grant.. Reset (.. RESET.. Interrupts.. Non-Maskable Interrupt (.. NMI.. Fast Interrupt Request (.. FIRQ.. Interrupt Request (.. IRQ.. Memory Read (MRDY) (MC6809).. Advanced Valid Memory Address (AVMA) (MC6809E).. 13.. Halt (HALT).. 14.. Direct Memory Access/Bus Request (.. DMA.. /.. BREQ.. ) (MC6809).. Busy (MC6809E).. 16.. Power.. SECTION 2.. ADDRESSING MODES.. Addressing Modes.. Inherent.. Immediate.. Extended.. Direct.. Indexed.. Constant Offset from Register.. Accumulator Offset from Register.. Autoincrement/Decrement from Register.. Indirection.. Extended Indirect.. Program Counter Relative.. Branch Relative.. SECTION 3.. INTERRUPT CAPABILITIES.. Fast Maskable Interrupt Request (.. Normal Maskable Interrupt Request (.. Software Interrupts (SWI, SWI2, SWI3).. SECTION 4.. PROGRAMMING.. Position Independence.. Modular Programming.. Local Storage.. Global Storage.. Reentrancy/Recursion.. M6809 Capabilities.. Module Construction.. Parameters..  ...   Locations.. 4-2.. 8-Bit Accumulator and Memory Instructions.. 4-3.. 16-Bit Accumulator and Memory Instructions.. 4-4.. Index/Stack Pointer Instructions.. 4-5.. Branch Instructions.. 4-6.. Miscellaneous Instructions.. A-1.. Operation Notation.. A-2.. Register Notation.. B-2.. B-3.. C-1.. Machine Code to Instruction Cross Reference.. D-1.. Programming Aid.. E-2.. F-1.. F-2.. Indexed Addressing Mode Data.. H-1.. H-2.. (taken from the last page of the manual).. Motorola reserves the right to make changes without further notice to any products herein.. Motorola makes no warranty, representation or guarantee regarding the suitability of its products for any particular purpose, nor does Motorola assume any liability arising out of the application or use of any product or circuit, and specifically disclaims any and all liability, including without limitation consequential or incidental damages.. Typical parameters can and do vary in different applications.. All operating parameters, including Typicals must be validated for each customer application by customer's technical experts.. Motorola does not convey any license under its patent rights nor the rights of others.. Motorola products are not designed, intended, or authorized for use as components in systems intended for surgical implant into the body, or other applications intended to support or sustain life, or for any other application in which the failure of the Motorola product could create a situation where personal injury or death may occur.. Should Buyer purchase or use Motorola products for any such unintended or unauthorized application, Buyer shall indemnify and hold Motorola and its officers, employees, subsidiaries, affiliates, and distributors harmless against all claims, costs, damages, and expenses, and reasonable attorney fees arising out of, directly or indirectly, any claim of personal injury or death associated with such unintended or unauthorized use, even if such claim alleges that Motorola was negligent regarding the design or manufacture of the part.. Motorola and.. are registered trademarks of Motorola, Inc.. Motorola, Inc.. is an Equal Opportunity/Affirmative Action Employer.. Literature Distribution Centers: (as of 1993 = print of manual).. USA:.. Motorola Literature Distribution; P.. O.. Box 20912; Phoenix, Arizona 85036.. EUROPE:.. Motorola Ltd.. ; European Literature Centre; 88 Tanners Drive, Blakelands, Milton Keynes, MK14 5BP, England.. JAPAN:.. Nippon Motorola Ltd.. ; 4-32-1, Nishi-Gotanda, Shinagawa-ku, Tokyo 141, Japan.. ASIA PACIFIC:.. Motorola Semiconductors H.. K.. Ltd.. ; Silicon Harbour Center, No.. 2 Dai King Street, Tai Po Industrial Estate, Tai Po, N.. , Hong Kong.. M6809 Wikipedia Article.. Dave's Old Computers.. Wouter's Page.. Keith's Home Page.. 2012-09-25:.. Appendix D, instruction ORB: typo in byte count for indexed mode, was 1+ correct is 2+.. Appendix D, instruction SWI3: corrected byte count from 1 to 2.. 2008-12-25:.. Appendix C, opcode 27: BEQ was misspelled BEG.. , 1981 (now.. Transferred into HTML by.. Matthias Maddes Bücher.. in 2006, 2007.. Use all information at your own risk..

    Original link path: /m6809pm/
    Open archive

  • Title: Freeware programs for your Windows system - Maddes.net - Stand: 2011-11-25
    Descriptive info: Freeware programs for your Windows system.. Es gibt viele gute und kostenlose Programme, dass man eigentlich kaum ein Programm kaufen muss, um den Windows-Alltag zu bewältigen.. Da ich immer wieder gefragt werde Was benutzt Du? , Was soll ich da nehmen? und Gibt's sowas nicht kostenlos? , habe ich mich einfach entschlossen eine kleine HTML-Seite darüber zuschreiben, um nicht immer alles wiederholen zu müssen :).. Nicht alle Tools haben professionelle Qualität, aber meist reicht eine eMail mit einer genauen Beschreibung des Problems an den Author und in der nächsten Version ist das Problem behoben.. (Ent-)Packer.. Text-Editoren.. Hex-Editoren.. Brenn-Programme.. Video / DVD.. Audio / MP3.. Verschlüsselung / Passwörter.. Datei-Integrität (Vollständigkeit).. Internet.. (Firewall, Browser, eMail inkl.. eMail-Verschlüsselung, Instant Messaging, VoIP, FTP, Web-Server, Homepage, HTML Editor, DynDNS, VNC, SSH, etc.. Anti-Viren-Programme.. Office / PDF / Finanzen.. Grafik / Foto / OCR / DTP / Diagramme.. Desktop / Zeit / Screen Capture.. Datei-Verwaltung / Explorer-Ersatz / Norton-Commander Klone.. System-Tools.. (XP-AntiSpy, Microsoft Powertoys, Hardware-Diagnose, Registry-Vergleich, Boot-Manager, etc.. Virtual Drives / CD/DVD Emulation.. Virtual Machines / PC Emulation.. Programmierung.. Need more?.. (Verweise zu anderen Software-Sammlungen).. Packers.. Text Editors.. Hex-Editors.. Burning Programs.. Encryption / Passwords.. File Integrity (Completeness).. (Firewall, Browser, eMail incl.. eMail-Encryption, Instant Messaging, VoIP, FTP, Web-Server, Homepage, HTML Editor, DynDNS, VNC, SSH, etc.. Anti-Virus-Programs.. Office / PDF / Financials.. Graphics / Photo / DTP / Diagrams.. Desktop / Time / Screen Capture.. Explorer-Replacements / Norton-Commander Clones.. (XP-AntiSpy, Microsoft Powertoys, Hardware-Diagnosis, Registry-Comparison, Boot-Manager, etc.. Programming.. Miscellaneous.. (Links to other software collections).. Aktuell werden getestet bzw.. ist bald geplant:.. /.. sind Programme zum Extrahieren von Dateien aus Archiven (ZIP, RAR, ACE, etc.. Sehr empfehlenswert ist.. , welches auch aktuelle RAR Archive entpacken kann.. Alternativen dazu sind.. IZArc.. TUGZip.. QuickZip.. FilZip.. ALZip.. InfoZips WiZ.. Als kostenpflichtige Lösung ist.. WinRAR.. hervorzuheben, welches sehr gut in Batch-Dateien funktioniert und auch eine.. komplette.. Verschlüsselung des Archivs inkl.. Dateinamen anbietet.. Zum Entpacken einer MSI-Datei reichen die Windows-Bord-Mittel vollkommen aus:.. msiexec /a filename.. msi TARGETDIR= %TEMP%\msi-extract /qb.. mit wesentlich mehr Funktionen als das normale NotePad, zum einfacheren Bearbeiten von Konfigurationsdateien und besonders für Programmierer.. Wer einen sehr guten Editor benötigt, dem kann ich nur die Shareware.. an's Herz legen, inkl.. Spaltenmodus und integrierten Hex-Editor.. Als gute Freeware-Editoren kann ich.. PSPad.. empfehlen, beide mit Spaltenmodus und Hex-Modus (bei Notepad++ über Plugin) empfehlen.. Auch.. ConTEXT Programmers Editor.. ist sehr funktionsreich und komfortabel.. Es gibt natürlich noch weitere, meist einfachere, Editoren wie.. Crimson Editor.. jEdit.. Programmer's File Editor.. Programmer's Notepad.. cEdit.. Scintilla and SciTE.. , etc.. zum Bearbeiten von binären Dateien, wie ROMs, Spieleständen und Ähnlichem.. Hier gibt es zum Glück eine ganze Reihe von kostenlosen Hex-Editoren, die alles Notwendige bieten, was man braucht:.. Free Hex Editor.. Tiny Hexer.. mpth_18.. exe.. ),.. HxD.. Notepad++ Plugin Hex Editor.. XVI32.. Hex Wizard.. HHDSofts Hex Editor Neo.. HexEdit.. Hexcellent2.. Unglaublich aber wahr, es gibt eine (abgespeckte) kostenlose Version vom Programm.. DeepBurner.. , welches sich sehr stark an.. Nero Burning ROM.. anlehnt.. Im Zusammenspiel mit anderen Programmen sind die Limitierung aber alle leicht umgehbar.. Zum Erstellen und Brennen von ISO Images empfiehlt sich.. ImgBurn.. Auf der Homepage von.. Nero.. gibt es auch noch ein kostenloses Programm, mit dem man ohne grosse Mühe auch normalen Windows-Benutzern Rechte zum Brennen vergeben kann: NeroBurnRights (unter Support Vorherige Versionen Nero 6 Werkzeuge und Hilfsprogramme).. Zum Identifizieren von Rohlingen kann man.. DVD Identifier.. und CDR Identifier (.. Info.. , Mirror.. ) verwenden, oder das InfoTool von.. (unter Download - Hilfsprogramme - Info Tools).. Innerhalb von Nero Burning ROM kann man auch den Hersteller ermitteln, indem man unter Rekorder - Disk-Info die Daten für das Laufwerk auffrischt und dabei die Umschalt-Taste (Shift) gedrückt hält.. Diese Programme muss man regelmässig aktualisieren, da immer wieder neue Rohlinge produziert werden und sich auch die Kennzeichen ändern können.. Eine fast vollständige Marktübersicht von Rohlingen bekommt man beim.. CDR-Forum.. , wo man auch die meisten Produkte bestellen kann.. Um Video-DVDs zu kopieren, müssen diese erst mal auf Rohling-Grösse gestutzt werden, dafür ist.. V.. hrink.. das beste Programm, es liest die Video-DVD aus, entfernt dabei die CSS-Verschlüsselung und auf Wunsch auch MacroVision und User Prohibitions.. Bei der Reduzierung der Daten, kann man auch manuell eingreifen, so dass zum Beispiel nur der Film beibehalten wird und dieser damit den ganzen Platz ausnutzen kann.. Zum Bearbeiten von Videos empfiehlt sich.. VirtualDub.. TMPGEnc.. VOBEdit und IFOEdit.. Mehr Information dazu auf.. Doom9.. Zum Anschauen von Film-Dateien ist das.. K-Lite Mega Codec Pack.. QuickTime Alternative.. eine einfache und runde Sache.. Mit dieser Sammlung benötigt man keinen separaten Player, und damit auch keinen Download, von.. QuickTime.. RealPlayer.. und Co.. und man erhält ein Abspielprogramm, welches mit allen Codecs zurecht kommt, inkl.. DVD/MPEG-2 mit AC3-Surround-Sound, und welches nicht gleich immer ins Internet will.. Um auch WMV-Dateien korrekt abzuspielen sollte man die Microsoft.. WMV9-Codecs.. installieren oder den.. Media Player 10.. mit noch aktuelleren Codecs.. Wer doch lieber den originalen QuickTime-Player verwenden möchte, kann das blöde Popup zum Updaten auf die Pro-Version ganz leicht verbannen, einfach die Uhr ein paar Jahr vor setzen, Quicktime starten, das Popup mit später abspeisen, Quicktime beenden und das Jahr wieder zurücksetzen, nun hat man ein paar Jahre Ruhe davor :).. Ein weiterer sehr guter Player für Videos, der auch die Videos in ein Netzwerk streamen kann, gibt es bei.. VideoLan.. Man sollte diesen zusammen mit dem K-Lite Mega Codec Pack verwenden, da der VLC-Player, im Gegensatz zum Media Player Classic und BS Player, auch Overlay unterstützt, so dass man das Video als Vollbild auf dem Fernseher sieht, während der Desktop auf dem normalen Monitor frei zugänglich bleibt.. Um eine CD in MP3-Dateien zu wandeln benötigt man zwei Programme:.. Exact Audio Copy (EAC).. zum Rippen der CD auf die Festplatte als WAV-Datei, und.. LAME.. zum Umwandeln in eine MP3-Datei (.. Download-Links.. oder bei.. Rarewares.. Als Alternative für EAC bietet sich auch.. CDex.. an.. Bei Verwendung von LAME sollte man im Ripper (hier EAC) als Parameter für LAME --preset extreme angeben.. Mit dieser Einstellung erhält man sehr hoch-qualitative MP3s und die etwas grösseren Dateien (ca.. 5MB für 4 Minuten) stellen bei heutigen Festplatten-Grössen und Hardware-Playern mit mehr als 256MB kein Problem mehr dar.. Weiterhin lohnt sich auch ein Blick auf das Format.. OggVorbis.. , was seit 2004 von immer mehr Hardware-Playern abgespielt wird.. Es handelt sich dabei um ein weiterfortgeschrittenes Format als MP3 und ist komplett lizenzfrei und Open-Source.. Man sollte tunlichst eine Normalisierung vermeiden, und lieber die komplette CD mit.. MP3Gain.. s Album Gain auf einen normalen Level von 89db bringen, dann muss man auch auf der Party nicht immer leiser und lauter machen :) Mehr über diese Technik auf.. ReplayGain.. Um nicht alle Daten der CD selbst einzugeben, holt man diese Daten aus dem Internet von.. FreeDB.. (EAC unterstützt dies).. Oder man lädt sich den aktuellen Stand von FreeDB auf den eigenen Rechner und verweist EAC auf die lokale Version, und nur wenn der Eintrag darin nicht vorhanden ist wird online gesucht.. Falls die CD auch dort nicht bekannt ist, bitte alle Daten selbst erfassen, korrekturlesen und an FreeDB übermitteln.. Danke.. Für die Bearbeitung von.. ID-Tags.. einer MP3-Datei ist.. MP3 Tag Studio.. extrem nützlich.. Ein weiteres Programm ist.. The GodFather.. alter Link.. ) welches besonders beim strukturiertem Ablegen von MP3-Dateien hilfreich ist, da es MP3-Dateien anhand der Tags in einen Zielordner einsortieren kann.. Ich persönlich finde aber die indirekte Arbeitsweise des Programms umständlich (erst Bearbeiten, dann extra Updaten) und ich habe auch keine Möglichkeit gefunden Tags aus dem Dateinamen zu erstellen.. Abspielen lassen sich MP3-Dateien mit dem Windows-eigenen MediaPlayer oder mit dem kostenlosen.. WinAMP.. , welcher sich auch für kleine Korrekturen der ID-Tags eignet.. Für Parties lohnt sich der Blick auf den sehr günstigen.. MP3-DJ.. , welcher von einem Lied ins andere überblenden kann.. Für Profis gibt es teure Player, welche die Lieder der Playlist analysieren und beat-abhängig die Lieder überblenden und auch mit Pitch-Angleichung arbeiten (z.. Mix Meister [Pro].. Ehrlich gesagt fällt dies auch nur in Discotheken unangenehm auf, und nicht auf einer privaten Party.. Zum Schneiden Bearbeiten von Musik-Dateien lohnt sich ein Blick auf.. Audacity.. Zum Schneiden einer MP3-Datei empfiehlt sich auch.. mp3DirectCut.. Manchmal begegnet man auch anderen Formaten, wie z.. dem verlustfreien.. FLAC Codec.. , dann hilft einem meistens.. Foobar 2000.. weiter, um diese in MP3 oder ein anderes Format zu konvertieren.. Hier gibt's nur eins:.. (ganz kurz: GPG), welches auch mit PGP-Schlüsseln arbeiten kann.. Ab Version 1.. 1 gibt es dieses als Windows-Installer, welcher bereits die Datei ICONV.. DLL für die Internationalisierung enthält.. Bei früheren Versionen musste man diese DLL noch selber aus.. LIBICONV-n.. n.. DLL.. ZIP.. kopieren.. Falls notwendig kann man auch alte PGP 2.. x-Schlüssel verwenden, dazu benötigt man aber die kostenlose IDEA.. Einen guten Leitfaden zur Konfiguration von GnuPG bietet folgende.. EnigMail-Seite.. oder das entsprechende.. HowTo.. eines Freundes.. Über die Umgebungsvariable GNUPGHOME kann man den Speicherort der Schlüsselringe ändern.. Als GUI für die Schlüsselverwaltung und als Einbindung in den Windows Explorer empfiehlt sich.. Man kann mit GnuPG nicht nur Dateien für die Echtheit signieren und/oder verschlüsseln, sondern auch seine E-Mails.. Siehe dazu auch den E-Mail-Paragraphen im.. Internet-Abschnitt.. Mehr Informationen über Verschlüsselung findet man bei der.. , wo man auch einen zertifizierten Schlüssel erhalten kann, und beim.. GNU Privacy Project.. (mit Unterstützung vom Bund).. Kais Raven Homepage.. gibt es neben Informationen auch noch weitere Tools.. Tipp zu einigen Tools:.. Wenn GnuPG nicht in das Standard-Verzeichnis installiert wurde, dann haben Programme, welche über die GPGme-Bibliothek auf GnuPG zugreifen, Probleme GnuPG zu finden (z.. invalid crypto-engine ).. Dazu gehört z.. auch das GnuPG-Plugin für Outlook von.. GPG4win.. Dafür habe ich aber einen kleinen.. Workaround.. gefunden und auch ein kleines Programm dafür programmiert:.. GPGselector.. (22KiB inkl.. C# Sourcecode).. Man kann diesen Programmen helfen, in dem man einen zusätzlichen Registry-Eintrag im Schlüssel HKLM\Software\GNU\GNUPG anlegt.. Der Name ist gpgProgram und enthält den Pfad und Namen der GnuPG-Exe:.. [HKEY_LOCAL_MACHINE\Software\GNU\GNUPG] gpgProgram = D:\\Programme\\Security\\GnuPG\\gpg.. exe.. Um private Daten auf der Festplatte vor Zugriff zu schützen (z.. nach Diebstahl, etc.. ) kann man diese mit GnuPG einzeln verschlüsseln, muss diese aber dann vor jeder Bearbeitung ent- und nachher wieder verschlüsseln.. Einfacher geht es, wenn man ein verschlüsseltes Laufwerk verwendet, hier ist.. TrueCrypt.. empfehlenswert.. TrueCrypt kann mit Container-Dateien arbeiten oder verschlüsselt eine ganze Festplatten-Partition, ausserdem bietet es versteckte Container.. Um sich alle Passwörter zu merken, und diese nicht jedem gleich ersichtlich im Adressbuch oder in einer Textdatei zu vermerken, gibt es Programme ähnlich TrueCrypt, die auch kleine verschlüsselte Container bieten und zusätzlich noch besondere Funktionen zum Kopieren von Benutzername und Passwort in Formulare bereitstellen.. Sehr einfach und komfortabel ist.. KeePass.. Alternativen sind.. PINs.. ALPass.. Auch PINs kann man wie KeePass auf einem USB-Stick installieren, einfach entpacken und in der Datei PINs.. ini den Wert SaveSettingsToRegistry auf 0 (Null) setzen.. Dateien können bei einem Download aus dem Internet oder auf einer CD/DVD fehlerhaft sein, z.. durch Verbindungsprobleme, gealterten Rohlingen bzw.. schlechtes Brennen oder einfach auch nur durch Kratzer.. Hier helfen SFV- und MD5-Dateien, welche Checksummen für alle Dateien des Downloads oder der CD/DVD enthalten.. Mit den Programmen.. QuickSFV.. hkSFV.. (wird nicht mehr weiter entwickelt) können diese Checksummen-Dateien verwendet und die anderen Dateien auf Korrekturheit geprüft werden.. Für eigene Zwecke (Downloads, CD/DVDs) können eigene SFV- und MD5-Dateien erstellt werden.. Das ursprüngliche MD5SUM und SHA1SUM findet man bei den.. GNU Win32 coreutils.. Wer noch andere Checksummen (SHA-256, etc.. ) für Dateien berechnen oder kontrollieren will, tut dies sehr einfach und gut mit.. Auch Corzs.. bzw.. Simple Checksum.. sind einen Blick wert.. Das Dateiformat von MD5-Checksummen:.. Das Format wurde durch GNU's MD5SUM definiert.. Auf der.. Man-page zu MD5SUM.. ist bei der Option -c / --check beschrieben das binäre Dateien mit einem Sternchen ( * , Asterisk) gekennzeichnet werden, ansonsten handelt es sich um Text-Dateien.. Bei Text-Dateien werden die Zeilenenden (EOL) nicht berücksichtigt, so dass die Checksumme plattform-unabhängig ist:.. Windows MD5SUM hashes (EOL = CRLF):.. 61e0f374c1b9b2de4115e2a7eda4a967 ANT.. (Text).. b9ae8b769b73835411c82ff950d1e103 *ANT.. (Bin).. Linux MD5SUM hashes (EOL = LF):.. 61e0f374c1b9b2de4115e2a7eda4a967 *ANT.. Firewall.. Wer heute ohne Personal Firewall auf seinem Rechner ins Internet geht ist selber Schuld, egal ob ein Router dazwischen steht oder nicht (und man sollte auch sein.. WLAN richtig absichern.. Einerseits werden Betriebssystem-Lücken abgeschottet und andererseits bemerkt man wenn Programme ungewollt ins Internet senden wollen.. Kostenlos und simpel ist.. Check Points.. ZoneAlarm.. kostenloser Download der ganz einfachen Version im Shop.. Sehr mächtig (Packetfilter auf Port-Ebene) ist die.. Sunbelt Kerio Personal Firewall.. (früher von.. Kerio.. ), aber leider hat die Firma Sunbelt einen Scientology-Background (.. Founder.. Sjouwerman.. ), bei Kerio ist da nichts bekannt.. Nützliche Infos zu den Ports gibt es bei.. WikiPedia.. GRC.. Browser.. Zu empfehlen ist der Browser der.. Organisation.. mit dem Projektnamen Firefox , von den Grundeinstellungen sicherer als der Internet Explorer, und bietet Angreifern weniger Angriffsfläche schon aufgrund des fehlenden ActiveX.. Zusätzlich sollte man das PlugIn.. NoScript.. installieren, damit man Scripte und andere Objekte nur explizit für bestimmte Seiten zulässt.. Falls mal Probleme mit Mozilla auftreten, z.. nicht funktionierende Mail-Links, dann erstmal nach Updates für Mozilla und alle Addons suchen und installieren.. Browser PlugIns.. Was immer aktuell gehalten werden sollte sind.. FlashPlayer.. ShockWavePlayer.. Flash Full_Installer befinden sich unter.. http://fpdownload.. macromedia.. com/get/flashplayer/pdc/.. version / setupname (Version z.. 11.. 102.. 55, Setupname: install_flash_player_[ax_]64bit.. exe und install_flash_player_[ax_]32bit.. exe).. Oder alle Varianten als Archiv über die Seite.. Archived Flash Player versions.. eMail und eMail-Verschlüsselung.. Auch hier bietet die.. mit dem Projekt Thunderbird , eine hervorragende Lösung mit sehr sicheren Grundeinstellungen.. Ab Thunderbird 3 kann man ein Tab oder Fenster nicht mehr mit der ESC-Taste schliessen, dafür gibt es aber das Addon.. Close tab on ESC.. Um verschlüsselte eMails zu versenden (man schickt ja auch private Briefe verschlossen per Post und besteht auf das Postgeheimnis) steht das ausgereifte Addon.. zur Verfügung, welches hervorragend mit GnuPG (.. siehe oben.. ) funktioniert.. Einen guten Leitfaden zur Konfiguration von GnuPG bietet.. diese Seite.. von EnigMail.. Für Outlook empfiehlt sich das Gesamtpaket.. gpg4win.. mit dem Outlook-PlugIn.. GPGol.. (gpgol.. dll).. Die GPGol Version 0.. 10 hat ein Problem wenn GnuPG nicht im Default-Verzeichnis installiert ist, dafür habe ich aber einen kleinen.. gefunden.. Auch für Outlook Express gibt es ein GnuPG-PlugIn namens.. GPGoe.. Obwohl man von Outlook Express die Finger lassen sollte, da es ähnlich dem Internet Explorer ein riesengrosses Scheunentor für Viren, Trojaner und andere unerwünschte Software ist.. Und beim Thema eMail sollte man auch mal den.. Leitfaden zum Richtigen Antworten.. redirect.. ) mal gelesen haben.. Dieser ist zwar für das Usenet bzw.. Newsgroups geschrieben, wo viele Mails und Menschen zusammenkommen, aber enthält viele Themen über die man sich mal kurz Gedanken machen sollte.. Bei persönlichen Mails mit nur wenigen Empfängern ist das Antworten oberhalb der vorherigen Mail vorzuziehen, da man davon ausgehen kann, dass alle Beteiligten im Thema sind.. Wer seine eMails auf einem eigenen Rechner verwalten will, der sollte sich den.. Hamster.. von Thomas G.. Liesner anschauen.. Dieser bietet einen lokalen POP3- und IMAP-Server, SMTP-Server und NNTP-Server.. Eine Hilfe-Datei zum Hamster findet man.. hier.. Vorkompilierte DLLs von.. OpenSSL.. für SSL/TLS-Zugriffe bekommt man entweder auf.. GNU Win32.. oder einem.. Download Mirror.. des.. Indy Projektes.. (0.. 8),.. Martins Hamsterseite.. 7) oder  ...   sind nicht zur Prävention gedacht, sondern primär für den Fall einer Verseuchung, also nach dem Befall.. Für die Prävention ist eine Firewall sinnvoll, zum Abschotten von Betriebssystem-Lücken und Entdecken von Programmen die ungewollt ins Internet senden wollen, ausserdem eine sicher Konfiguration von Browser und eMail-Programm und vor allen Dingen ein Benutzer, der weiss was er tut und weiss dass er nicht allein im Internet ist, auch wenn er alleine in seinem Zimmer sitzt.. Im Zusammenhang mit Anti-Viren-Programmen muss man auch.. AdAware.. erwähnen, welches sogenannte Spyware entfernt, also Programme die das Surf-Verhalten protokollieren und versuchen einem entsprechende Werbung anzuzeigen, aber auch einige welche die Startseite des Internet-Explorers verbiegen.. Ähnliches macht auch.. Spyware-Blaster.. , welches als unsicher bekannte ActiveX-Komponenten deaktiviert und damit einen Befall verhindern kann.. Auch das Tool.. HijackThis.. untersucht den Rechner und entfernt Eingriffe in die Internet Explorer Konfiguration.. Für all diese Programme gilt: Immer auf den aktuellen Stand halten und aktualisieren, denn es kann nur das bekämpft werden, was das Programm auch kennt.. Kein Geld für das teure Office-Paket von Microsoft, weil schon alles für Windows selbst draufgegangen ist?.. Kein Problem, mit.. OpenOffice.. org (OOo).. gibt es eine kostenlose Alternative, die sich nicht hinter MS Office verstecken braucht.. Die Kompatibilität zu MS Office ist gut, ausserdem wurde das Open Document Format (ODF) zum ISO Standard ernannt.. Thesaurus, Wörterbücher, etc.. können über den Datei-Wizard installiert werden, die heruntergeladenen Zip-Dateien kann man wegsichern für eine spätere Offline-Installation.. deutschen Rechtschreibseite.. gibt es detailierte Informationen wie die Rechtschreibprüfung von OOo funktioniert; die Sprache wird über die Zeichen-Formatierung angegeben, so kann jedes einzelne Wort einer Sprache zugeordnet werden.. Es gibt auch eine.. deutsche Version.. der.. portablen Variante von OOo.. Um unter MS Office die Dokumente von OpenOffice.. org zu öffnen gibt es den kostenlosen.. ODF-Konverter.. Ein Plug-in von Oracle kostet dagegen viel zu viel Geld für Privatpersonen.. Acrobat Reader.. ist das Anzeige-Programm für PDF-Dateien, welche zur darstellungsgetreuen Wiedergabe von Druckseiten verwendet wird (.. Adobes FTP-Site.. mit allen Downloads).. Im Internet werden meist Handbücher in diesem Format zum Download angeboten.. Um das Starten des Adobe Acrobat Readers zu beschleunigen kann man.. PDF SpeedUp.. verwenden.. Um PDF-Dateien selbst zu erzeugen empfiehlt sich der.. PDF Creator.. Der Source Code kann über die.. Projekt Homepage.. bezogen werden.. Zusätzlich muss man.. GhostScript GPL.. installieren.. Zur Analyse von bestehenden PDF-Dateien ist.. Ingo Schmökels PDF-Analyzer.. gut geignet.. Zum Verkleinern von nicht komprimierten PDF-Dateien kann man dann den.. Free PDF Compressor.. Wer seine Finanzen und seine Bank-Geschäfte (neu-deutsch: Banking) auf dem Rechner verwalten will, der sollte sich.. GNU Cash.. anschauen, welches auch HBCI unterstützt.. Einen kostenlosen Währungsumrechner gibt es auch mit.. Currency Converter 2.. Beim Erlernen des 10-Finger-Systems hilft einem das kostenlose.. Tipp10.. Als Bildbearbeitungsprogramme bietet sich.. Paint.. NET.. an, welches in Zusammenarbeit mit Microsoft als Ersatz für Paint erstellt worden ist.. NET benötigt das.. NET Framework 2.. Zum reinen Betrachten von Bildern sind.. IrfanView.. (mit vielen.. XnView.. ALSee.. JAlbum.. und Googles.. Picasa.. gut geeignet.. Mit diesen Programmen können auch rudimentäre Änderungen am Bild vorgenommen werden (Drehen, etc.. ) inkl.. einer bescheidenen Funktion zum Entfernen von roten Augen.. Wobei JAlbum und Picasa eher Photo-Alben sind, also nur ein reiner Betrachter, und auch Alben für das Internet erstellen können.. Für IrfanView gibt es auch das OCR-Plugin.. Kadmos.. um deutschen und/oder englischen Text in Bildern/Graphiken zu erkennen.. Zum Anzeigen, Bearbeiten und Löschen von EXIF-Informationen in Digitalkamera-Bildern, inkl.. des darin enthaltenen Vorschau-Bildes, bietet sich.. Exifer.. Günstige DTP-Programme wurden in der c't-Ausgabe 13/2004 getestet.. Kostenlos waren dabei das Open-Source-Programm.. Scribus.. und, nur bei privatem Gebrauch, das DTP-Programm.. Ragtime Privat.. Nachträglich wurden in anderen Ausgaben noch das günstige Metis Internationals.. Desktop Publisher Pro.. und Dahl Softwares.. GTP.. (Demoversion = Freeware für privat?) erwähnt.. Für Scribus sollte man zusätzlich.. Als kostenloses Vektor-Zeichenprogramm empfiehlt sich.. InkScape.. , was zwar (noch?) nicht an FreeHand herankommt (Juni 2006), aber stetig mehr und mehr dazu lernt.. Für Fluss-Diagramme und Ablaufpläne eignet sich das Open-Source-Projekt.. Dia.. Windows Version.. ), welches auch Visio-XML-Dateien importieren kann.. Ein anderes kostenloses Tool, welches aber nur in einem komplett eigenen Format speichert, ist.. MeeSofts Diagram Designer.. Sogenannte Mind Maps für das Brainstorming kann man mit.. FreeMind.. erstellen.. Zum Umrechnen von Einheiten jeglicher Art eignet sich der.. Einheitenumrechner von Software-Factory.. Dicom Unit Conversion Calculator.. Auch Online gibt es.. viele Möglichkeiten.. Mit.. TClock.. dem Nachfolger.. TClock2.. kann man das Aussehen der Uhr in der Taskleiste nach eigenem Belieben anpassen, ausserdem bietet es die Funktionalität die Uhrzeit nach einem Zeitserver im Internet zu stellen.. Sehr nützlich unter Windows 9x/ME/NT, weil bei diesen kein Zeitsynchronisierungsdienst vorhanden ist.. Qlock.. kann zwar nicht die Uhr-Anzeige anpassen, kann dafür aber die Uhrzeit von anderen Zeitzonen anzeigen und bietet auch ein Uhrzeit-Korrektur durch Zeit-Server an.. Windows bietet die Möglichkeit einen Screenshot, auch Hardcopy genannt, vom aktuellen Desktop (Taste Druck/PrintScreen) bzw.. Fenster (Tasten Alt+Druck/PrintScreen) zu machen, was für die meisten Fälle ausreicht.. Wenn aber man für eine Dokumentation Bilder von Fenstern mit Menüs oder nur den Menüs braucht, dann geht dies nur bei einem Screenshot des kompletten Desktop, weil die ALT-Taste normalerweise das Menü wieder schliesst.. Danach muss man dann mit einem Grafik-Programm den gewollten Bereich ausschneiden und wieder abspeichern.. Will man sich diese Ausschneide-Prozedur sparen, oder auch mal den Mauszeiger mit auf dem Bild haben, oder eine Sequenz von Screenshots machen, dann benötigt man ein fähiges Screen Capture Programm.. Sehr empfehlenswert ist hier.. Mousers Screenshot Captor.. Dieser bietet verschiedene Arten den einzufangenen Bereich zu bestimmen inkl.. des kompletten Desktops einer Mehrmonitor-Konfiguration.. Auch der Mauszeiger kann eingefangen werden, wenn nicht noch durch die Maus der Bereich selektiert werden muss, also beim Desktop, dem aktiven Fenster oder einem festen Bereich.. Zusätzlich zu den vorkonfigurierten Tastenkombinationen für die Druck-Taste kann man noch eigene Tastenkombinationen frei definieren.. Die Screenshots werden direkt auf Festplatte gespeichert und können anschliessend direkt im Programm weiterverarbeitet werden, z.. grafische Objekte hinzufügen (Mauszeiger, Rahmen zum Hervorheben von Bereichen, Textnotizen mit Pfeilen einfügen), kopieren des Bildes in das Clipboard, Bild ausserhalb oder innerhalb der Selektion verschwimmen lassen, etc.. Ausserdem ist der Screenshot Captor sogar ohne Installation lauffähig, wenn man möchte einfach entpacken und starten.. Als Ergänzung ist.. Screen Grab Pro.. zwar nicht gerade sehr komfortabel bzw.. funktionell, aber es hat eine besondere Funktion mit der man auch versteckte Fenster einfangen kann (Menü Current Windows ).. Ein weiteres gutes ScreenCapture-Programm ist.. MWSnap.. Viele alte DOS-Veteranen schwören auf den Norton Commander.. Wer sowas für Windows benötigt, wird bei.. MuCommander.. oder dem.. Free Commander.. fündig.. Falls diese einem nicht zusagen oder zu wenig Funktionen bieten, dann sollte man sich mal die geniale Shareware.. Total Commander.. (kurz TC) mit seinen.. AddOns.. anschauen.. Eine TC-Installation kann man auch ganz leicht auf einen.. USB-Stick.. übertragen.. Interessante Plugins sind die Packer.. IMaGinator von AZE.. für Floppy-Images,.. ISO Plugin.. MSI Plugin.. und die Erweiterung.. Tree Copy Plus.. sowie die Filesystem-Erweiterung.. Ext2+Reiser.. Um TC bis ins letzte zu konfigurieren kann man die WINCMD.. INI manuell ändern oder über die.. Ultra TC Editors.. Besondere Funktionen mit Total Commander ganz einfach:.. Um Dateien aus vielen Unterordnern in einen Zielordner zu kopieren/verschieben, einfach in den Ordner mit den Unterordnern gehen und im Menü Commands Branch View setzen, Dateien selektieren, kopieren bzw.. verschieben auswählen und die Option Auto-rename target files aktivieren.. Löschen von leeren Unterordnern ist in einer.. Forum-Nachricht.. beschrieben.. Zum Umbenennen von Dateien nach einem bestimmten Muster bietet.. RenameIt.. jede Menge Möglichkeiten.. Joe.. bietet die Möglichkeit viele Dateien auf einmal umzubenennen.. Es bietet nicht so weitreichende Möglichkeiten wie RenameIt, ist dafür aber auch am Anfang schneller zu verstehen.. GNU tools wie grep Co.. kann man auch für Windows bei.. und in der.. finden.. XP-Antispy.. bietet eine einfache Oberfläche um sicherheitsrelevante Einstellungen in der Registry vorzunehmen, ohne das man dafür den Registry-Editor benutzen muss und evtl.. aus Versehen falsche Einstellungen vornimmt.. Ein weiteres Tool zum einfacheren Konfigurieren von Windows XP ist TweakUI aus den.. Microsoft Powertoys.. Mit diesem kann man sehr viele Dinge, die sonst nur umständlich in der Registry geändert werden können, einfach mit einem Mausklick verändern.. Für Windows 9x bis 2000 gibt es die ältere Version.. TweakUI1.. Wem das Aktivieren von Windows nach jeder Hardware-Änderung zu lästig ist, kann dieses mit AntiWPA abschalten.. Wer P2P-Software verwendet hat mit dem XP Service Pack 2 meist Verbindungsprobleme.. Abhilfe schafft hier das kleine Tool.. Event ID 4226 Patcher (4226 fix).. Eine kostenlose Hardware-Diagnose bietet.. System Information for Windows.. sowie.. HWInfo32.. Leider gibt es keine kostenlose Version mehr von.. Everest.. (ehemals AIDA32).. Um Veränderungen an der Registry und an der System-Partition durch die Installation oder durch das Starten eines Programms herauszufinden, empfiehlt sich.. RegShot.. (russische Seite,.. englische Übersetzung.. ) oder auch.. TrackWinstall.. Mit diesen kann man erst den Ursprungs-Zustand aufnehmen, dann das Programm installieren, den neuen Zustand aufnehmen und mit dem Ursprungs-Zustand vergleichen.. Um herauszufinden warum und wo die Festplatte mal wieder zugemüllt ist und kein Platz mehr vorhanden, hilft SplashSofts kostenloses.. RidNacs.. , welches den Anteil eines Ordners am Datenvolumen einer Festplatte numerisch und graphisch darstellt.. WinDirStat.. ist dabei sehr hilfreich.. Um CD/DVD-Laufwerke per Programm zu Öffnen und zu Schliessen empfiehlt sich.. Massig kostenlose und hervorragende Tools gibt's bei.. SysInternals.. , von einer sehr genauen Auflistung der Programme im Autostart , Protokollierung der Registry- und Datei-Zugriffe von Programmen bis zur Änderung der SSID eines NT-Systems oder der Volume-ID eines Laufwerkes.. Die.. Tools von Matthias Withopf.. und das Software-Angebot der deutschen Computer-Bibel.. c't.. sind auch sehr hilfreich.. CPUTempWatch, PerfWatch und Core2MaxPerf zur Messung der CPU-Temperatur und -Auslastung sowie zur 100% Auslastung von Intel Core CPUs.. HDiskPerf und HDiskDefrag zum Defragmentieren von Festplatten.. ToolsAndMore.. (vorher.. Lab1.. ) bietet viele nützliche Programme für die üblichen Windows-Arbeiten.. Um Partitionen einzurichten (neben FDISK und der NT Datenträgerverwaltung), verlustfrei zu verändern und zum Sichern der Partionen empfiehlt sich die kostenfreie Sammlung.. Parted Magic.. Bestehend aus aktuellen Versionen von.. GPartEd.. zum Umpartitionieren und.. Clonezilla.. zum Sichern und Wiederherstellen.. Eine ähnlich gute Sammlung ist die.. SystemRescueCd.. Als kostenpflichtige Lösung zum Sichern ganzer Partitionen in ein Image empfiehlt sich.. Acronis.. True Image.. Knoppix.. ist empfehlenswert, manchmal dauert es aber bis eine aktualisierte Download-Version erscheint, ansonsten werden dazwischen einige Versionen in der c't veröffentlicht.. Als Boot-Manager empfiehlt sich das kostenpflichtige.. BootStar.. oder das in PartitionMagic enthaltene BootMagic.. BootStar erlaubt im Profi-Modus bis zu 15 Partitionen.. ??? Gibt's brauchbare Freeware?.. Manchmal werden unter Windows Dateien blockiert, wobei der Ursprung der Blockade nicht ersichtlich ist, hier hilft.. Unlocker.. weiter.. Es zeigt alle Sperren zu der Datei und ermöglicht auch deren Entfernung.. Um auch unter Windows virtuelle Desktops zu haben empfiehlt sich.. VirtuaWin.. Wer.. alle.. Attribute einer Datei ändern möchte, der sollte Romain Petges.. Attribute Changer shell extension.. ausprobieren.. Zum Einbinden von ISOs, Nero-Images, etc.. empfehlen sich.. SlySofts Virtual CloneDrive.. Daemon-Tools.. Persönlich gefällt mir.. VirtualBox.. sehr gut, insbesondere da alle Einstellungen in XML-Dateien gespeichert werden und man den Speicherort für diese über die System-Umgebungsvariable VBOX_USER_HOME definieren kann (Handbuch Kapitel Advanced Topic - Configuration Data ).. In der GUI sind zwar noch nicht alle Möglichkeiten erreichbar, so dass man beim Einrichten das Kommandozeilen-Programm VBoxManage verwenden muss (Handbuch Kapitel VBoxManage Reference ), aber daran wird gearbeitet.. Ausserdem man muss sich auch nicht registrieren, um die Software zu installieren, obwohl das Programm von einer kommerziellen Firma stammt.. Mit Version 1.. 8 konnte ich Acronis TrueImage 10 im abgesicherten Modus von CD starten und so Images erstellen, welche ich dann auf andere Partitionsgrössen spielen konnte.. Ein reines Open-Source-Projekt ist hingegen.. QEMU.. ), welches sich derzeit (Januar 2007) stark entwickelt.. Der Klassiker für Virtualisierung ist.. VMWare.. , deren Player und Server seit Mitte 2006 auch als kostenlose Variante mit Registrierung vorhanden sind.. Die beliebte Workstation-Variante bleibt weiterhin kostenpflichtig.. Ein weiteres kostenloses Programm mit Registrierung ist.. VirtualIron.. Zum Automatisieren von Aufgaben unter Windows ist.. AutoIt.. hervorragend geeignet.. Aus den AutoIt Skripten können auch ohne weiteres EXE-Dateien erstellt werden, die auch ohne ein installiertes AutoIt funktionieren.. Für.. Java.. bietet Oracle (ehemals Sun) kostenlos den Compiler im SDK an und jede Menge.. Dokumentation.. , insbesondere die.. Code Conventions.. Die Dokumentation gibt es auch im HTML-Help und WinHelp Format von.. Franck Allimant.. Eine gute und beliebte Java IDE ist.. Eclipse.. Als OpenBook gibt es.. Java ist auch eine Insel.. Tricks of the Java Programming Gurus.. C/C++ kompilieren in einer brauchbaren IDE geht mit.. Open Watcom.. Borland bietet alte Versionen von.. Delphi.. kostenlos an, einfach downloaden und kostenlos auf der Borland-Seite für das Produkt registrieren.. Ein anderer Compiler für C/C++ inkl.. weiterer Kommandozeilen-Tools ist.. MinGW.. , welches auch bei der Entwicklung von.. Mame.. PinMame.. verwendet wird.. Sehr ähnlich ist auch.. DJGPP.. Zum Komprimieren von Executables und DLLs empfiehlt sich.. UPX.. Als Versions-Kontrolle ist.. sehr empfehlenswert.. Microsoft stellt seit Januar 2005 kostenlose Versionen IDEs zur Verfügung, als sogenannte.. Die Express Editionen dürfen auch für kommerzielle Zwecke verwendet werden (siehe.. Auch wenn man bei der Installation zur Registrierung aufgefordert wird, so ist diese nicht zwingend, einfach die Meldung ignorieren.. Seit November 2007 gibt es die 2008er Express Editions (ab September 2008 als SP1), alle Sprachen gibt es auf der.. englischen Homepage.. Es empfiehlt sich die ISO-Images herunterzuladen, diese findet man auf der Download-Seite unter dem Link Offline-Installationspaket.. Es gibt auch eine Express Edition von Visual J# 2005, aber nur auf Englisch und dementsprechend auch nur auf der.. englischen 2005er Homepage.. Im Dezember 2006 ist.. Service Pack 1 für VS2005.. erschienen, auch für die Express-Versionen.. Es gibt dazu einige wichtige Microsoft Blogs:.. Allgemeine Informationen von Scott Guthrie.. lange Installationsdauer und hoher Speicherverbrauch.. SP1 in Setup-CD/DVD integrieren (Slipstream).. von Heath Stewart.. Die WCU-Verzeichnisse der Express Editionen ist bei allen Programmiersprachen identisch, nur bei [dem englischen] Visual J# sind noch zusätzlich die Visual J# Runtime Libraries dabei.. Bei 2008 haben VC++ und VWD gegenüber VB und VCS ein paar zusätzliche Dateien.. Möchte man alle Sprachen auf eine einzige CD/DVD brennen, dann kann man Platz sparen indem man das WCU-Verzeichnis nur einmal parallel zu den Programmiersprachen vorhält und in jeder Datei names SETUP.. SDB den Pfad zum WCU-Verzeichnis korrigiert (.. \WCU in den Paragraphen [VS Custom] und [CD Info]).. Ich habe damit alle deutschen und englischen Versionen inkl.. Infos und Updates auf eine einzige DVD-RW gebrannt.. Ab VC++ 2008 ist auch ein aktuelles.. Windows [Platform] SDK.. (seit 2009/08: Windows 7 SDK, vorher Server 2008) enthalten, trotzdem braucht man evtl.. auch ein.. ToyMakers DirectX Infos.. Um Assembler-Sourcen zu kompilieren gibt es.. 0 für Visual C++ 2005.. MASM darf.. ohne weiteres für kommerzielle Zwecke genutzt werden, siehe die dazugehörige EULA.. Einige ältere Assembler-Sourcen, z.. , kompilieren nur mit einer älteren Version von MASM.. Die Version 6.. 15 befindet sich im.. Processor Pack für Visual C++ 6.. Nach dem Download, die Installations-Datei in ein temporäres Verzeichnis entpacken und die folgenden Dateien in das BIN-Verzeichnis von Visual C++ kopieren, oder in ein separates Verzeichnis kopieren und dieses in den BIN-Pfad von Visual C++ via Extras/Tools -- Optionen/Options unter VC++ Verzeichnisse/Directories aufnehmen:.. DOC (normalerweise im VC-Hauptverzeichnis, aber es macht auch nichts when es im BIN-Verzeichnis ist).. Zur Verwaltung seiner Ahnen gibt es das Open-Source-Projekt.. GenealogyJ.. Dann auf Seiten wie.. OpenSource-DVD.. Priceless Ware.. WinTotal.. ZDNet.. WinFuture.. rumstöbern und auch über die üblichen Suchmaschinen findet man einiges..

    Original link path: /software/
    Open archive

  • Title: Debian - Maddes.net - Stand: 2011-10-06
    Descriptive info: Debian (primary 4.. 0 called Etch, and some 5.. 0 Lenny).. General.. MAN.. (All the information you need).. The Clock.. (RTC system clock, UTC local time, Dual-Boot issues with Windows).. Debian in a Virtual Machine.. APT / APTITUDE.. (Keeping your installation up-to-date).. CRON / ANACRON.. SSH.. File Systems.. User in chroot jail.. (for SSH, su, direct login, etc.. NTP.. (Set time/date from an internet time server).. IPTables.. (Firewall).. Resolv.. (Local Domain Names).. Automatic password generation.. WebMin.. Webserver Apache 2 with SSL.. FONC: FTP over SSH.. ProFTPd / SSL.. Teamspeak.. Subversion -plus- How to add a Daemon to the SysVInit system.. Other packages.. Wake-On-LAN / Wake-On-PCI (PME).. ShutDown On Idle.. Linux Kernel.. U-Boot.. The information here are for Debian 4.. 0 called Etch, but should also mostly apply to older versions like 3.. 1 Sarge, 3.. 0 Woody or newer versions like 5.. 0 Lenny.. All.. Debian releases.. have names from the movie Toy Story.. The most current release is stable and the next upcoming release is testing.. Sid is, and will always be, unstable (=in permanent development).. Debian Homepage.. Install Manual (4.. 0 Etch ).. Deutsches Debian Anwenderhandbuch.. Deutsche Debian HowTos.. Deutsches Debian Forum.. Deutsches Linux Wiki.. The Linux Documentation Project.. The Perfect Setup.. on HowTo Forge.. German OpenBooks from Galileo Computing.. , especially the Linux book is a good introduction for newbies.. Graphical Editor is nano, call:.. nano filename.. Display system load:.. top.. Services of the SysVInit system are controlled via.. invoke-rc.. d.. (see man invoke-rc.. d and.. To check if a service is running use:.. ps xa -f | grep servicename.. Switching consoles: ALT + Fn.. Finding pathes of a command:.. whereis command.. The language for the system is defined in.. /etc/default/locale.. , but you can also define another language in your profile at.. ~/.. profile.. by setting the environment variable like this.. LANG= en_US.. UTF-8.. LANG= en_GB.. LANG= de_DE.. If a locale is missing, then have a look at the man pages of locale-gen and read.. To reconfigure the keyboard settings just use.. dpkg-reconfigure console-data.. "Select keymap from arch list" (here arch means PC, Amiga, Mac, etc.. Info found.. To see the complete command line of a process use.. xargs -0 echo /proc/ pid /cmdline.. The manuals for all the tools of Debian/Linux are organised in pages, called man pages.. The command.. man.. will display these pages, to find out more about it call.. man man.. Sometimes you will find the following notation: something(8).. The value in parenthesis is the section.. Sometimes there can be several man pages with the same name, but in different sections (e.. crontab in 1 and 5).. To see the man page of a specific section use.. man section something.. This a highly important issue to avoid confusion by jumping times.. Please read on.. Every computer has a.. real time clock (RTC).. powered by a battery to keep track of date and time.. Even when the computer is off.. Normally date and time can be directly set in the computer's.. BIOS.. Most users will put the time of their.. time zone (local time).. into the BIOS clock, because they are used to human's way of thinking that What's the time? always refers to the local time.. Windows.. expects local time in the RTC.. due to non-technical people and backwards compatibility.. Linux and Unix systems expect.. UTC.. (Universal Time, Coordinated) in the RTC.. These different default behaviours lead to different times depending on what system you boot.. It seems that Windows can be told to interpret the RTC value as UTC (see.. ), but this does not look perfect yet.. So if a machine boots both, Linux and Windows, then tell Linux to interpret the RTC as local time in.. /etc/default/rcS.. :.. UTC=no.. Windows uses the RTC directly as its system clock.. Linux reads RTC only at boot time, then keeps track of date and time in its own system clock always in UTC.. On shutdown the RTC is written with current system clock.. The time for a user is then always displayed in their local time zone.. Internally everything is UTC.. The RTC can be read or written manually with.. hwclock.. To set the.. time zone of the machine itself.. use.. dpkg-reconfigure tzdata.. tzconfig.. is deprecated).. This will create the correct.. /etc/localtime.. with the time zone definitions from.. /usr/share/zoneinfo.. time zone of a user.. define it in his profile (e.. profile or ~/.. bashrc) via the variable TZ.. The variable has to be exported, so it can be used by all other programs.. tzselect.. helps to determine the corret setting.. If a stated time zone does not exist, then time is displayed in UTC.. It can also be changed temporarily:.. # date Sun May 3 08:01:56 CEST 2009 # export TZ=Europe/London ; date Sun May 3 07:02:01 BST 2009 # export TZ=Unknown ; date Sun May 3 06:02:08 UTC 2009 (Note: UTC!) # export TZ=America/New_York ; date Sun May 3 02:02:15 EDT 2009 # export TZ=America/Los_Angeles ; date Sat May 2 23:02:20 PDT 2009 # export TZ=UTC ; date Sun May 3 06:02:24 UTC 2009 # unset TZ ; date Sun May 3 08:02:29 CEST 2009.. Most Virtual Machines have their RTC set in local time.. Newer versions of VirtualBox allow to set the hardware clock of the VM as UTC directly.. So if a machine has a time offset after boot, then tell Linux to interpret the RTC as local time in.. When cloning a Debian machine, the new MAC addresses cause problems as they are assigned to a new interface, e.. eth1 instead of eth0.. This happens as Debian stores the interface assignments for each network card.. Debian bug #431190.. VirtualBox ticket #660.. Note that virtual machines are normally not accessible from outside, so the corresponding ports of the services have to be opened in the VM software.. Here's an example for.. on Windows.. Ports can be opened for all virtual machines ( global ) or only for specififc machines.. cd /d %ProgramFiles%\Oracle\VirtualBox SET port=22 SET service=ssh vboxmanage modifyvm VM name --natpf1 %service%,tcp,,%port%,,%port%.. To install the VirtualBox Guest Additions in Debian you have to install some build utilities and the correct linux headers.. Check with uname what kernel version is used, then install the corresponding packages.. uname -a Linux debian5.. 26-2-686.. #1 SMP Mon May 11 19:00:59 UTC 2009 i686 GNU/Linux aptitude install build-essential linux-headers-.. APT is the package manager to install, remove or update/upgrade your debian packages.. See man pages for apt, apt-get and sources.. list.. Recommendation:.. Use aptitude instead of apt for your package handling.. It keeps track of automatically installed packages along with the explicitly stated ones, so it can also remove these when you deinstall the explicitly installed ones.. The Debian maintainer's recommend it, because of its more smart decisions especially when updating to a new release.. To update your packages to the latest version, first update the package list, then upgrade:.. aptitude update aptitude upgrade.. As you should regulary update your packages, it would be great if most of these tasks were done automatically.. There is already a daily cron job in Debian ( /etc/cron.. daily/apt ) which updates the package list and downloads the latest packages according to your APT configuration.. Use apt-config dump to see your complete APT config.. It is wise to define the default release for APT too, so you do not accidentally upgrade to a new release.. Define additional values for the cron job in /etc/apt/apt.. conf like this: (see man apt.. conf and.. APT { Default-Release etch ; // Options for /etc/cron.. daily/apt Periodic { // same as defining APT::Periodic::xyz Update-Package-Lists 1 ; Download-Upgradeable-Packages 1 ; Autoclean 1 ; }; };.. This will daily clean up your package cache, update your package list and download the latest packages.. You still have to do the upgrade yourself, but all packages are already downloaded avoiding to wait for the downloads to finish.. It is.. recommended to do the upgrade itself automatically.. This way you would not see important hints or questions asked.. To test the new configuration just execute /etc/cron.. daily/apt (or start all daily cron jobs via run-parts --report /etc/cron.. daily ).. The time stamp files for the APT tasks can be seen in the directory /var/lib/apt/periodic.. If your server is.. running all the time, then check out the paragraph about CRON / ANACRON.. Information how to upgrade from one release to another can be taken from.. Lenny 5.. 0 Release Notes, Chapter 4.. CRON is a tool that checks every minute, if a scheduled script or program has to be executed.. See man pages for cron and crontab(5).. Unfortunately CRON doesn't care if it missed the schedule for the daily, weekly and/or monthly jobs.. These jobs are normally scheduled for 6 o'clock in the morning (see /etc/crontab ).. If your computer is not running at these time points, then the cron jobs will not be executed.. To fix this install the ANACRON package, which is intended to handle daily, weekly and monthly jobs for computers that are not running all the time (see.. aptitude install anacron.. To list the partitions of all hard disk and usb devices call.. fdisk -l.. To see what is currently mounted in the virtual file system call.. mount.. The most mounts are normally defined in /etc/fstab , mostly for automatic mounting.. To determine the file system type of the current mounts use.. df -T.. OpenSSH Homepage.. Debian package homepage.. Just install the openssh-server package:.. aptitude install openssh-server.. Configuration locations:.. /etc/ssh/sshd_config (Server).. Start/Stop:.. d ssh start|stop|restart.. My german SSH HowTo incl.. Putty-Config.. Setup public authentication.. Create a.. ssh folder in root's home:.. mkdir ~/.. ssh touch ~/.. ssh/authorized_keys chmod go-w ~ ~/.. ssh ~/.. ssh/authorized_keys.. Then enter all valid public keys for root login into ~/.. Use the same technique for every user you want to login with.. Then disable password logins and rhosts logins in /etc/ssh/sshd_config:.. RSAAuthentication no PasswordAuthentication no.. If a user gets the error No supported authentication methods available , then check the following:.. Check the corresponding log, which is normally /var/log/auth.. log (otherwise look up in /etc/syslog.. conf).. Passwords are disabled and user is not using his (correct) private key for login.. Passwords are disabled and user has no ~/.. ssh/authorized_keys file or wrong/no pub keys in it.. StrictModes is enabled and the user's home and ~/.. ssh directory are writable either by group or world.. Note that you have to check the user's home directory itself too!!!.. Log message for this is bad ownership or modes for directory.. A.. chroot jail.. locks up a user to a single directory (and its subdirectories), mostly to their own home directory.. This is another part in security concepts as the users can not access anything outside of this directory, so they can not effect the system itself.. If a user is put inside a chroot jail, then they do not have access to the normal programs and files too.. Therefore you have to create a new environment inside the jail, with all the necessary files (/etc co.. ) and the programs you want to allow the user to use (e.. ls, cat, echo, etc.. Don't forget to create a duplicate of the user's home directory inside the jail too.. You can put several users into the same jail or have a jail for each user (e.. their home directory).. The easiest way to enable chroot jails is to extend.. PAM.. with the libpam-chroot package (see Debian manual for.. chrooting the ssh users.. ):.. aptitude install libpam-chroot.. Then enable chroot jails for all direct shells by placing the following line at the end of /etc/pam.. d/login, /etc/pam.. d/ssh and /etc/pam.. d/su.. It is also possible to place it only inside /etc/pam.. d/common-session, but then this may affect other services and could cause unwanted side effects.. session required pam_chroot.. so.. Note:.. UsePrivilegeSeparation No is not necessary for SSH in a recent Debian, works well for me with openssh-server 4.. 3p2-9.. The more difficult part is to create a working jail.. There are lots of scripts floating around the internet, but there are several good packages inside the Debian repository.. With the packages debootstrap and cdebootstrap you can create a complete Debian installation inside a directory, which is normally way too much for chroot jail users.. That's where.. makejail.. comes in handy, as it allows to install Debian packages into the jail, can copy single commands with their dependencies and can filter files for the user:.. aptitude install makejail.. Now create a config for makejail according to its man page.. Try to install packages and only state single commands if necessary (e.. just a single command from a package is needed).. If you don't know in which package a command is included, then use dpkg -S /path/to/command (capital S!) to find out.. As packages can have dependencies it is recommended to let makejail install these too.. For a minimum jail you need the packages base-files and base-passwd, the files /etc/passwd and /etc/group plus a shell and the user's home directory.. For the files /etc/passwd and /etc/group define user/group filters for the jailed users and their primary groups.. Always include root into these filters too.. For the bash shell use the package bash.. Bash uses sed for its welcome message, so install the package sed too.. Another recommended package is coreutils with the most common commands (cat, cp, echo, ls, uname, etc.. To provide a graphical editor like nano the packages ncurses-base and ncurses-bin are necessary too.. To allow the jailed user to use.. 's edit functionality the command /usr/bin/scp must be inside the jail.. If the jailed user is maintaining a web site, then maybe /usr/bin/htpasswd is necessary to create web users for the web site.. A minimum jail configuration file for a user dumbuser could look like this:.. chroot="/home/jail01" packages=["base-files","base-passwd","bash","sed","coreutils","ncurses-base","ncurses-bin","nano"] useDepends=1 users=["root","dumbuser"] groups=["root","dumbuser"] forceCopy=["/etc/group","/etc/passwd","/home/dumbuser","/usr/bin/scp","/usr/bin/htpasswd"].. Call makejail with the configuration file to build the jail.. To complete the jail you have to create the device links inside its dev directory: (skip for Debian 5.. 0 or later).. cd /home/jail01/dev MAKEDEV generic.. The proc directory inside the jail is normally not needed, so you can unmount it and even delete it: (skip for Debian 5.. umount /home/jail01/proc rmdir /home/jail01/proc.. If proc is necessary for the jailed users, then add a corresponding mount in /etc/fstab for the next reboot as mentioned by makejail.. After you set up the jail test it with the.. chroot command.. Finally put the user in his jail by adding him to cat /etc/security/chroot.. conf with a line like this:.. dumbuser /home/jail01.. Don't forget to update the jails from time to time to apply security updates to them.. Update for Debian 5.. Due to changed system administration for terminals the following folders in the chroot must be correctly included: /dev, /dev/pts and /proc.. The easiest way is to mount-bind them to the real directories.. For testing it is sufficient to do this manually with the root user:.. mount -o bind -t proc /proc /home/jail01/proc mount -o bind -t udev /dev /home/jail01/dev mount -o bind -t devpts /dev/pts /home/jail01/dev/pts.. To have these binds permanently, e.. after a reboot, just add them to /etc/fstab:.. /proc /home/jail01/proc proc bind /dev /home/jail01/dev udev bind /dev/pts /home/jail01/dev/pts devpts bind.. If these mounts are not present a login attempt will create weird errors like these:.. fatal: ssh_selinux_getctxbyname: ssh_selinux_getctxbyname: security_getenforce() failed.. openpty: No such file or directory.. session_pty_req: session 0 alloc failed.. openpty returns device for which ttyname fails.. It is recommended to avoid.. ntpdate.. and use.. ntpd.. instead (see ntpd's man page), as ntpdate sets the clock in a hard and direct way.. If the  ...   as following, assuming your repositories are in /var/svn and using user svn and group svn (my changes are in orange):.. #! /bin/sh ### BEGIN INIT INFO.. # Provides: Subversion Repository Server Daemon # Required-Start: $local_fs $remote_fs # Required-Stop: $local_fs $remote_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # # Requirements: /var/run/svnserve/ with svn:svn # # Short-Description: Initscript for Subversion Repository Server Daemon # Description: Written for Debian 4.. 0 (Etch) to start/stop Subversion Repository Server Daemon # Used skeleton script of 4.. 0 (Etch).. # # There are some specialities: # 1.. A special SVN user and group is used and stated with # --chuid svn:svn (start-stop-daemon).. # Plus a fitting --umask 002 (start-stop-daemon).. # 2.. Make sure that the SVN user can write the pid file to # the folder /var/run/svnserve/ by setting it to svn:svn.. # Otherwise svnserve will not start.. # 3.. The variable definition of PIDFILE has been moved before # DAEMON_ARGS, as it is used as an argument for svnserve.. ### END INIT INFO.. # Author: Maddes - http://www.. maddes.. net/ #.. # Do NOT set -e # PATH should only include /usr/* if it runs after the mountnfs.. sh script PATH=/sbin:/usr/sbin:/bin:/usr/bin.. DESC= Subversion Repository Server Daemon NAME=svnserve PIDFILE=/var/run/svnserve/$NAME.. pid DAEMON=/usr/bin/$NAME DAEMON_ARGS= --daemon --pid-file ${PIDFILE} --root=/var/svn/.. SCRIPTNAME=/etc/init.. d/$NAME # Exit if the package is not installed [ -x $DAEMON ] || exit 0 # Read configuration variable file if it is present [ -r /etc/default/$NAME ].. /etc/default/$NAME # Load the VERBOSE setting and other rcS variables.. /lib/init/vars.. sh # Define LSB log_* functions.. # Depend on lsb-base ( = 3.. 0-6) to ensure that this file is present.. /lib/lsb/init-functions # # Function that starts the daemon/service # do_start() { # Return # 0 if daemon has been started # 1 if daemon was already running # 2 if daemon could not be started.. start-stop-daemon --chuid svn:svn --umask 002 --start --quiet --pidfile $PIDFILE --exec $DAEMON --test /dev/null \ || return 1 start-stop-daemon --chuid svn:svn --umask 002 --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \ $DAEMON_ARGS \ || return 2.. # Add code here, if necessary, that waits for the process to be ready # to handle requests from services started subsequently which depend # on this one.. As a last resort, sleep for some time.. }.. the rest is unchanged.. The script uses the undocumented parameter --pid-file , which is only mentioned on the.. Development Mailing List.. Make it executable via.. chmod a+x /etc/init.. Then implement it into the startup routines with.. update-rc.. d svnserve defaults.. Don't forget to create the directory.. /var/run/svnserve.. and change its owner/group via.. chown svn:svn /var/run/svnserve.. d svnserve start|stop|restart.. FireFly / mt-daapd.. ) in development for the next release ( testing as of 2007-08 called Lenny).. Supports M3U playlists when they are UTF-8 encoded, otherwise files with special characters (e.. german Umlauts) are ignored.. mldonkey.. ) as BitTorrent client with web interface.. (If you used my previous approach, please delete the init.. d file and deactivate it with update-rc.. d -f wake_on_pci remove.. It was working but not correctly implemented.. ).. First check that your BIOS supports Wake-On-LAN or Wake-On-PCI (PME) and make sure it is enabled.. As WoL functionality is always disabled in current kernels/drivers (2.. x) we need a tool to re-enable them after boot.. Just install the ethtool package for this:.. aptitude install ethtool.. The easiest way to enable WoL on all started NICs automatically, is to create a batch file in /etc/network/if-up.. d (see man interfaces).. Create the file /etc/network/if-up.. d/enable_wol :.. #!/bin/sh if [ ! -x /usr/sbin/ethtool ] then exit 0 fi if [ ${METHOD} = loopback ] then exit 0 fi /usr/sbin/ethtool -s $IFACE wol g.. Make it executable via chmod a+x /etc/network/if-up.. d/enable_wol.. Most current mainboards and NICs do not support the original WoL wakeup anymore, instead they use a PM Event (Wake-On-PCI) to start the computer.. Similar to the WoL functionality of NICs these PMEs are always disabled after Debian boot.. You can check the state with cat /proc/acpi/wakeup and searching for PCI0.. To enable it on every boot create the file /etc/init.. d/acpi_wakeup_pci :.. #!/bin/sh # Enable ACPI Power Management Events (PME) for Wake-on-LAN if they are disabled # for info see # http://www.. intel.. com/support/network/sb/CS-000084.. htm # http://www.. vdr-wiki.. de/wiki/index.. php/WAKE_ON_LAN # http://www.. org/doc/debian-policy/ch-opersys.. html#s-sysvinit if (grep PCI0 /proc/acpi/wakeup | grep disabled 2 1 /dev/null) then echo -n PCI0 /proc/acpi/wakeup fi.. Make it executable via chmod a+x /etc/init.. d/acpi_wakeup_pci.. Then implement it into the startup routines for startup and shutdown/reboot, just before and after the networking with update-rc.. d acpi_wakeup_pci start 38 S.. start 37 0 6.. Here are some links with good information:.. José Pedro Oliveira's Wake on LAN mini HOWTO.. (Linux Tool und FAQ).. wol.. VDR Wiki.. (Debian FAQ).. MC-WOL.. (Windows Tool).. Brueck Computer.. Alte Linux Mailinglist.. With.. Wake-On-LAN.. you and others in your network can start the Debian computer and use the services it provides.. But how it will be shut down again? Especially if the others do not have root access or even shell access?.. And you don't want that someone shuts down the server, although someone else is still working with it.. The solution is to monitor the TCP/IP ports of the provided services.. If there's no traffic for quite some time on the monitored ports, then you can assume that the server is not used anymore and can be shut down safely.. Monitoring ports and protocolling packets can be done via tcpdump.. Additionally the solution should check for active console users, to avoid that a user directly logged in (e.. root) is not interrupted during his work.. Active users are reported by who.. The solution can be splitted in two parts:.. Setting up tcpdump to watch the ports in the background via the SysVInit system.. And taking care that tcpdump does not consume to much CPU cycles and harddisk space (log), when the server is heavily used.. A reoccurring script via a CRON job, that checks the result of tcpdump , watches for active users and shuts down the server when appropriate.. Both parts have to care of each other (activate, check, restart, etc.. Here are the scripts of my solution, which was developed with help from some guys in the.. German Debian Forum.. To avoid typos download the scripts.. right here.. Install tcpdump:.. aptitude install tcpdump.. /etc/shutdown_on_idle/shutdown_on_idle_tcpdump with some general definitions: (chmod a+r).. TCPDUMPLOGPATH=/var/log TCPDUMPLOGNAME=shutdown_on_idle_tcpdump.. log TCPDUMPLOG=${TCPDUMPLOGPATH}/${TCPDUMPLOGNAME}.. /usr/local/bin/shutdown_on_idle_tcpdump with the call of tcpdump : (chmod u+x).. #! /bin/sh # Prerequisites: # a) TCPDUMP package # aptitude install tcpdump # # Small script needed, because redirection can not be stated as an argument with start-stop-daemon # # First parameter: packet filter # Second parameter: log file # # The paramter -c 1 is used, to avoid logging everything and bringing down the machine's performance.. # This script will be restarted by the CRON job, if it doesn't run anymore.. exec /usr/sbin/tcpdump -l -i any -f -n -q -tttt -c 1 $1 $2.. d/shutdown_on_idle_tcpdump to start tcpdump via the SysVInit system (chmod a+rx).. Copy /etc/init.. d/skeleton as /etc/init.. d/shutdown_on_idle_tcpdump.. Then edit it as following (my changes are in orange) and implement it into the startup routines with update-rc.. d shutdown_on_idle_tcpdump defaults.. # Provides: tcpdump logging network traffic on the defined ports # Required-Start: $local_fs $remote_fs # Required-Stop: $local_fs $remote_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Initscript for tcpdump logging for shutdown on idle system # Description: Starts tcpdump in the background to log network traffic # on specified port.. The log can be used to find out # if the server's services are in use or have been idle # for a long time.. # tcpdump is started via a script to allow for redirecting its standard output.. # # Differences to the normal Debian 4.. 0 Etch skeleton: # - configuration variable file must be there and is read after LBS log_* functions # - check if all needed variables where set in the configuration variable file # - the tcpdump log file is deleted when starting and stopping # - a symbolic link in /etc/cron.. d to the cron definition in /etc/shutdown_on_idle is created/deleted on start/stop # - on starting the parameter passing has been slighlty modified, quotes where added to give the # daemon args as one parameter and a second parameter was added for the log file.. DESC= tcpdump logging for \ shutdown on idle\ system NAME=shutdown_on_idle_tcpdump DAEMON=/usr/local/bin/${NAME} # Logging packets for the server's IP and the ports of FTP, SSH (for SFTP/SCP), HTTP/HTTPS, Subversion DAEMON_ARGS= dst host 10.. 253 and ( dst port 21 or dst port 22 or dst port 80 or dst port 443 or dst port 3690 ) PIDNAME=tcpdump PIDFILE=/var/run/${NAME}.. pid SCRIPTNAME=/etc/init.. d/${NAME} # To check: ps xa -f | grep tcpdump.. # Exit if the package is not installed [ -x $DAEMON ] || exit 0.. # Load the VERBOSE setting and other rcS variables.. /lib/lsb/init-functions # Maddes: Always read shared configuration variable file, exit with error if it is not present or if not all needed variables are set RC=0 [ ! -r /etc/shutdown_on_idle/${NAME} ] RC=1 [ ${RC} -gt 0 ] log_daemon_msg Missing or unreadable /etc/shutdown_on_idle/${NAME}, check the setup $NAME [ ${RC} -gt 0 ] [ $VERBOSE != no ] log_end_msg 1 [ ${RC} -gt 0 ] exit 1.. /etc/shutdown_on_idle/${NAME} RC=0 [ -z ${TCPDUMPLOGPATH} ] RC=1 [ -z ${TCPDUMPLOGNAME} ] RC=1 [ -z ${TCPDUMPLOG} ] RC=1 [ ${RC} -gt 0 ] log_daemon_msg TCPDUMP Variables not set in /etc/shutdown_on_idle/${NAME}, check the setup $NAME [ ${RC} -gt 0 ] [ $VERBOSE != no ] log_end_msg 1 [ ${RC} -gt 0 ] exit 1.. # # Function that starts the daemon/service # do_start() { # Return # 0 if daemon has been started # 1 if daemon was already running # 2 if daemon could not be started.. start-stop-daemon --make-pidfile --background --start --quiet --pidfile $PIDFILE --exec $DAEMON --test /dev/null \ || return 1 rm -f ${TCPDUMPLOG} start-stop-daemon --make-pidfile --background --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \ $DAEMON_ARGS ${TCPDUMPLOG} \ || return 2.. ln -s -f /etc/shutdown_on_idle/shutdown_on_idle_cron.. conf /etc/cron.. d/shutdown_on_idle.. } # # Function that stops the daemon/service # do_stop() {.. rm -f /etc/cron.. d/shutdown_on_idle rm -f ${TCPDUMPLOG}.. # Return # 0 if daemon has been stopped # 1 if daemon was already stopped # 2 if daemon could not be stopped # other if a failure occurred.. start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name.. $PIDNAME.. RETVAL= $? [ $RETVAL = 2 ] return 2 # Wait for children to finish too if this is a daemon that forks # and if the daemon is only ever run from this initscript.. # If the above conditions are not satisfied then add some other code # that waits for the process to drop all resources that could be # needed by services started subsequently.. A last resort is to # sleep for some time.. start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON [ $? = 2 ] return 2 # Many daemons don't delete their pidfiles when they exit.. rm -f $PIDFILE return $RETVAL } # # Function that sends a SIGHUP to the daemon/service # do_reload() { # # If the daemon can reload its configuration without # restarting (for example, when it is sent a SIGHUP), # then implement that here.. #.. start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name.. return 0 }.. /usr/local/bin/shutdown_on_idle to check from time to time if the computer can be shut down: (chmod u+x).. #! /bin/sh # # This script checks if the server was idle for a specified time # and if so shuts it down.. # # A veto file will be created if a test protests against a shutdown.. # This way you can concatenate several tests (network traffic, # logged in users, etc.. ) and if one says NO shutdown , then the script # just stops.. If no test complains, then the shutdown is executed.. net/ # ## ## Script Functions ## function do_rm_vetofile() { rm -f ${VETOFILE} } function do_log() { echo `date + %x %T ` $* ${LOGFILE} } function do_no_shutdown() { do_log Not idle because of $* do_rm_vetofile exit 0 } function do_shutdown() { do_log ShutDown $* /sbin/poweroff exit 0 } function do_check_vetofile() { [ -f ${VETOFILE} ] do_no_shutdown $* } function do_break() { do_log BREAK: $* exit 1 } ## ## Script Variables ## # General name used for files, etc.. (=script name) NAME=shutdown_on_idle # The veto file VETOFILE=/var/run/${NAME}.. veto # Log file for errors and/or for testing protocol LOGFILE=/var/log/${NAME}.. log # The tcpdump log file variables are read from a shared configuration variable file, exit with error if it is not present or if not all needed variables are set TCPDUMPNAME=${NAME}_tcpdump PIDFILE=/var/run/${TCPDUMPNAME}.. pid [ ! -r /etc/shutdown_on_idle/${TCPDUMPNAME} ] do_break Missing or unreadable /etc/shutdown_on_idle/${TCPDUMPNAME}, check the setup.. /etc/shutdown_on_idle/${TCPDUMPNAME} [ -z ${TCPDUMPLOGPATH} ] do_break TCPDUMP Variables not set in /etc/shutdown_on_idle/${TCPDUMPNAME}, check the setup [ -z ${TCPDUMPLOGNAME} ] do_break TCPDUMP Variables not set in /etc/shutdown_on_idle/${TCPDUMPNAME}, check the setup [ -z ${TCPDUMPLOG} ] do_break TCPDUMP Variables not set in /etc/shutdown_on_idle/${TCPDUMPNAME}, check the setup ## ## Main Script ## ## 1.. Preparations # Remove any old veto file first do_rm_vetofile # Handle tcpdump # a.. ) Reactivate tcpdump if it has stopped since last check if [ ! -f ${PIDFILE} ] then /usr/sbin/invoke-rc.. d ${TCPDUMPNAME} start else ps -p `cat ${PIDFILE} ` 1 /dev/null 2 1 RC=$? [ ${RC} -gt 0 ] /usr/sbin/invoke-rc.. d ${TCPDUMPNAME} restart; fi # b.. ) Check tcpdump log [ ! -f ${TCPDUMPLOG} ] do_break Missing ${TCPDUMPLOG}, check that corresponding init script is invoked ## 2.. Tests # Check active users RC=`who | wc -l` [ ${RC} -gt 0 ] touch ${VETOFILE} do_check_vetofile Active Users # Check network traffic find ${TCPDUMPLOGPATH} -name ${TCPDUMPLOGNAME} -type f -mmin -60 -exec touch ${VETOFILE} \; do_check_vetofile Network Traffic ## 3.. ShutDown do_shutdown.. 5.. /etc/shutdown_on_idle/shutdown_on_idle_cron.. conf to start the checking script every 5 minutes: (chmod a+r).. # crontab fragment for shutdown on idle system # Check for idle every 5 minutes starting from the first minute of the hour 1-59/5 * * * * root /usr/local/bin/shutdown_on_idle.. The Linux kernel is maintained at.. kernel.. It is compiled and build in several different file formats:.. Uncompressed File Formats:.. Nowadays only compressed file formats are used for releases, but they are the basis for the compressed file formats.. Image.. - pure uncompressed Linux Kernel.. vmlinux.. - uncompressed Linux Kernel as an executable, mostly in ELF format with additional relocation infos for vm, symbols and more.. Use.. readelf.. to analyse the ELF file.. Compressed File Formats:.. Compression is normally gzip, although bzip2 and lzma are also supported today.. bzip2 and lzma are mainly used for embedded devices where every byte matters.. Due to gzip being the only compression for a long time, the letter z was used in the file name to indicate a gzip compressed kernel.. Today the letter z indicates only a compressed kernel, even if bzip2, lzma or another compression method is used.. zImage.. - compressed Image plus decompression routine for small kernel images (runs in low memory).. Magic number/word (identifier) of zImage.. Big zImage (short bzImage).. - stripped and compressed vmlinux as an executable, mostly in ELF format with additional relocation infos for vm, decompression routine, etc.. Symbols are normally separated into.. System.. map.. And keep in mind that bz in bzImage doesn't mean bzip2!.. Getting the uncompressed kernel back again is described in the.. extract-ikconfig from the kernel source.. for gzipped images.. U-Boot (.. Project homepage.. ) is a small BIOS/firmware for embedded devices to boot another full OS.. How to Extract an uImage..

    Original link path: /software/debian.htm
    Open archive

  • Title: Debian Encrypted Partitions with LUKS - Maddes.net - Stand: 2013-05-26
    Descriptive info: Debian Encrypted Partitions with LUKS.. Preamble.. Goal.. Process overview.. Preparations.. A) Planning the new partition scheme.. B) Reading and training.. C) Backup.. Prerequisites.. A) Special case: Missing swap partition.. B) Special case: Root partition space (/).. C) Special case: Missing boot partition (/boot).. D) fdisk usage.. E) Root bin folder.. F) Bring system up to date.. G) Install and configure necessary packages.. H) Useful scripts.. I) Determine current partitions.. J) Determine GRUB details.. K) Determine Debian details.. L) Scripts to hold determined details.. ) Create Mini-Debian in swap partition.. 1a) Prepare partition for Mini-Debian.. 1b) Create filesystem on Mini-Debian partition.. 1c) Install Mini-Debian via debootstrap.. 1d) Chroot into Mini-Debian and finalize initialisation.. ) Setup GRUB to boot into Mini-Debian.. 2a) Check GRUB release.. 2b) Setup GRUB.. 2b.. 1) GRUB 1 (v0.. 9x), normally up to Debian 5.. 0 Lenny.. 2) GRUB 2 (v1.. 9x), since Debian 6.. 0 Squeeze.. ) Partitioning and Copying.. 3a) Shrink old root partition and create a temporary partition.. 3b) Create filesystem on temporary partition.. 3c) Copy data from old root to temporary partition.. 3d) Erase old root partition and create new partitions.. 3e) Create new filesystem on new root (and optionally new boot) partition.. 3f) Copy data from temporary partition to new root, then erase temporary partition and extend new root partition.. 3g) Extend filesystem of new root partition.. ) Setup GRUB to boot into new root.. 4a) Prepare Mini-Debian and new root for new boot partition.. 4b) Setup GRUB.. 4b.. 4c) Cleanup.. ) Create Crypt-Swap.. 5a) Collect information and create script.. 5b) Setup encrypted swap.. 5c) Handle hibernation.. 5d) Test.. 5e) Cleanup.. Change LUKS passphrase.. Main concept found in.. article Fernverschlüsselt: Verschlüsselte Root-Partition für Linux-Systeme (c't issue 12/2008, page 188, category Praxis / Root-Server ).. Dropbear InitRD script for Debian 4.. 0 Etch and 5.. 0 Lenny originally from.. http://gpl.. coulmann.. de/ssh_luks_unlock.. Follow this guide at your own risk.. Goal is to convert an existing system to have the root and swap partition of Debian encrypted with LUKS.. On power-up/reboot the root partition is unlocked via an SSH session by an administrator and Debian continues to boot normally.. The SSH session and unlock functionality will be provided by the InitRAMFS on boot.. The conversion process is also working on a remote server with SSH access only.. First a temporary Mini-Debian is created inside the existing swap partition to have free access onto the root partition.. Then the existing root partition is reduced in size, to generate free space for a temporary partition, which will temporary hold the files of the root partition.. An unencrypted boot partition is needed to hold the InitRAMFS.. If a boot partition is not available or too small ( 100MB), then the old root partition is deleted and a new boot plus root partition are created.. The root partition is then encrypted with LUKS and all files are copied back from the temporary partition.. After this the temporary partition is deleted and the root partition is resized to its maximum extend.. To decrypt the root partition via an SSH session the init ramdisk is extended with a DropBear script, which also provides a simple unlock script.. Note that the boot partition has to be (or stay) unencrypted.. After a successful boot with the encrypted root partition the Mini-Debian is removed and an encrypted swap partition is established.. The normal init ramdisk is regenerated too, so that kernel and ramdisk updates just work like normal.. A fallback boot option is always during the creation process.. During the setup process Grub's savedefault feature is used to get the system back to it's previous state after another reboot.. Tested with the following Debian releases:.. 0 Etch with GRUB 1.. 0 Lenny with GRUB 1.. 0 Squeeze with GRUB 2.. 0 Wheezy with GRUB 2.. Upgrade from 5.. 0 Lenny with GRUB 1 to 6.. Make up your mind how the new partitioning should look like.. This includes partition sizes, positions, mount points and which will be encrypted.. Typical options are separate home (/home) and var (/var) partitions.. These can be created after completion of the encrypted root partition.. Of course empty space has to be left for them, or handle them when copying data from the temporary file system during the process.. Use an extended partition to have more than 4 primary partitions.. Take extra caution with the swap partition.. The swap partition size is typically 1.. 3x of the RAM size.. If the machine shall be put to standyby mode S4 (=suspend to disk) then the enryption key for the swap partition has to be static.. The swap partition must be able to hold at least the whole RAM, so take planned or possible upcoming RAM enhancements into account.. Otherwise disable resume in GRUB and /etc/initramfs-tools/conf.. d/resume, then it is even possible to use a random key for the swap partition.. Read this guide thoroughly and several times.. Look out for special cases that apply to the actual situation of the target system.. Adopt this guide to the wanted partition scheme and actual devices (/dev/sda or /dev/hda) and create a text file with all necessary commands.. Prepare a Virtual Machine with the current setup of the real target machine, create a snapshot and repeat this process until it is 100% working and documented.. On questions checkout the man pages, if still in doubt then search the net, if that fails contact me.. Continue to do this on the target system at your own risk.. Notes:.. With direct access to the hardware the easiest way to resize, move, delete and create partitions is to use a live boot cd from.. GParted.. An additional hard disk (e.. via USB) can be used for the temporary space to avoid extra partioning steps.. This allows to directly create the final new partioning scheme without in-between steps.. Do a backup of the root partition of the target system.. Really do a backup of the root partition.. Did you backup the root partition?.. This part will be longer than maybe expected, but a good preparation makes life easier during the process.. This is the most critical special case, take care!!!.. Have to be able to boot from a live CD/DVD/USB/PXE to resize the root partition!.. Root partition (/) needs to be shrinked already at the beginning (first filesystem, then partition).. Create extended partition and logical partition for later swap partition, but will be used for temporary Mini-Debian first.. Make sure that the root partition is under 45% used, otherwise an extra partition is needed to backup the data from the unencrypted root partition and then copy it back to the new encrypted root partition.. df -h / # example result: # Filesystem Size Used Avail Use% Mounted on # /dev/sda3 140.. 0G 17G 113G.. 11%.. /.. Create during partitioning for new encrypted root partition (after Mini-Debian and copying of the old root partition).. Always use sector display mode.. Press 'u' inside fdisk menu to toggle mode.. Always disable DOS compatibility mode.. Press 'c' inside fdisk menu to toggle mode.. Or, if supported, use -u -c directly when calling fdisk.. Make sure that /root/bin is present and included in the user's path (default profile).. If not present, then create and re-login.. [ ! -d /root/bin ] { mkdir /root/bin; echo 'Log out, then back in' ; printf '\a' ; } echo "${PATH}" | grep -q -F -e '/root/bin' echo '/root/bin present in PATH' || { echo 'Check that you are root, if so then check.. profile,.. bashrc and similar.. Maybe update them from /etc/skel.. ' ; printf '\a' ; }.. Make sure the target system runs with the latest packages.. apt-get update apt-get safe-upgrade || apt-get upgrade reboot ; # only necessary if any packages were upgraded.. The InitRAMFS tools are necessary to create or update a InitRAMFS.. The small SSH server DropBear allows to log into the system while the InitRAMFS is waiting for the root partition to be unlocked.. Note that DropBear before Debian 5.. 0 Lenny did not use /dev/urandom, which was an issue when used in an InitRAMFS.. So on Debian 4.. 0 Etch , 3.. 1 Sarge , 3.. 0 Woody or earlier DropBear has to be compiled from modified source.. Busybox provides a small shell environment to run scripts and provide a shell for login.. Cryptsetup provides all tools for managing encrypted partitions and unlocking them from an InitRAMFS.. Psmisc provides some shell tools that are needed for several tasks.. LSB.. is used to determine the Debian release.. Busybox, DropBear and Cryptsetup will trigger an update of the InitRAMFS.. Debian 6.. 0 Squeeze will create new server SSH keys for the InitRAMFS, so the private key of the real system will be on the encrypted root partition only.. Additionally a private and public SSH key is generated for the root user in /etc/initramfs-tools/root/.. ssh.. If you want to use this extra key, then copy it to your PC.. Maintain authorized_keys to your liking, e.. remove the line for that generated root user key and/or add lines for other keys that shall be allowed to access the InitRAMFS.. If authorized_keys is deleted, then updating the InitRAMFS will recreate a new key pair for the root user of the InitRAMFS.. Update the InitRAMFS to include all changes and look for errors.. On Debian 5.. 0 Lenny and earlier we will mimic the same behaviour manually.. # create backup of initramdisk cp -v /boot/initrd.. img-$(uname -r) /boot/initrd.. img-$(uname -r).. oldroot.. org DEBVERSION=`cut -f 1 -d '.. ' /etc/debian_version` echo ${DEBVERSION} pkg='debootstrap cryptsetup initramfs-tools os-prober psmisc busybox util-linux lsb-base lsb-release screen' [ ${DEBVERSION} -ge 5 ] pkg=${pkg}' dropbear' ; # before Debian 5.. 0 Lenny DropBear has to be build with a small change echo ${pkg} apt-get install ${pkg} # build DropBear for Debian 4.. 0 or earlier [ ${DEBVERSION} -le 4 ] { apt-get install devscripts build-essential cd /var/tmp apt-get build-dep dropbear apt-get source dropbear cd dropbear-*/ grep -n -G -e '/dev/[u]*random' options.. h # expected result: # 152:/* If you are lacking entropy on the system then using /dev/urandom # 157:#define DROPBEAR_RANDOM_DEV /dev/random sed -i -e 's|#define DROPBEAR_RANDOM_DEV /dev/random |#define DROPBEAR_RANDOM_DEV /dev/urandom |' options.. h grep -n -G -e '/dev/[u]*random' options.. h # expected result: # 152:/* If you are lacking entropy on the system then using /dev/urandom # 157:#define DROPBEAR_RANDOM_DEV /dev/.. u.. random debuild -us -uc dpkg -i /var/tmp/dropbear_*.. deb cd ~ echo dropbear hold | dpkg --set-selections ; # remember this hold when upgrading in the future, maybe have to rebuild the latest version aptitude hold dropbear ; # remember this hold when upgrading in the future, maybe have to rebuild the latest version } [ ${DEBVERSION} -le 5 ] mkdir -p /usr/local/share/initramfs-tools/hooks.. Now upload (or copy) files depending on release.. 0 (and maybe later):.. /etc/initramfs-tools/hooks/.. cryptroot_unlock.. /etc/initramfs-tools/scripts/local-bottom/.. dropbear_kill_clients.. Debian 5.. 0 and earlier:.. /usr/local/share/initramfs-tools/hooks/.. dropbear.. (v1.. 1 or later, original from.. ).. Then continue on the shell:.. # mimic Debian 6.. 0 behaviour for earlier releases [ ${DEBVERSION} -le 5 ] { echo 'Creating separate DropBear server keys for initrd, to not expose the real server keys in the unencrypted initrd' mkdir -p /etc/initramfs-tools/etc/dropbear [ ! -f /etc/initramfs-tools/etc/dropbear/dropbear_rsa_host_key ] dropbearkey -t rsa -f /etc/initramfs-tools/etc/dropbear/dropbear_rsa_host_key [ ! -f /etc/initramfs-tools/etc/dropbear/dropbear_dss_host_key ] dropbearkey -t dss -f /etc/initramfs-tools/etc/dropbear/dropbear_dss_host_key # echo 'Creating separate root client keys for initrd' mkdir -p /etc/initramfs-tools/root/.. ssh/ chmod -R go= /etc/initramfs-tools/root [ ! -f /etc/initramfs-tools/root/.. ssh/id_rsa.. dropbear ] dropbearkey -t rsa -f /etc/initramfs-tools/root/.. dropbear /usr/lib/dropbear/dropbearconvert dropbear openssh /etc/initramfs-tools/root/.. dropbear /etc/initramfs-tools/root/.. ssh/id_rsa dropbearkey -y -f /etc/initramfs-tools/root/.. dropbear | grep -G -e ^ssh-rsa /etc/initramfs-tools/root/.. pub cat /etc/initramfs-tools/root/.. pub /etc/initramfs-tools/root/.. ssh/authorized_keys # echo 'DROPBEAR=n' /etc/initramfs-tools/conf.. d/dropbear chmod +x /usr/local/share/initramfs-tools/hooks/dropbear } [ ${DEBVERSION} -ge 6 ] { chmod +x /etc/initramfs-tools/hooks/cryptroot_unlock.. sh chmod +x /etc/initramfs-tools/scripts/local-bottom/dropbear_kill_clients.. sh } # add existing SSH public keys for root user to InitRAMFS [ -s /root/.. ssh/authorized_keys ] cat /root/.. ssh/authorized_keys /etc/initramfs-tools/root/.. ssh/authorized_keys update-initramfs -u reboot ; # CRITICAL, if boot fails restore backup of initramdisk /boot/initrd.. org and fix issue cp -v /boot/initrd.. oldroot rm -f /boot/initrd.. org.. Copy some useful scripts to /root/bin, which are helpful during the process, e.. preparing chroot.. /root/bin/.. mount_sys.. mount_mini-debian.. mount_oldroot.. mount_temp.. mount_newroot.. umount_sys.. umount_mini-debian.. umount_oldroot.. umount_temp.. umount_newroot.. For GRUB 1, Debian 5.. 0 Lenny and earlier:.. grub1_mini-debian.. For GRUB 2, Debian 6.. 0 Squeeze :.. grub2_mini-debian.. Make them executable:.. chmod +x /root/bin/mount_*.. sh chmod go= /root/bin/mount_*.. sh chmod +x /root/bin/umount_*.. sh chmod go= /root/bin/umount_*.. sh chmod +x /root/bin/grub*_mini-debian.. sh chmod go= /root/bin/grub*_mini-debian.. sh.. Determine the old root partition: (there can be only one, like /dev/sda1).. OLDROOT=`mount | grep -F -e ' / ' | cut -d' ' -f1` echo count is `echo ${OLDROOT} | wc -w`: ${OLDROOT} #.. FIXME: correct if necessary.. blkid ${OLDROOT} >/dev/null ; sync ; # make sure that superblock is created and written OLDROOTUUID=`blkid ${OLDROOT} | sed -n -e 's#.. *UUID= \([^ ]*\).. *$#\1#p'` OLDROOTLABEL=`e2label ${OLDROOT}` case ${OLDROOT} in (*by-uuid*) OLDROOT=`findfs UUID=${OLDROOTUUID}` ;; (*by-label*) OLDROOT=`findfs LABEL=${OLDROOTLABEL}` ;; (*) ;; esac echo ${OLDROOT}.. Determine the boot partition: (there can be only one, like /dev/sda1).. OLDBOOT=`mount | grep -F -e ' /boot ' | cut -d' ' -f1` echo count is `echo ${OLDBOOT} | wc -w`: ${OLDBOOT} #.. OLDBOOTUUID= OLDBOOTLABEL= [ -n ${OLDBOOT} ] && { blkid ${OLDBOOT} >/dev/null ; sync ; # make sure that superblock is created and written OLDBOOTUUID=`blkid ${OLDBOOT} | sed -n -e 's#.. *$#\1#p'` ; OLDBOOTLABEL=`e2label ${OLDBOOT}` ; case ${OLDBOOT} in (*by-uuid*) OLDBOOT=`findfs UUID=${OLDBOOTUUID}` ;; (*by-label*) OLDBOOT=`findfs LABEL=${OLDBOOTLABEL}` ;; (*) ;; esac echo ${OLDBOOT} }.. Determine the swap partition (type 82) for the Mini-Debian: (there can be only one, like /dev/sda1 - ok, there can be more, then just edit OLDSWAP to your liking).. OLDSWAP=`swapon -s | grep -F -e 'partition' | cut -d' ' -f1` echo count is `echo ${OLDSWAP} | wc -w`: ${OLDSWAP} #.. OLDSWAPUUID= OLDSWAPLABEL= [ -n ${OLDSWAP} ] && { blkid ${OLDSWAP} >/dev/null ; sync ; # make sure that superblock is created and written OLDSWAPUUID=`blkid ${OLDSWAP} | sed -n -e 's#.. *$#\1#p'` OLDSWAPLABEL=`e2label ${OLDSWAP}` case ${OLDSWAP} in (*by-uuid*) OLDSWAP=`findfs UUID=${OLDSWAPUUID}` ;; (*by-label*) OLDSWAP=`findfs LABEL=${OLDSWAPLABEL}` ;; (*) ;; esac echo ${OLDSWAP} }.. Determine GRUB version and its root partition:.. GRUBVERSION=`grub-install -v | sed -n -e 's#[^(]*[(]*[^0-9]*\([0-9]*\).. *#\1#p'` [ ${GRUBVERSION} -eq 0 ] GRUBRELEASE=1 || GRUBRELEASE=2 echo GRUB version ${GRUBVERSION}.. x is release ${GRUBRELEASE} GRUBROOTDEV=`{ [ -n ${OLDBOOT} ] echo ${OLDBOOT} || echo ${OLDROOT} ; } | sed -n -e 's#\([^0-9]*\)\([0-9]*\)$#\1#p'` echo GRUB is installed on ${GRUBROOTDEV}.. Determine GRUB 1 default, fallback and saved value: (there can be only one, like 0 - ok, there can be more, then just edit var to the last value).. OLDGRUB1DEFAULT= OLDGRUB1FALLBACK= OLDGRUB1SAVED= [ ${GRUBRELEASE} -eq 1 ] { OLDGRUB1DEFAULT=`sed -n -e 's#^[[:space:]]*default[[:space:]]\+\([^[:space:]]*\).. *#\1#p' /boot/grub/menu.. lst` echo count default is `echo ${OLDGRUB1DEFAULT} | wc -w`: ${OLDGRUB1DEFAULT} OLDGRUB1FALLBACK=`sed -n -e 's#^[[:space:]]*fallback[[:space:]]\+\([^[:space:]]*\).. lst` echo count fallback is `echo ${OLDGRUB1FALLBACK} | wc -w`: ${OLDGRUB1FALLBACK} OLDGRUB1SAVED=`head -n 1 /boot/grub/default` echo count saved default is `echo ${OLDGRUB1SAVED} | wc -l`: ${OLDGRUB1SAVED} [ ${OLDGRUB1DEFAULT} = 'saved' ] [ ${OLDGRUB1SAVED} = 'default' ] { echo 'ERROR: GRUB 1 default is set to saved and saved value is default ' ; printf '\a' ; } }.. Determine Debian version and release name:.. DEBVERSION=`cut -f 1 -d '.. ' /etc/debian_version` echo ${DEBVERSION} DEBRELEASE=`lsb_release -c -s` [ -n ${DEBRELEASE} ] echo Debian release is ${DEBRELEASE} || { echo 'Please set DEBRELEASE manually (e.. woody, stable, testing, unstable, etc.. )' ; printf '\a' ; }.. Create some simple scripts to keep the determined details of the old partitions, GRUB and Debian:.. cat /root/bin/luks_old.. sh __EOF echo Setting old partition vars.. 1 2 OLDROOT=${OLDROOT} OLDROOTUUID=${OLDROOTUUID} OLDROOTLABEL=${OLDROOTLABEL} OLDROOTDEV=`echo ${OLDROOT} | sed -n -e 's#\([^0-9]*\)\([0-9]*\)$#\1#p'` OLDROOTPART=`echo ${OLDROOT} | sed -n -e 's#\([^0-9]*\)\([0-9]*\)$#\2#p'` OLDROOTTYPE=`blkid ${OLDROOT} | sed -n -e 's#.. *TYPE= \([^ ]*\).. *$#\1#p'` OLDBOOT=${OLDBOOT} OLDBOOTUUID=${OLDBOOTUUID} OLDBOOTLABEL=${OLDBOOTLABEL} OLDBOOTDEV=`[ -n ${OLDBOOT} ] { echo ${OLDBOOT} | sed -n -e 's#\([^0-9]*\)\([0-9]*\)$#\1#p' ; }` OLDBOOTPART=`[ -n ${OLDBOOT} ] { echo ${OLDBOOT} | sed -n -e 's#\([^0-9]*\)\([0-9]*\)$#\2#p' ; }` OLDBOOTTYPE=`[ -n ${OLDBOOT} ] { blkid ${OLDBOOT} | sed -n -e 's#.. *$#\1#p' ; }` OLDSWAP=${OLDSWAP} OLDSWAPUUID=${OLDSWAPUUID} OLDSWAPLABEL=${OLDSWAPLABEL} OLDSWAPDEV=`[ -n ${OLDSWAP} ] { echo ${OLDSWAP} | sed -n -e 's#\([^0-9]*\)\([0-9]*\)$#\1#p' ; }` OLDSWAPPART=`[ -n ${OLDSWAP} ] { echo ${OLDSWAP} | sed -n -e 's#\([^0-9]*\)\([0-9]*\)$#\2#p' ; }` OLDSWAPTYPE=`[ -n ${OLDSWAP} ] { blkid ${OLDSWAP} | sed -n -e 's#.. *$#\1#p' ; }` GRUBVERSION=${GRUBVERSION} GRUBRELEASE=${GRUBRELEASE} GRUBROOTDEV=${GRUBROOTDEV} GRUBROOT=`[ -n ${GRUBROOTDEV} ] sed -n -e s#^[(]*\([^)]*\)[)]*[[:space:]]\+${GRUBROOTDEV}.. *#\1#p /boot/grub/device.. map` OLDGRUB=`[ -n ${OLDBOOT} ] echo ${OLDBOOT} || echo ${OLDROOT} ` OLDGRUBPART=`{ [ -n ${OLDBOOT} ] echo ${OLDBOOT} || echo ${OLDROOT} ; } | sed -n -e 's#\([^0-9]*\)\([0-9]*\)$#\2#p'` DEBVERSION=${DEBVERSION} DEBRELEASE=${DEBRELEASE} FDISKCPARM=`[ ${DEBVERSION} -ge 6 ] echo '-c'` __EOF [ ${GRUBRELEASE} -eq 1 ] { cat /root/bin/luks_old_grub1.. sh __EOF echo Setting old GRUB 1 vars.. 1 2 OLDGRUB1DEFAULT=${OLDGRUB1DEFAULT} OLDGRUB1FALLBACK=${OLDGRUB1FALLBACK} OLDGRUB1SAVED=${OLDGRUB1SAVED} OLDGRUB1DEFAULTNUM=`[ ${OLDGRUB1DEFAULT} != 'saved' ] echo ${OLDGRUB1DEFAULT} || echo ${OLDGRUB1SAVED} ` OLDGRUB1FEASC=$(( `sed -n -r -e '/^[[:space:]]*title[[:space:]]+/p' -e '/^# Put static boot stanzas before and\/or after AUTOMAGIC KERNEL LIST/q' /boot/grub/menu.. lst | wc -l` )) # First entry *after* STATIC BOOT COMMENT OLDGRUB1FEAL=$(( `sed -n -r -e '/^[[:space:]]*title[[:space:]]+/p' -e '/^### BEGIN AUTOMAGIC KERNELS LIST/q' /boot/grub/menu.. lst | wc -l` )) # First entry of AUTOMAGIC LIST OLDGRUB1FEAAL=$(( `sed -n -r -e '/^[[:space:]]*title[[:space:]]+/p' -e '/^### END DEBIAN AUTOMAGIC KERNELS LIST/q' /boot/grub/menu.. lst | wc -l` )) # First entry *after* AUTOMAGIC LIST __EOF for SRC in /root/bin/luks_*.. sh ; do.. ${SRC} ; done [ ${OLDGRUB1DEFAULT} = 'saved' ] [ ${OLDGRUB1SAVED} = 'default' ] { echo 'ERROR: GRUB 1 default is set to saved and  ...   problem [ ! -e /mini-debian ] { echo 'ERROR!!! Unexpected system, this is NOT mini-debian.. [ ! -e /mini-debian ] { echo 'ERROR!!! Unexpected system, this is NOT mini-debian.. ${SRC} ; done fsck -f ${OLDROOT} ; printf '\a' # TAKES TIME!!! resize2fs ${OLDROOT} 3G ; printf '\a' ; # replace 3G with 45% of old root partition # TAKES TIME!!! # KEEP THE OUTPUT!!! IT IS NEEDED IN THE NEXT FDISK PROCEDURE.. # RE-CALCULATE SHRINKED ROOT SIZE TO 1K!!! # 2GB: 524288 (4k) blocks * 4 = +2097152K (1k) blocks # 3GB: 786432 (4k) blocks * 4 = +3145728K (1k) blocks # 10GB: 2621440 (4k) blocks * 4 = +10485760K (1k) blocks fsck -f ${OLDROOT} ; printf '\a' # TAKES TIME!!! echo OLDROOTPART is ${OLDROOTPART} ; [ -z ${FDISKCPARM} ] echo 'Execute c first for DOS Compatibility flag is not set ' fdisk -u ${FDISKCPARM} ${OLDROOTDEV} # [c] # toggle DOS mode on/off, depends where the root partition starts, e.. start sector 63 needs DOS compatibility on # p # Device Boot Start End Blocks Id System # /dev/sda1 2048 6293503 2097152 83 Linux (Root partition) # /dev/sda4 12580864 16777215 2098176 5 Extended # /dev/sda5 12582912 16777215 2097152 83 Linux (Mini-Debian) # d ${OLDROOTPART} # n p ${OLDROOTPART}.. +3145728K) # p # n p [ ${OLDROOTPART} + 2 or 1 ] First sector behind changed ${OLDROOTPART} (normally just Enter , except if it defaults to sector 1) Enter (this will be the temporary exchange space for the old root partition data) # p # w (otherwise abort with q) reboot.. ${SRC} ; done fdisk -u ${FDISKCPARM} -l ${OLDROOTDEV} TEMPEX=${OLDROOTDEV}.. FIXME: Set to correct temp partition number.. echo ${TEMPEX} mkfs.. ${OLDROOTTYPE} ${TEMPEX} ; printf '\a' # TAKES TIME!!! blkid ${TEMPEX} /dev/null ; sync ; # make sure that superblock is created and written cat /root/bin/luks_temp.. sh __EOF echo Setting temp partition vars.. 1 2 TEMPEX=${TEMPEX} TEMPEXUUID=`[ -n ${TEMPEX} ] { blkid ${TEMPEX} | sed -n -e 's#.. *$#\1#p'; }` TEMPEXLABEL=`[ -n ${TEMPEX} ] e2label ${TEMPEX}` TEMPEXDEV=`[ -n ${TEMPEX} ] { echo ${TEMPEX} | sed -n -e 's#\([^0-9]*\)\([0-9]*\)$#\1#p' ; }` TEMPEXPART=`[ -n ${TEMPEX} ] { echo ${TEMPEX} | sed -n -e 's#\([^0-9]*\)\([0-9]*\)$#\2#p' ; }` __EOF chmod -x,go= /root/bin/luks_*.. ${SRC} ; done mount_oldroot.. sh mount_temp.. sh cp -axv /mnt/oldroot/* /mnt/temp ; printf '\a' # TAKES TIME!!! umount_oldroot.. sh umount_temp.. ${SRC} ; done # erase with DD, doesn't matter when testing in VM dd if=/dev/zero of=${OLDROOT} bs=1024k ; printf '\a' # TAKES TIME!!! # if separate boot partition missing, then create it inside the old root space, partition 1 preferred [ -z ${OLDBOOT} ] { echo OLDROOTPART is ${OLDROOTPART} ; [ -z ${FDISKCPARM} ] echo 'Execute c first for DOS Compatibility flag is not set ' ; fdisk -u ${FDISKCPARM} ${OLDROOTDEV} ; } # [c] # toggle DOS mode off, output should be DOS Compatibility flag is not set # p # d ${OLDROOTPART} # n p 1 First available sector (normally just Enter , except if it defaults to sector 1, then use 2048 or 63) +100M (capitial M!!!, new boot partition) # p # n p First sector behind boot partition (normally just Enter , except if it defaults to sector 1) Enter (new root partition) # p # w (otherwise abort with q) [ -z ${OLDBOOT} ] reboot.. ${SRC} ; done fdisk -u ${FDISKCPARM} -l ${OLDROOTDEV} NEWBOOT=${OLDBOOT} [ -z ${NEWBOOT} ] NEWBOOT=${OLDROOTDEV}.. FIXME: Set to correct new boot partition number.. echo ${NEWBOOT} NEWROOT=${OLDROOT} ; # Only if new root has the same partition number as the old root NEWROOT=${OLDROOTDEV}.. FIXME: Set to correct new root partition number.. echo ${NEWROOT} [ -z ${OLDBOOT} ] { mkfs.. ${OLDROOTTYPE} ${NEWBOOT} ; printf '\a' ; } cryptsetup --verbose --verify-passphrase --hash=sha256 --cipher=aes-cbc-essiv:sha256 --key-size=256 luksFormat ${NEWROOT} cryptsetup luksOpen ${NEWROOT} root mkfs.. ${OLDROOTTYPE} /dev/mapper/root ; printf '\a' # TAKES TIME!!! blkid ${NEWROOT} /dev/null ; blkid ${NEWBOOT} /dev/null ; sync ; # make sure that superblock is created and written cat /root/bin/luks_new.. sh __EOF echo Setting new partition vars.. 1 2 NEWROOT=${NEWROOT} NEWROOTUUID=`blkid ${NEWROOT} | sed -n -e 's#.. *$#\1#p'` NEWROOTLABEL=`e2label ${NEWROOT}` NEWROOTDEV=`echo ${NEWROOT} | sed -n -e 's#\([^0-9]*\)\([0-9]*\)$#\1#p'` NEWROOTPART=`echo ${NEWROOT} | sed -n -e 's#\([^0-9]*\)\([0-9]*\)$#\2#p'` NEWBOOT=${NEWBOOT} NEWBOOTUUID=`blkid ${NEWBOOT} | sed -n -e 's#.. *$#\1#p'` NEWBOOTLABEL=`e2label ${NEWBOOT}` NEWBOOTDEV=`echo ${NEWBOOT} | sed -n -e 's#\([^0-9]*\)\([0-9]*\)$#\1#p'` NEWBOOTPART=`echo ${NEWBOOT} | sed -n -e 's#\([^0-9]*\)\([0-9]*\)$#\2#p'` __EOF chmod -x,go= /root/bin/luks_*.. ${SRC} ; done mount_temp.. sh mount_newroot.. sh cp -axv /mnt/temp/* /mnt/newroot ; printf '\a' # TAKES TIME!!! [ -z ${OLDBOOT} ] { rm -r -f /mnt/newroot/boot/* mount_newroot.. sh cp -axv /mnt/temp/boot/* /mnt/newroot/boot ; printf '\a' } sed -i -e s#UUID\=${OLDROOTUUID}#/dev/mapper/root# -e s#${OLDROOT}#/dev/mapper/root# /mnt/newroot/etc/fstab grep -q -F -e ${NEWROOT} /mnt/newroot/etc/crypttab || grep -q -F -e UUID\=${NEWROOTUUID} /mnt/newroot/etc/crypttab || { [ ${DEBVERSION} -le 5 ] echo root ${NEWROOT} none luks /mnt/newroot/etc/crypttab [ ${DEBVERSION} -ge 6 ] echo root UUID=${NEWROOTUUID} none luks /mnt/newroot/etc/crypttab } umount_temp.. sh umount_newroot.. sh # erase with DD, doesn't matter when testing in VM dd if=/dev/zero of=${TEMPEX} bs=1024k ; printf '\a' # TAKES TIME!!! echo TEMPEXPART is ${TEMPEXPART} ; [ -z ${FDISKCPARM} ] echo 'Execute c first for DOS Compatibility flag is not set ' fdisk -u ${FDISKCPARM} ${TEMPEXDEV} # [c] # toggle DOS mode off, output should be DOS Compatibility flag is not set # p # d ${TEMPEXPART} # p # w (otherwise abort with q) rm -f /root/bin/luks_temp.. sh echo NEWROOTPART is ${NEWROOTPART} ; [ -z ${FDISKCPARM} ] echo 'Execute c first for DOS Compatibility flag is not set ' fdisk -u ${FDISKCPARM} ${NEWROOTDEV} # [c] # toggle DOS mode off, output should be DOS Compatibility flag is not set # p # d ${NEWROOTPART} # n p [ ${NEWROOTPART} ].. (normally just Enter ) Enter # p # w (otherwise abort with q) reboot.. # after successful start of Mini-Debian; check for /mini-debian [ ! -e /mini-debian ] { echo 'ERROR!!! Unexpected system, this is NOT mini-debian.. ${SRC} ; done cryptsetup luksOpen ${NEWROOT} root cryptsetup --verbose resize root fsck -f /dev/mapper/root ; printf '\a' # TAKES TIME!!! resize2fs /dev/mapper/root ; printf '\a' # TAKES TIME!!! # Example result: # Resizing the filesystem on /dev/mapper/root to 1546495 (4k) blocks.. # The filesystem on /dev/mapper/root is now 1546495 blocks long.. fsck -f /dev/mapper/root ; printf '\a' mount_newroot.. sh df -h /mnt/newroot/ # Example result: # Filesystem Size Used Avail Use% Mounted on # /dev/mapper/root 5.. 9G 743M 4.. 8G 14% /mnt/newroot cp -a /root/bin/luks_*.. sh /mnt/newroot/root/bin umount_newroot.. ${SRC} ; done [ -z ${OLDBOOT} ] { mkdir /backup-boot # COPY files to backup, so the boot installation is still there just in the case something goes wrong or the system shuts down cp -axv /boot/* /backup-boot ; printf '\a' [ ${DEBVERSION} -le 5 ] echo ${NEWBOOT} /boot ${OLDROOTTYPE} defaults 0 2 /etc/fstab [ ${DEBVERSION} -ge 6 ] echo UUID=${NEWBOOTUUID} /boot ${OLDROOTTYPE} defaults 0 2 /etc/fstab mount -a mount_newroot.. sh [ ${DEBVERSION} -le 5 ] echo ${NEWBOOT} /boot ${OLDROOTTYPE} defaults 0 2 /mnt/newroot/etc/fstab [ ${DEBVERSION} -ge 6 ] echo UUID=${NEWBOOTUUID} /boot ${OLDROOTTYPE} defaults 0 2 /mnt/newroot/etc/fstab umount_newroot.. sh }.. echo GRUB version ${GRUBVERSION}.. ${SRC} ; done [ -z ${OLDBOOT} ] grep -n -E -e '^[[:space:]]*default[[:space:]]+' -e '^[[:space:]]*fallback[[:space:]]+' -e '^#[[:space:]]+groot=' -e '^#.. lst # 14:default saved # 15:fallback 1 # 49:# Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST # 51:title Mini-Debian # 52:savedefault 1 #.. # 53:root (hd0,0) #.. 18-6-686 # 129:root (hd0,0) # 132:savedefault # 134:title Debian GNU/Linux, kernel 2.. 18-6-686 (single-user mode) # 135:root (hd0,0) # 138:savedefault # 140:### END DEBIAN AUTOMAGIC KERNELS LIST [ -z ${OLDBOOT} ] { sed -i -r -e '/^[[:space:]]*savedefault([[:space:]]+|$)/d' -e s#^([[:space:]]*fallback[[:space:]]+)[^[:space:]]*#\1${MINIGRUB1ENTRY}# /boot/grub/menu.. lst sed -i -e 's#/boot/#/#' -e s#\(.. *FIXME:.. *\)${OLDROOT}#\1${NEWBOOT}# /boot/grub/menu.. lst sed -i -r -e s|^(#[[:space:]]+groot=[(]+${GRUBROOT},)[^)]*|\1$((${NEWBOOTPART}-1))| /boot/grub/menu.. lst sed -i -r -e s#^([[:space:]]*root[[:space:]]+[(]+${GRUBROOT},)[^)]*#\1$((${NEWBOOTPART}-1))# /boot/grub/menu.. lst grub-install ${GRUBROOTDEV} grub-set-default ${MINIGRUB1ENTRY} cat /boot/grub/default cp /boot/grub/menu.. newboot } [ -z ${OLDBOOT} ] reboot # preparing the initrd for the encrypted root [ ! -e /mini-debian ] { echo 'ERROR!!! Unexpected system, this is NOT mini-debian.. ${SRC} ; done mount_newroot.. sh chroot /mnt/newroot cd ~ for SRC in /root/bin/luks_*.. ${SRC} ; done [ ${DEBVERSION} -le 6 ] { rm -f /etc/mtab mount -a -f ; mount -a -f ; # to re-create /etc/mtab, important to re-install/update GRUB again } [ ${DEBVERSION} -ge 7 -a ! -e /etc/mtab ] { rm -f /etc/mtab ln -s /proc/mounts /etc/mtab } cat /etc/mtab [ ${DEBVERSION} -le 5 ] { cp -v /usr/share/initramfs-tools/hooks/{cryptroot,udev} /etc/initramfs-tools/hooks/ cp -v /usr/share/initramfs-tools/scripts/init-premount/udev /etc/initramfs-tools/scripts/init-premount/ cp -v /usr/share/initramfs-tools/scripts/local-top/cryptroot /etc/initramfs-tools/scripts/local-top/ # grep -n -F -e 'udev_settle' /etc/initramfs-tools/scripts/local-top/cryptroot grep -n -F -e 'sleep 1' /etc/initramfs-tools/scripts/local-top/cryptroot [ ${DEBVERSION} -le 4 ] nano /etc/initramfs-tools/scripts/local-top/cryptroot ; # Debian 5.. 0 Lenny already uses udev_settle # CTRL+- 173 # 173: [ -e $cryptsource ] || sleep 1 # cp -v /usr/local/share/initramfs-tools/hooks/dropbear /etc/initramfs-tools/hooks/ # #.. FIXME: adapt settings to the system in dropbear hook script.. nano /etc/initramfs-tools/hooks/dropbear # edit ifconfig and route accordingly or use DHCP via dhclient # ifconfig, route, dhclient # Example: # ifconfig eth0 10.. 15 netmask 255.. 255.. 0 # route add default gw 10.. 2 # chmod +x /etc/initramfs-tools/hooks/dropbear rm -f /etc/initramfs-tools/conf.. d/dropbear } update-initramfs -u # if initrd update fails, just create a new one from scratch rm -f /boot/initrd.. img-$(uname -r) ; mkinitramfs -o /boot/initrd.. img-$(uname -r) # leave chroot exit # preparing GRUB to boot the encrypted root for SRC in /root/bin/luks_*.. ${SRC} ; done grep -n -E -e '^[[:space:]]*default[[:space:]]+' -e '^[[:space:]]*fallback[[:space:]]+' -e '^#[[:space:]]+groot=' -e '^#.. lst # 15:default saved # 17:fallback 0 # 49:# Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST # 51:title Mini-Debian # 52:root (hd0,0) #.. # 57:### BEGIN AUTOMAGIC KERNELS LIST # 58:## lines between the AUTOMAGIC KERNELS LIST markers will be modified # 75:# groot=(hd0,0) # 127:title Debian GNU/Linux, kernel 2.. 18-6-686 # 128:root (hd0,0) # 132:title Debian GNU/Linux, kernel 2.. 18-6-686 (single-user mode) # 133:root (hd0,0) # 137:### END DEBIAN AUTOMAGIC KERNELS LIST sed -i -r -e s|^(# kopt=root=)${OLDROOT}|\1/dev/mapper/root| /boot/grub/menu.. lst update-grub sed -i -r -e '/^[[:space:]]*savedefault([[:space:]]+|$)/d' -e /### BEGIN AUTOMAGIC KERNELS LIST/,/### END DEBIAN AUTOMAGIC KERNELS LIST/ { /^[[:space:]]*initrd[[:space:]]+/ { n; /^savedefault/! { i\savedefault\t${MINIGRUB1ENTRY}`printf '\n}'` } } /boot/grub/menu.. newroot for SRC in /root/bin/luks_*.. ${SRC} ; done grub-set-default ${MINIOLDGRUB1DEFAULT} cat /boot/grub/default reboot # After reboot check for successful start of new root, otherwise fix the boot problem [ -e /mini-debian ] { echo 'ERROR!!! Unexpected system, this IS mini-debian.. ${SRC} ; done sed -i -r -e '/### BEGIN grub1_mini-debian.. sh ###/d' /boot/grub/menu.. lst sed -i -r -e /^# default was: ${OLDGRUB1DEFAULT}/d -e s#^([[:space:]]*default[[:space:]]+)saved#\1${OLDGRUB1DEFAULT}# /boot/grub/menu.. lst [ -z ${OLDGRUB1FALLBACK} ] sed -i -r -e '/^# fallback added/d' -e '/^[[:space:]]*fallback([[:space:]]+|$)/d' /boot/grub/menu.. lst || sed -i -r -e /^# fallback was: ${OLDGRUB1FALLBACK}/d -e s#^([[:space:]]*fallback[[:space:]]+)${MINIGRUB1ENTRY}#\1${OLDGRUB1FALLBACK}# /boot/grub/menu.. lst update-grub cp /boot/grub/menu.. ${SRC} ; done grub-set-default ${OLDGRUB1SAVED} cat /boot/grub/default reboot # After reboot check for successful start of new root, otherwise fix the boot problem [ -e /mini-debian ] { echo 'ERROR!!! Unexpected system, this IS mini-debian.. ${SRC} ; done [ ${DEBVERSION} -le 6 ] { rm -f /etc/mtab mount -a -f ; mount -a -f ; # to re-create /etc/mtab, important to re-install/update GRUB again } [ ${DEBVERSION} -ge 7 -a ! -e /etc/mtab ] { rm -f /etc/mtab ln -s /proc/mounts /etc/mtab } cat /etc/mtab [ -z ${OLDBOOT} ] grub-install ${GRUBROOTDEV} update-grub cp -pv /boot/grub/grub.. newroot update-initramfs -u # leave chroot exit umount_newroot.. sh for SRC in /root/bin/luks_*.. ${SRC} ; done [ -z ${OLDBOOT} ] { cp /boot/grub/custom.. cfg sed -i -e 's#/boot/#/#' -e s#--set ${MINIDEBUUID}#--set ${NEWBOOTUUID}# /boot/grub/custom.. cfg sed -i -r -e s|^([[:space:]]*set[[:space:]]+root='[(]+[^,]*,[^${MINIDEBPART}]*)[^)]*|\1${NEWBOOTPART}| /boot/grub/custom.. cfg # check that set root='(.. ,msdosX)' is the same as in /boot/grub/grub.. cfg grep -E -e '^[[:space:]]*set[[:space:]]\+root=' /boot/grub/custom.. cfg # otherwise fix manually: nano /boot/grub/custom.. cfg } # Choose new root as default for next boot only grub-set-default 'Mini-Debian' ; grub-reboot 0 ; # WARNING!!! You need to specify fallback default before!!! cat /boot/grub/grubenv reboot # After reboot check for successful start of new root, otherwise fix the boot problem [ -e /mini-debian ] { echo 'ERROR!!! Unexpected system, this IS mini-debian.. ' ; printf '\a' ; } cp /etc/default/grub.. org /etc/default/grub cp -a /boot/grub/grubenv.. org /boot/grub/grubenv update-grub cat /boot/grub/grubenv reboot # After reboot check for successful start of new root, otherwise fix the boot problem [ -e /mini-debian ] { echo 'ERROR!!! Unexpected system, this IS mini-debian.. rm -fv /boot/grub/custom*.. cfg ; \ rm -fv /boot/grub/grub.. * ; \ rm -fv /boot/grub/grubenv.. org ; \ rm -fv /boot/grub/menu.. * ; \ rm -fv /boot/initrd.. img-*.. mini-debian rm -fv /etc/default/grub.. org rm -fv /root/bin/grub*_mini-debian.. sh ; \ rm -fv /root/bin/luks_*_grub*.. sh ; \ rm -fv /root/bin/*mount_mini-debian.. sh ; \ rm -fv /root/bin/*mount_newroot.. sh ; \ rm -fv /root/bin/*mount_oldroot.. sh ; \ rm -fv /root/bin/*mount_temp.. ${SRC} ; done fdisk -u ${FDISKCPARM} -l ${OLDROOTDEV} NEWSWAP=${OLDSWAP} [ -z ${NEWSWAP} ] NEWSWAP=${MINIDEB} echo ${NEWSWAP} NEWSWAPNAME=swap ; #.. FIXME: wanted mapper name.. swapoff /dev/mapper/${NEWSWAPNAME} ; cryptsetup luksClose ${NEWSWAPNAME} swapoff ${NEWSWAP} #.. FIXME: choose if swap partition is encrypted with a random key or unlocked with a passphrase or the root partition key.. NEWSWAPKEY=/dev/urandom ; # random key, no resume possible NEWSWAPKEY=/dev/random ; # random key, no resume possible NEWSWAPKEY=none ; # static passphrase NEWSWAPKEY=root ; # key from encrypted device echo ${NEWSWAPKEY} NEWSWAPTYPE= [ ${NEWSWAPKEY} = '/dev/urandom' -o ${NEWSWAPKEY} = '/dev/random' ] && NEWSWAPTYPE='swap' [ -z ${NEWSWAPTYPE} ] NEWSWAPTYPE='luks' echo ${NEWSWAPTYPE} NEWSWAPUSEFORRESUME=1 ; #.. FIXME: want to use this swap partition for suspend/hibernate.. [ ${NEWSWAPUSEFORRESUME:-0} -eq 1 ] [ ! ${NEWSWAPTYPE} = 'luks' ] { echo 'ERROR!!! For using an encrypted swap partition for hibernation it has to have a static key, not a random one.. Please fix settings.. ' ; printf '\a' ; } cat /root/bin/luks_newswap.. sh __EOF echo Setting new swap vars.. 1 2 NEWSWAP=${NEWSWAP} NEWSWAPDEV=`[ -n ${NEWSWAP} ] { echo ${NEWSWAP} | sed -n -e 's#\([^0-9]*\)\([0-9]*\)$#\1#p' ; }` NEWSWAPPART=`[ -n ${NEWSWAP} ] { echo ${NEWSWAP} | sed -n -e 's#\([^0-9]*\)\([0-9]*\)$#\2#p' ; }` NEWSWAPNAME=${NEWSWAPNAME} NEWSWAPKEY=${NEWSWAPKEY} NEWSWAPTYPE=${NEWSWAPTYPE} NEWSWAPUSEFORRESUME=${NEWSWAPUSEFORRESUME:-0} DEBVERSION=`cut -f 1 -d '.. ' /etc/debian_version` GRUBVERSION=`grub-install -v | sed -n -e 's#[^(]*[(]*[^0-9]*\([0-9]*\).. *#\1#p'` [ \${GRUBVERSION} -eq 0 ] GRUBRELEASE=1 || GRUBRELEASE=2 # NEWSWAPKEYOPTS=`[ ${NEWSWAPKEY} = '/dev/urandom' -o ${NEWSWAPKEY} = '/dev/random' -o ${NEWSWAPKEY} = 'none' ] || echo '--key-file=-' ` NEWSWAPPWOPTS=`[ ${NEWSWAPKEY} = 'none' ] echo '--verify-passphrase --hash=sha256' ` NEWSWAPSCRIPT=`[ ${NEWSWAPKEY} = '/dev/urandom' -o ${NEWSWAPKEY} = '/dev/random' -o ${NEWSWAPKEY} = 'none' ] || echo '/lib/cryptsetup/scripts/decrypt_derived'` # NEWSWAPRESUME=`[ ${NEWSWAPUSEFORRESUME:-0} -eq 1 ] [ ${NEWSWAPTYPE} = 'luks' ] echo /dev/mapper/${NEWSWAPNAME} ` OLDSWAPRESUME=`sed -n -e 's#^[[:space:]]*RESUME=\(.. *\)#\1#p' /etc/initramfs-tools/conf.. d/resume` __EOF.. ${SRC} ; done dd if=/dev/zero of=${NEWSWAP} bs=1024k ; printf '\a' sfdisk --change-id ${NEWSWAPDEV} ${NEWSWAPPART} 82 [ ${NEWSWAPTYPE} = 'luks' ] { [ -n ${NEWSWAPSCRIPT} ] ${NEWSWAPSCRIPT} ${NEWSWAPKEY} | cryptsetup --verbose ${NEWSWAPKEYOPTS} --cipher=aes-cbc-essiv:sha256 --key-size=256 luksFormat ${NEWSWAP} [ -z ${NEWSWAPSCRIPT} ] cryptsetup --verbose ${NEWSWAPPWOPTS} --cipher=aes-cbc-essiv:sha256 --key-size=256 luksFormat ${NEWSWAP} } [ ${NEWSWAPTYPE} = 'swap' ] { mkswap ${NEWSWAP} ; # sets a new UUID for the device } blkid ${NEWSWAP} /dev/null ; sync ; # make sure that superblock is created and written cat /root/bin/luks_newswap.. sh __EOF NEWSWAPUUID=`blkid ${NEWSWAP} | sed -n -e 's#.. *$#\1#p'` __EOF for SRC in /root/bin/luks_*.. ${SRC} ; done sed -i -e s#^[[:space:]]*UUID\=${OLDSWAPUUID:-x}#/dev/mapper/${NEWSWAPNAME}# -e s#^[[:space:]]*${OLDSWAP:-x}#/dev/mapper/${NEWSWAPNAME}# /etc/fstab sed -i -e s#^[[:space:]]*UUID\=${NEWSWAPUUID}#/dev/mapper/${NEWSWAPNAME}# -e s#^[[:space:]]*${NEWSWAP}#/dev/mapper/${NEWSWAPNAME}# /etc/fstab sed -i -e /^[[:space:]]*${NEWSWAPNAME}[[:space:]]*/d /etc/crypttab grep -q -F -e ${NEWSWAP} /etc/crypttab || grep -q -F -e UUID\=${NEWSWAPUUID} /etc/crypttab || { [ ${NEWSWAPTYPE} = 'luks' ] { [ ${DEBVERSION} -le 5 ] echo ${NEWSWAPNAME} ${NEWSWAP} ${NEWSWAPKEY} luks${NEWSWAPSCRIPT:+,keyscript=${NEWSWAPSCRIPT}} /etc/crypttab [ ${DEBVERSION} -ge 6 ] echo ${NEWSWAPNAME} UUID=${NEWSWAPUUID} ${NEWSWAPKEY} luks${NEWSWAPSCRIPT:+,keyscript=${NEWSWAPSCRIPT}} /etc/crypttab } # [ ${NEWSWAPTYPE} = 'swap' ] { # offset=8 protects the UUID of the holding device [ ${DEBVERSION} -le 5 ] echo ${NEWSWAPNAME} ${NEWSWAP} ${NEWSWAPKEY} swap,offset=8 /etc/crypttab [ ${DEBVERSION} -ge 6 ] echo ${NEWSWAPNAME} UUID=${NEWSWAPUUID} ${NEWSWAPKEY} swap,offset=8 /etc/crypttab } } cat /etc/fstab cat /etc/crypttab /etc/init.. d/cryptdisks start [ ${NEWSWAPTYPE} = 'luks' ] { mkswap /dev/mapper/${NEWSWAPNAME} } swapon -a swapon -s ; # additionally may check with top update-initramfs -u ; # already update InitRD to make it work for an accidential reboot # if initrd update fails, just create a new one from scratch rm -f /boot/initrd.. img-$(uname -r).. ${SRC} ; done sed -i -e s#^[[:space:]]*RESUME=UUID\=${OLDSWAPUUID:-x}#RESUME=${NEWSWAPRESUME}# -e s#^[[:space:]]*RESUME=${OLDSWAP:-x}#RESUME=${NEWSWAPRESUME}# /etc/initramfs-tools/conf.. d/resume sed -i -e s#^[[:space:]]*RESUME=UUID\=${NEWSWAPUUID}#RESUME=${NEWSWAPRESUME}# -e s#^[[:space:]]*RESUME=${NEWSWAP}#RESUME=${NEWSWAPRESUME}# /etc/initramfs-tools/conf.. d/resume sed -i -e s#^[[:space:]]*RESUME=${OLDSWAPRESUME}#RESUME=${NEWSWAPRESUME}# /etc/initramfs-tools/conf.. d/resume cat /etc/initramfs-tools/conf.. d/resume [ ${NEWSWAPUSEFORRESUME:-0} -eq 1 ] { echo Make sure resume is enabled in boot loader.. ; printf '\a' [ ${GRUBRELEASE} -eq 1 ] echo 'Enable resume in GRUB 1 (v0.. x), by removing noresume from defoptions in /boot/grub/menu.. lst if present' [ ${GRUBRELEASE} -eq 2 ] echo 'Enable resume in GRUB 2 (v1.. x), by removing noresume from GRUB_CMDLINE_LINUX in /etc/default/grub if present' } [ ${NEWSWAPUSEFORRESUME:-0} -eq 0 ] { echo If partition for hibernation (currently ${NEWSWAPRESUME:-none}) does not exist, then disable resume in boot loader.. ; printf '\a' [ ${GRUBRELEASE} -eq 1 ] echo 'Disable resume in GRUB 1 (v0.. x), by adding noresume to defoptions in /boot/grub/menu.. lst when missing' [ ${GRUBRELEASE} -eq 2 ] echo 'Disable resume in GRUB 2 (v1.. x), by adding noresume to GRUB_CMDLINE_LINUX in /etc/default/grub when missing' } update-initramfs -u # if initrd update fails, just create a new one from scratch rm -f /boot/initrd.. img-$(uname -r) update-grub ; # to remove old entries from Mini-Debian if still present (normally GRUB2 only) and to add changes to GRUB configuration.. reboot swapon -s ; # additionally may check with top # Testing hibernation/suspend if wanted for SRC in /root/bin/luks_*.. ${SRC} ; done [ ${NEWSWAPUSEFORRESUME:-0} -eq 1 ] echo disk /sys/power/state.. rm -fv /root/bin/luks_*.. Be careful with this.. Test it inside a Virtual Machine first.. cryptsetup luksDump /dev/sda3 cryptsetup luksAddKey /dev/sda3 cryptsetup luksRemoveKey /dev/sda3 cryptsetup luksDump /dev/sda3..

    Original link path: /software/luks.htm
    Open archive

  • Title: Magnetic Scrolls Adventures - Maddes.net - Stand: 2008-08-25
    Descriptive info: Magnetic Scrolls Adventures.. Back in the days of the C64 and the Amiga I was a huge fan of Magnetic Scrolls Adventures.. You can still play them on Windows via the Magnetic Emulator.. It is available at the.. Magnetic Scrolls Memorial.. homepage, which also provides lots of information about all Magnetic Scrolls Adventures.. You can also use a.. C64.. or an.. Amiga.. Emulator to play those versions of the games.. The disk images for those are available everywhere.. Another homepage dealing about Magnetic Scrolls is.. Magnetic Scrolls Chronicles.. Unfortunately the PC versions are rare on the internet, as the PC was  ...   Hence I decided to make my PC versions of MS adventures available for download, so that others can repair their bad versions, or can play another version of the same PC adventure.. If you have another version of those adventures, then please let me know.. Have a look at the fact sheet at the.. homepage to see which versions of each adventure are currently known.. The Pawn:.. The Guild Of Thieves:.. , 1.. 3 (in Collection).. Jinxter:.. Corruption:.. 12 (in Collection).. Fish!:.. 10 (in Collection).. Myth:.. Wonderland:.. 21b.. Magentic Scrolls Collection Vol.. 1:.. TGoT 1.. 3, Corruption 1.. 12, Fish 1..

    Original link path: /software/magneticscrolls.htm
    Open archive

  • Title: Setting up SSH for Windows - Maddes.net - Stand: 2007-04-20
    Descriptive info: Setting up SSH for Windows.. SSH erklärt für Menschen :).. SSH-Client.. SSH-Server.. SSH-Tunnel (Port Forwarding) mit Beispiel für VNC.. FTP-Ersatz: SCP bzw.. SFTP.. Verbindungsprobleme.. Es gibt viele tolle Programme mit denen man aus dem Internet auf seinen eigenen Rechner zugreifen kann, z.. FTP-Server, VNC-Server, etc.. Aber die meisten bieten keine verschlüsselte Verbindung, so dass das Anmeldungs-Passwort und die Daten unverschlüsselt übertragen werden.. Diese Daten wandern im Internet über unzählige Rechner bis sie endlich am Ziel angekommen sind, jeder dieser Rechner könnte die Daten speichern, analysieren oder sogar modifizieren.. Auf jeden Fall eine einfache Art zum Einbruch in die Privatsphäre oder zum Erlangen von internen Geschäftsinformationen (z.. Dateien von Word, Excel und PowerPoint).. Hier bietet ein SSH-Server Abhilfe (SSH bedeutet Secure SHell), indem man eine verschlüsselte Verbindung zu diesem Server aufbaut.. Durch diese sichere Verbindung können dann andere Dienste geschleust werden, was man als Tunneln bezeichnet.. Dadurch ändert sich aber auch die Bedienung bzw.. Konfiguration dieser Dienste (VNC, etc.. Man verbindet sich nicht mehr direkt mit dem Server, sondern mit dem Tunnel-Eingang auf dem eigenen Rechner der dann die Verbindung zum Server über die verschlüsselte Verbindung herstellt.. Man kann jeden Dienst tunneln der mit festgelegten Ports arbeitet, leider gehört FTP nicht dazu, aber SSH bietet hier einen gleichwertigen Ersatz mit den SCP- und SFTP-Diensten.. Wir zäumen das Pferd von hinten auf und kümmern uns erstmal um die Einrichtung eines SSH-Client, der sich mit einem SSH-Server verbinden will.. Der SSH-Client für Windows ist.. Einfach runterladen und in das gewünschte Zielverzeichnis installieren, z.. C:\Programme\Putty.. Für die Einrichtung einer SSH-Verbindung muss man folgende Daten wissen: Name oder IP-Adresse des SSH-Servers im Internet (z.. 81.. 82.. 103.. 104 oder test.. org), den Server-Port (meistens 22 für SSH), einen gültigen Benutzernamen auf dem SSH-Server und ob der SSH-Server Zugang über Passwörter und/oder über Schlüssel gewährt.. Bei Passwörtern braucht man natürlich das zum Benutzer gehörende Passwort und bei Schlüsseln muss man sich einen entsprechenden Schlüssel erstellen (mehr dazu nach der Konfiguration).. Nun startet man Putty (Datei putty.. exe ) und gibt in der Kategorie Session die Adresse und Port des Servers ein.. Falls der Server nur Zugang über Schlüssel gewährt, dann muss man in der Kategorie Connection SSH Auth die Datei mit dem privaten Schlüssel (endet mit.. ppk ) eingetragen werden.. Tunnel definiert man in der Kategorie Connection SSH Tunnels (mehr zu Tunneln nach dem SSH-Server).. Hat man alles entsprechend konfiguriert sollte man in der Kategorie Session einen sprechenden Namen für diese Verbindung in das Feld Saved Sessions eingeben und speichern.. Mit einem Doppelklick auf einen Namen in der darunterliegenden Liste wird die ausgewählte Verbindung aufgebaut.. Muss man mal eine Konfiguration ändern, einfach den Namen anklicken und laden, dann die Änderungen vornehmen und - ganz wichtig - wieder speichern.. Beim allerersten Öffnen einer Verbindung zu einem Server fragt Putty, ob man dem Schlüssel des SSH-Servers vertraut, dazu zeigt es den dazugehörigen Fingerprint des Schlüssels an.. Diesen sollte man per eMail, ICQ oder Telefon mit dem Administrator des Servers abgleichen.. Diese Frage erscheint auch wieder wenn sich der Schlüssel des Servers ändern sollte, da eventuell auch der Server gehackt sein könnte.. Deshalb immer und unbedingt den Schlüssel mit dem Server-Administrator verifizieren.. Nach Aufbau der Verbindung sollte ein Fenster mit der Aufforderung Login as: erscheinen, dort gibt man den Benutzer ein.. Danach wird man entweder nach dem Passwort des Benutzers gefragt oder bei Schlüssel-Zugang eventuell nach dem Passwort für den eigenen privaten Schlüssel.. Im Normalfall erhält man dann eine Kommandozeile auf dem SSH-Server, dies kann aber auf dem Server auch anders eingestellt sein.. Da eine Authentifizierung mit Schlüsseln die sicherste Variante ist, wird man eigentlich nur SSH-Server finden, welche diese Methode voraussetzen.. Dazu muss man sich selbst einen privaten Schlüssel erstellen.. Privat bedeutet dabei, dass dieser private Schlüssel nie in andere Hände gelangen darf.. Damit ist sichergestellt, dass dieser Schlüssel nur von einem selbst benutzt wird.. Falls der private Schlüssel doch mal geklaut/kopiert wird, oder wenn man sich nicht sicher ist ob der Schlüssel immer noch privat ist, dann alle Leute, mit denen man über diesen Schlüssel kommuniziert, darüber informieren, einen neuen privaten Schlüssel erstellen und den dazugehörigen neuen öffentlichen Schlüssel an die anderen Leute weitergeben.. Einen Schlüssel erstellt man mit PuttyGen.. Nach dem Start kann man den Sicherheitsgrad des Schlüssels einstellen, hier ist der Standard (SSH2 RSA 1024 bits) vollkommen ausreichend und man kann einfach auf Generieren klicken.. Nun muss man solange die Maus über das PuttyGen-Fenster bewegen bis der obere Balken voll ist.. Durch die Bewegung werden Zufallszahlen generiert, mit denen dann der Schlüssel erzeugt wird und dieser damit nicht reproduzierbar ist.. Nach dem der Schlüssel also generiert wurde sollte man diesem unbedingt ein Passwort verpassen, damit auch der Schlüssel selbst geschützt ist.. Ansonsten liegt dieser im Klartext auf der Festplatte und könnte von jedem ohne Hindernis missbraucht werden.. Achtung! Gross- und Kleinschreibung werden bei Passwörtern beachtet.. Man kann und sollte auch einen Kommentar für den Schlüssel vergeben.. Dieser Kommentar wird einem angezeigt, wenn man das Schlüssel-Passwort eingeben soll/muss.. Es sollte daher etwas Sinniges drin stehen, damit man weiss um welchen Schlüssel es sich handelt und das dazugehörige Passwort eingeben kann.. Falls man mehrere Schlüssel generiert, um z.. für jeden SSH-Server einen eigenen zu verwenden, dann sollte auch der Servername im Kommentar stehen.. Beispiel-Kommentar: maddes.. ssh oder maddes.. ssh@home.. Nachdem wir den privaten Schlüssel komplett erstellt haben, muss man diesen nur noch mit Save private key speichern, z.. als maddes.. ppk.. Diese Datei mit dem privaten Schlüssel kann man dann in Putty bei der Konfiguration einer Verbindung angeben.. Keine Angst man kann auch nachträglich einen Kommentar oder ein Passwort vergeben bzw.. ändern.. Einfach den privaten Schlüssel mit PuttyGen laden, editieren und wieder abspeichern.. PuttyGen wird aber auch noch für die Bekanntmachung des eigenen öffentlichen Schlüssels auf dem SSH-Server gebraucht.. Wenn man einen privaten Schlüssel erzeugt hat, oder mit Load wieder geladen, dann zeigt PuttyGen im oberen Bereich den dazugehörigen öffentlichen Schlüssel in der Form die der SSH-Server benötigt.. Also alles markieren, in die Zwischenablage kopieren und dann per eMail, ICQ oder auf einem anderen Wege dem Administrator des SSH-Servers zukommen lassen.. Fehlt der öffentliche Schlüssel auf dem SSH-Server, so schlägt die Anmeldung am SSH-Server fehl, da die von Putty mit dem privaten Schlüssel verschlüsselten Daten auf dem SSH-Server nicht wieder entschlüsselt werden können.. Für einen SSH-Server auf dem eigenen Windows-Rechner empfiehlt sich die Installation der.. Es gibt zwar auch reduzierte Zusammenstellungen wie.. OpenSSH for Windows.. freeSSHd.. CopSSH.. , diese sind aber teilweise veraltet oder bringen keinen besonderen Vorteil.. Bei der Installation von CygWin für einen SSH-Server müssen die folgenden Pakete berücksichtigt werden:.. Category.. Package.. (or later)..  ...   mit dem SSH-Server verbunden sind.. Ein Tipp der.. FU Berlin.. für die SH-Shell, SCP und SFTP ist das Anlegen des Verzeichnises /cygdrive.. Damit kann man dann etwas einfacher auf alle Laufwerke des SSH-Servers zugreifen, und muss sich nicht mehr an den virtuelle Verzeichnisnamen erinnern und diesen immer wieder eingeben.. Um einen SSH-Server bei einer Neu-Installation genauso wiederherzustellen, muss man folgende Dateien aus /etc sichern: ssh_host_dsa_key* , ssh_host_key* , ssh_host_rsa_key* , ssh_config und sshd_config.. Die Dateien group und passwd sollte man auch sichern, müssen aber bei einer Neu-Installation von Windows neu generiert werden, da sich die internen Schlüsseln ändern.. Sie dienen dann aber immer noch als Vorlage.. Zusätzlich sollte man auch für alle Benutzer die Dateien aus /home/.. ssh sichern, damit die Benutzer sich auch direkt wieder anmelden können.. SSH bietet nicht nur eine Kommandozeile auf dem SSH-Server an, sondern auch sogenannte Tunnel.. Über diese Tunnel können alle anderen Dienste (VNC, etc.. ) verschlüsselt zwischen dem Client und Server genutzt werden.. Dadurch ändert sich aber auch die Bedienung dieser Dienste, man verbindet sich nicht mehr direkt mit dem Server, sondern mit dem Tunnel-Eingang auf dem SSH-Client.. Ein Tunnel wird auf der SSH-Client-Seite eingerichtet, also z.. in Putty.. Man definiert einen lokalen Port als Tunnel-Eingang auf dem SSH-Client, mit dem sich der Dienst-Client dann auch verbindet, und gibt das dazugehörige Ziel für den SSH-Server an.. In Putty definiert man einen Tunnel für eine Verbindung in der Kategorie Connection SSH Tunnels.. Später nicht vergessen die aktualisierte Session-Konfiguration zu speichern, sonst muss man die Tunnel immer wieder neu definieren.. Der SSH-Server kann aber auch nur bestimmte eingehende Tunnel (L-Tunnel) zulassen, so dass evtl.. nicht alle definierten Tunnel zur Verfügung stehen.. Wie man Tunnel definiert werde ich anhand eines fiktiven Dienstes auf Port 4300 erklären:.. Der Dienst-Server läuft (üblicherweise) auf der Seite des SSH-Server.. Dafür würde man den lokalen Port 4300 des SSH-Client umleiten/tunneln über den SSH-Server auf den Dienst-Server mit Port 4300, dies schreibt man dann üblicherweise als L4300:localhost:4300.. L4300 ist dabei der lokale Port auf dem SSH-Client und muss nicht mit dem Port auf dem Dienst-Server übereinstimmen (es ginge also auch L1234:localhost:4300 ).. localhost:4300 ist das Ziel auf der SSH-Server-Seite, dabei erfolgt die Namensauflösung auf dem SSH-Server, so dass localhost der SSH-Server selbst ist (und nicht der SSH-Client).. Zum Einrichten in Putty setzt man in der Kategorie Connection SSH Tunnels unter Port Forwarding den untersten Schalter auf Local , gibt als Source Port den lokalen Port 4300 (bzw.. 1234) an und bei Destination dann localhost:4300.. Nachdem die SSH-Verbindung aufgebaut wurde, startet man den normalen Dienst-Client und verbindet sich mit localhost:4300 (bzw.. localhost:1234 ) und nicht mehr mit dem Dienst-Server direkt.. Der Dienst-Server läuft auf dem SSH-Client, dann muss man einen Tunnel für eingehende Anfragen definieren.. Dafür würde man Anfragen des SSH-Server mit dem Remote-Port 4300 umleiten/tunneln über den SSH-Client auf den Dienst-Server mit Port 4300, dies schreibt man dann üblicherweise als R4300:localhost:4300.. R4300 ist dabei der Port auf dem SSH-Server und muss nicht mit dem Port auf dem Dienst-Server übereinstimmen (es ginge also auch R1234:localhost:4300 ).. localhost:4300 ist das Ziel auf der SSH-Client-Seite, so dass localhost der SSH-Client selbst ist.. In Putty unter Port Forwarding setzt man den untersten Schalter auf Remote , gibt als Source Port den Remote-Port 4300 (bzw.. Nachdem vom SSH-Client die SSH-Verbindung aufgebaut und der Dienst-Server gestartet wurde, startet man den Dienst-Client auf dem SSH-Server und verbindet sich mit localhost:4300 (bzw.. Regel:.. Für ausgehende Anfragen benötigt meinen einen L-Tunnel und für ankommende Anfragen einen R-Tunnel, dabei handelt es sich immer um die Richtung aus Sicht des SSH-Client.. Zur Fernwartung von anderen Rechnern über das Internet oder das LAN ist VNC (z.. ) sehr beliebt, deshalb werde ich dazu die Tunnel definieren und Tricks zur Nutzung von VNC geben.. Ein Standard-VNC-Server wartet normalerweise auf eingehende Anfragen auf Port 5900.. Wenn man also vom SSH-Client auf den VNC-Server eines SSH-Servers zugreifen will, dann benötigt man den Tunnel L5900:localhost:5900.. Läuft der VNC-Server dagegen auf dem SSH-Client und möchte das der SSH-Server darauf zugreifen kann, dann benötigt man den Tunnel R5900:localhost:5900.. In der Standard-Einstellung des VNC-Servers sind Verbindungen mit dem selben Rechner des VNC-Servers nicht erlaubt, denn es macht normalerweise keinen Sinn den Rechner mit sich selbst fernzuwarten.. Durch die SSH-Tunnel sieht dies natürlich ganz anders aus, und man muss deshalb beim VNC-Server unter Preferences Advanced.. Loopback-Verbindungen erlauben.. Will man auf den SSH-Server über VNC zugreifen können, auch wenn kein oder noch kein Benutzer angemeldet ist, dann muss der VNC-Server als Dienst installiert und die Default Settings konfiguriert sein.. Der SSH-Dienst und der VNC-Dienst müssen auf dem Starttyp automatisch stehen, damit SSH- und VNC-Server ohne eine Benutzeraktion laufen.. Der Server von TightVNC bietet aber auch die Möglichkeit, sich vom VNC-Server mit einem VNC-Viewer zu verbinden, also anders als üblich wo sich der Dienst-Client mit dem Dienst-Server verbindet.. Dies geschieht mit der VNC-Server-Funktion Add New Client (Standard-Port 5500) und der VNC-Viewer muss im Listen Mode gestartet sein (Parameter /listen).. Läuft der VNC-Server auf dem SSH-Client ist dies eine ausgehende Verbindung und man benötigt den Tunnel L5500:localhost:5500.. Läuft der VNC-Server hingegen auf dem SSH-Server ist dies eine eingehende Verbindung auf dem SSH-Client für den VNC-Viewer und man benötigt den Tunnel R5500:localhost:5500.. Da FTP zufällige Ports verwendet (.. Details siehe hier.. ) kann es nicht getunnelt werden.. SSH bietet dafür aber einen gleichwertigen Ersatz mit den SCP- und SFTP-Diensten.. Putty kann nur als Shell und für Tunnel verwendet werden.. Als SSH-Client für SFTP/SCP ist.. Da WinSCP auf Putty basiert kann man seine Putty-Schlüssel auch mit WinSCP nutzen, und die Einrichtung der SSH-Verbindung läuft identisch ab.. Falls keine Verbindung hergestellt werden kann, sollte man erstmal überprüfen ob der SSH-Server mit PING vom SSH-Client auf der Kommandozeile erreichbar ist.. Dann sollten alle Firewalls und/oder Router auf der Client- und der Server-Seite kontrolliert werden.. Kann man eine Verbindung aufbauen, sich aber nicht anmelden, dann sind der Benutzer, das Passwort oder evtl.. die Schlüssel nicht korrekt gepflegt.. Zum Beispiel ist Gross- und Kleinschreibung bei Benutzernamen und Passwörtern wichtig.. Eventuell sind auch Benutzer mit leerem Passwort auf dem SSH-Server nicht zugelassen.. Bei Schlüsseln muss der SSH-Client auch den entsprechend vereinbarten Schlüssel verwenden und in der Konfiguration eingetragen haben.. Auf dem SSH-Server muss der dazu passende öffentliche Schlüssel des SSH-Clients in einer einzigen Zeile in der Datei authorized_keys im Verzeichnis.. ssh unter dem Home-Verzeichnis des Benutzers stehen.. Dabei sollte man auch kontrollieren, ob die Zeile genau dem entspricht, was PuttyGen im oberen Bereich zum privaten Schlüssel des Benutzers angibt.. Bei Änderungen hilft ein Neustart des SSH-Servers und des SSH-Clients, um sicher zu gehen, dass die neuen Einstellungen auch wirklich verwendet werden..

    Original link path: /software/openssh.htm
    Open archive


  • Archived pages: 45