Doorgaan naar hoofdcontent

Posts

Programming the Infrared Emitter

In afwachting van mijn usb-infraroodzender, ben ik alvast begonnen met het schrijven van een programma om de zender aan te sturen. In bepaalde opzichten simpeler dan ik dacht, aan de andere kant onverwachte complicaties.  Om de ir zender iets te laten doen moet je commando intikken zoals bijvoorbeeld "irsend SEND_ONCE rm-d29m KEY_POWER". Dat is wel heel veel werk. Vooral omdat ik deze contraptie heb bedacht om er makkelijk titels mee te kunnen intikken op mijn minidiscs.  de usb-infraroodzender De oplossing is simpel: maak een programmatje die al die vervelende commandos voor je intikt. UNIX is ontworpen voor dit soort rare wensen. En zoals zo vaak met UNIX zijn er vele oplossingen mogelijk. Ik koos voor een simpel programmatje in bash. Maar zelfs dat simpele programmatje stelde me toch nog voor problemen. Aanvankelijk wilde ik gebruik maken van de functietoetsen en zelfs return en spatie omleiden. Niet onmogelijk, maar wel in mijn opzet.  Ik maak gebruik van een loop die...
Recente posts

Saved by the bell

dsystem is een knipoog naar systemd, het systeem dat het wel eens even allemaal zou gaan regelen in de linuxwereld. Al is dsystem in eerste instantie vernoemd naar de auteur. Dsystem draait elke 24 uur (op een vast tijdstip) of tijdens de start van de computer. Maar wat als dat samenvalt? Dan heb je twee keer dsystem aan het werk, en dat is ongewenst. Om dat te voorkomen controleert dsystem eerst of er niet een lock file staat in /local/var/run. Als die er niet is, schrijft dsystem een lock file. Zo wordt gegarandeerd dat er maar e1n instantie van dsystem draait. Dsystem geeft system info, maakt backups, en doet upgrades. Om dsystem zelf te upgraden is er echter een apart programma nodig. Dsystem kan niet zichzelf upgraden. Dat wordt dus gedaan door dupdsys. Ze worden achter elkaar aangeroepen door cron. Om te voorkomen dat dupdsys direct dsystem gaat overschrijven, controleert dupdsys op de lock file van dsystem. In de praktijk komt dat nauwelijks voor, debian cron wacht keuri...

CRLF vs LFLF

WEBSITE VAN DE WEEK why-is-windows-using-crlf-and-unix-just-lf-when-unix-is-the-older-system? Terug naar de techniek achter de typmachine en de telex en hoe dat nog steeds een rol speelt op je hypermoderne smartphone, al zie je daar helemaal niets meer van, behalve als het misgaat. Wie ooit wel eens gewerkt heeft op een oude typmachine herinnert zich nog het belletje als je bijna het einde van de regel naderde. Het werd dan hoogste tijd om je woord af te maken of af te breken op het eerst beschikbare lettergreepeinde. Om dan vervolgens de kruk naar links te trekken en de wagen met de kruk naar links te duwen, het was een vloeiende beweging. Niet alleen werd het papier een regel naar boven geduwd. maar ook kwamen de hamers weer in positie aan de linkerkant van het papier. Een commando dat bij de telex twee commandos waren: Carriage Return (CR, ascii code 13 0D hexadecimaal 0001101 7bits binair) en Line Feed (LF ascii code 10 0A hexadecimaal 0001010 7bits binair) Heel vroege...

Auxilery server

uit de serie "dagboek van een systeembeheerder" auxilery server deel II Het project is in zijn afrondingsfase. Ik heb alle scripts geschreven, de schijven gepartioneerd en alles gescheduled, er cronjobs voor gemaakt, zoals dat in de UNIX wereld heet. Om het project nog even samen te vatten: de auxilery server is een server die de taken van de primary server kan overnemen zodra de laatste uitvalt. Dat is op zich niet zo bijzonder, zij het dat de auxilery in principe niet online is. Eens per week wordt ie aangezet, waarbij hij volautomatisch alles synchroniseert met de primary. Niet helemaal alles, maar wel de noodzakelijke dingen om het netwerk door te laten draaien. Dat komt neer op in ieder geval de homedirectorys, dns, dhcp, ldap en security updates. Mocht de primary het ergens halverwege de periode opgeven dan mis je wel een paar dagen. Maar die zijn niet verloren, omdat of de backups nog intact zijn, of de andere schijven. Of alle schijven zijn er nog, maar de...

Onderzoeksdata redden van kapotte computers

Eerder op facebook gepubliceerd op 02-10-2016 Dagboek van een systeembeheerder Op een dag werd ik bij een computer geroepen waar data opstonden van een onderzoek dat een tijd geleden was gedaan en al bijna vergeten. Eerder die dag herinnerde een wetenschapper zich deze data, die plotseling toch belangrijk waren en liever gisteren dan vandaag van die computer afmoesten om in veiligheid te worden gesteld. Of wij dat niet even konden oplossen? Het probleem met de computer was dat het niet verbonden was met het netwerk en de floppydrive niet meer werkte. Ter plaatse aangekomen constateerde ik dat het ding geen standaardspul was. Maar hij zag er wel indrukwekkend uit. Het was een enorme toren die niet onder mijn buro zou passen. Waarschijnlijk clandestien ingekocht voor een speciaal onderzoek. Maar geen netwerkkaart. Waar ik toch niks aan zou hebben gehad, want onze netwerksoftware stond er niet op. Maar uiteraard had het ding wel een parallelle poort. Dus ik haalde van boven een st...

Thin clients met ltsp

Ik heb in huis drie workstations staan, op mijn favoriete werkplek de meest courante computer uiteraard. Maar op die andere werkplekken was het behelpen, want dat waren toch de afdankertjes. Lichtere windowmangers hielpen niet echt, nog afgezien van alle update ellende en ander software onderhoud. Zo'n plek gebruik je niet al te vaak, of is er voor het bezoek als je toevallig tegelijk achter een computer wil zeitten. Dan moet er geen tijd verdaan worden aan dat soort gedoe. De oplossing is de thin client . Mijn keuze voor de benodigde software viel op ltsp . Het grote voordeel is dat op de thin clients vrijwel automatisch altijd een kloon van mijn workstation verschijnt. Vrijwel automatisch omdat voor kernelupdates op de ltsp server nog een paar handelingen moeten worden verricht om ook op de thin clients te verschijnen. Hoe dit gedaan moet worden staat hier . Een paar kleine opmerkingen: * In de tekst wordt gesteld dat apparatuur als cd-rom of usb-stick standaard niet te ben...

Ubuntu Gnome Menus

Globaal met de hand Gnome Menu wijzigen. In /usr/share/applications staat de informatie waarmee het menu is opgebouwd. Elke file is een menu entry. De files zijn opgemaakt in XML. De bestaande files geven voldoende informatie over hoe een nieuwe entry moet worden gemaakt. Wie met een grafische tool een entry wil maken kan dat doen met system/preferences/Main Menu. Het resultaat van dit werk wordt opgeslagen in ~/.local/share/applications/alacarte-made-X.desktop, waar X een nummer is als er meerdere gemaakt worden. Deze file kan je kopieren naar de globale menu directory. Deze verschijnt dan onder Applications/Other. Hoe deze te doen verschijnen onder een ander menu onderdeel heb ik nog niet uitgevogeld. Maar op deze site zou het te vinden moeten zijn.