Algemeen

Afbeeldingen aanpassen met Mogrify

mogrify

Je hebt wel eens zo’n klus waarbij je een hoop afbeeldingen hebt die veel te groot zijn om te gebruiken. Je wil die afbeeldingen dus schalen. En het is toch wel een gedoe om ze allemaal in Gimp of Krita te laden en één voor één te bewerken.

Herkenbaar? Dan is Mogrify een heel handig alternatief.

Mogrify

Mogrify is onderdeel van ImageMagic. En dat pakket is als een Zwitsers zakmes als het gaat om beeldbewerking. En is voorzien van allerhande scripts die tal van functies kunnen vereenvoudigen. Het Mogrify script is in staat om meer dan 100 verschillende functies te verwerken.

Use the magick mogrify program to resize an image, blur, crop, despeckle, dither, draw on, flip, join, re-sample, and much more. This tool is similar to magick convert except that the original image file is overwritten (unless you change the file suffix with the -format option) with any changes you request. See Command Line Processing for advice on how to structure your mogrify command or see below for sample usages of the command.

Je gebruikt Mogrify vanuit je terminal. Een paar voorbeelden:

Resize met Mogrify

  • Een bestand verkleinen: mogrify -resize 50% afbeelding.jpg
  • Meerdere bestanden: mogrify -resize 50% *.jpg
  • Naar specifiek formaat: mogrify -resize 800×600 *.jpg

Format met Mogrify

Je kan ook het type afbeelding wijzigen met:

  • mogrify -format jpg *.png

Quality aanpassen met Mogrify

Maar je kan ook de afbeeldingskwaliteit aanpassen. Daarbij is 1 de laagste en 100 de hoogste waarde. Bijvoorbeeld:

  • mogrify -quality 80 -format jpg afbeelding.png

Zoals opgemerkt, er zijn wel 100 verschillende mogelijkheden. Je kan die hier terugvinden of je bekijkt de manpage in je terminal (man mogrify)

Vernietig veilig een harde schijf

Heb je nog oude computers op zolder staan waar je van af wil? Dan breng je die natuurlijk naar je lokale milieuplein. Maar zorg er dan wel voor dat er geen data meer op de harde schijf staat. Dat kan je doen door je schijf fysiek te vernielen. Is nog een heel gedoe. Een alternatief is om je schijf te shredden. 

Format vs Shred

Bij een gewone format actie op een schijf wordt feitelijk alleen de ‘boekhouding’ van je schijf gewist. Je data blijft gewoon staan, maar de software weet niet meer waar wat staat. Als je die schijf weer opnieuw gaat gebruiken wordt nieuwe data over de oude data heen geschreven. Gebruik je die schijf niet meer, dan blijft de oude data dus (met enige moeite) terug te vinden.

Als je echter een HDD shred wordt niet alleen de schijf geformatteerd (filesystem gewist), maar wordt vervolgens de schijf gevuld met nullen en enen. Na afloop van die operatie staat de hele schijf dus gevuld met nutteloze data. Er zijn dan nog wel mogelijkheden om die originele data te herleiden, maar daarvoor is dan specialistische kennis en tools voor nodig (zie: https://en.wikipedia.org/wiki/Data_remanence)

Shred

Voor deze actie gebruik ik zelf een HDD docking station. Voor heel oude schijven heb je dan een IDE variant nodig. Sluit die met usb aan op je computer en plaats daarin je schijf. Zoek dan op welke schijf dat is met behulp van fdisk -l of gebruik KDE partitiebeheerder of Gparted om dat te checken. In onderstaande voorbeelden gebruik ik een fictief voorbeeld: /dev/sdx

Het commando wat je dan gebruikt is:

sudo shred /dev/sdx

Dit commando zal 3 x nullen en enen over je harde schijf wegschrijven. En dat zal bij een grote schijf (> 1 TB) erg lang gaan duren. Daarom is het fijn om de voortgang te volgen met behulp van de toevoeging -v

sudo shred /dev/sdx -v

Opties

Je kan met behulp van -n het aantal cycli bepalen. Bijvoorbeeld:

sudo schred -v -n 10 /dev/sdx zal die schijf maar liefst 10 x extra met nullen en enen vullen.

Andere opties die je hebt zijn:

-f (forceert de schrijfrechten voor die schijf)

-u (wist alle data die overschreven wordt)

-z (een extra laag nullen om te verbergen dat je de schijf hebt geshred)

Je zou dus helemaal los kunnen gaan met

sudo shred -vfuz -n 10 /dev/sdx

Die actie zou je wel eens dagen of zelfs langer kunnen bezig houden. Voor huis- tuin en keuken gebruik is 1 x meer dan voldoende oftewel:

sudo shred -v -n 1 /dev/sdx

PDF bewerken en converteren

Vanuit de terminal kan je eenvoudig meerdere handelingen voor je PDF bestanden uitvoeren. Zorg dan wel dat je poppler-utils en ghostscript hebt geïnstalleerd.

PDF  naar tekst

pdftotext [pdf bron bestand] [output bestand.txt]

Converteer PDF naar PNG

convert -density 150 input.pdf -quality 90 [output bestand.png]

Converteer PDF naar HTML

pdftohtml [options] [pdf bron bestand] [output bestand.html]

Extract afbeeldingen uit PDF naar PNG

pdfimages -j [pdf bron bestand] [output bestand.png]

Pas resolutie PDF aan

gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=out.pdf in.pdf

Waarbij -dPDFSETTINGS een van volgende opties kan zijn:

/screen : late resolutie output, laagste output formaat
/ebook : medium-resolutie output, medium output formaat
/printer OR /prepress: hoge resolutie met maximum output formaat

encode en decode base64

Base 64

Sommige applicaties slaan opgeslagen wachtwoorden op in het Base 64 formaat.  De data van dit formaat bestaat uitsluitend uit a-z, A-Z, en / karakters. Dat is dus afwijkend van ASCII tekst want daarin werk je met a-z, A-Z, 0-9, “, %, &, ‘, (, ), *, +, -, _ en de , karakters.

Ik had onlangs een opgeslagen wachtwoord nodig uit Filezilla. Die wachtwoorden staan in het Base 64 formaat opgeslagen in ~/.config/filezilla/sitemanager.xml.

Het omzetten van een dergelijk opgeslagen wachtwoord kan vanuit je terminal gebeuren.

Base 64

Om dat te laten zien maak ik eerst zelf een Base 64 bestand aan met digiplace als input:

echo ‘digiplace’ | base64 waar dan vervolgens ZGlnaXBsYWNlCg== als output uit komt rollen.

De conversie van Base 64 naar leesbare ascii gaat dan met behulp van

echo ‘ZGlnaXBsYWNlCg==’ | base64 –decode  waar dan weer keurig digiplace uit de bus komt vallen.

Het == teken aan het einde van de string heeft een speciale betekenis. Wil je meer weten hoe dat zit of nog meer informatie over dit onderwerp lezen dan verwijs ik je graag naar deze pagina: https://www.hcidata.info/base64.htm waar je ook online e.e.a. kan uitvoeren.

Desktop vitals

VITALS

Om temperatuur, spanning, toerental van je fans etc. in de gaten te houden doe je een sudo apt install lm-sensors om vervolgens een sudo sensors-detect uit te voeren.

VITALS

Als je dan een doorlopend inzicht wil krijgen in je hardware kan je gebruik maken van conky of je installeert een GNOME extension. Voor op mijn desktop is tegenwoordig de keuze gevallen op VITALS: https://extensions.gnome.org/extension/1460/vitals/

VITALS

Zelf hou ik dan zicht op temperatuur, processors, geheugen, systeem en netwerk. Met behulp van ‘Remove app menu’, een andere extensie, plaats ik dan mijn VITALS links in het paneel.

VITALS

Digiplace Ubuntu desktop

OS: Ubuntu 19.04 x86_64
Packages: 2433 (dpkg), 11 (snap)
DE: GNOME Shell
WM: GNOME Shell
WM Theme: Adwaita
Theme: Yaru
Icons: Yaru

De volgende vier schermen laten zien welke programma’s vanuit GNOME Shell op Digiplace desktop worden aangeboden. Het is een mix van dpkg, snap en Google Chrome snelkoppelingen die hier worden weergegeven.

Snaps

Naast de standaard geïnstalleerde snaps (core, core18, gnome-3-28-184, gnome characters, gnome-logs, gnome-system-monitor, & gtk-common-themes) zijn er drie extra snaps toegevoeg: scrcpy, spotify & winds.

Intel

Intel kwetsbaarheden

Onderzoekers van de Vrije Universiteit Amsterdam en daarna van andere universiteiten (waaronder de KU in Leuven) hebben een serieus lek gevonden in moderne Intel-processors. Die ontdekking is al enige tijd geleden aan het licht gekomen en nu Intel een patch heeft uitgebracht komen de achtergronden naar boven.

Er is inmiddels het nodige te vinden over dit onderwerp. Zo staat er een prima stuk op Tweakers (Onderzoekers vinden nieuwe kritieke lekken in vrijwel alle Intel-cpu’s) en tal van andere bronnen maken hier natuurlijk melding van.

Is het echt een serieus probleem?

Dat lijkt mij wel. Even de belangrijkste bevindingen op een rij:

  • Onderzoekers van de Vrije Universiteit hebben een groot datalek gevonden in de meest gangbare Intel-processoren. Alle (!) Intel processoren die de laatste 10 jaar zijn verschenen zijn vatbaar voor deze kwetsbaarheid. Ruim 80% van alle computers (desktops, laptops, servers/cloud) maakt gebruik van deze Intel processoren.
  • Intel heeft daarna samen met de VU de details bekend van RIDL (Rogue In-Flight Data Load), een kwetsbaarheid waarmee hackers ‘vrijwel alle data’ kunnen stelen van computers. De essentie van het probleem is dat hackers kunnen meekijken met gegevens die de processor op dat moment verwerkt.
  • Kwaadwillenden kunnen dit lek misbruiken door bijvoorbeeld code te verstoppen in een linkje of via een onschuldig lijkende webadvertentie.
  • Er zijn geen mogelijkheden om achteraf vast te stellen of er inderdaad data van je computer in verkeerde handen is gevallen.

Patch beschikbaar, maar is het voldoende?

Dankzij de bevindingen van de wetenschappers bij de Vrije Universiteit en het KU Leuven is Intel deze week naar buiten gekomen met een oplossing. Het is niet ongebruikelijk om een lek stil te houden en pas naar buiten te komen als er een oplossing voorhanden is. Voor alle platforms zijn er nu patches ter beschikking gekomen. Ubuntu heeft op 15 mei bijvoorbeeld een nieuwe kernel én een nieuwe zgn. Intel Microcode aangeleverd via haar reguliere updates.

Is het je niet opgevallen en wil je het checken? Open dan je /var/log/apt/history.log en zoek naar een gelijkwaardige aantekening als:

Start-Date: 2019-05-15  08:59:11
Commandline: /usr/bin/unattended-upgrade
Upgrade: intel-microcode:amd64 (3.20190312.1, 3.20190514.0ubuntu0.19.04.1)
End-Date: 2019-05-15 08:59:21

Toch is het nog maar de vraag of het installeren van deze patch voldoende is om het probleem echt te tackelen. Dat komt omdat moderne cpu’s werken met Hyper-threading. De patch die nu is uitgebracht beinvloed niet de gevaren die zijn verbonden aan het uitvoeren van instructies die voortkomen uit hyper threading. Wat de patch wel doet is het legen van de zgn. CPU buffers. Op die manier wordt ter beschikking staande data gewist voor een nieuwe instructie wordt uitgevoerd. Maar het is niet in staat om de zgn. SMT kwetsbaarheid te verhelpen. SMT staat voor Symmetric Multi-Threading en staat ook bekend als Hyper Threading. Met andere woorden, er wordt ook data uitgewisseld tussen de fysieke kern en de (zeg maar) virtuele processor. En daar kan vooralsnog geen patch tegenop.

The use of Symmetric Multi-Threading (SMT) – also known as Hyper-Threading – further complicates these issues since these buffers are shared between sibling Hyper-Threads. Therefore, the above changes are not sufficient to mitigate these vulnerabilities when SMT is enabled. As such, the use of SMT is not recommended when untrusted code or applications are being executed.

Hyper threading

Hyper-threading is de technologie die het mogelijk maakt dat een fysieke processorkern zich als twee logische processors gedraagt en daarmee de cache en externe interfaces delen. In de meeste gevallen wordt het hierdoor mogelijk dat de processorkern twee threads tegelijk uitvoert. Een processor met hyperthreading-technologie wordt door je besturingssysteem meestal als twee losse processoren gezien. Dankzij deze technologie presteert jouw computer gemiddeld 30% sneller omdat berekeningen van de cpu parallel kunnen worden uitgevoerd op die extra kern.

Juist het uitwisselen van data tussen de fysieke en de ‘logische’ kern geeft de mogelijkheid om data vanuit een computer te oogsten. Deze gevoeligheid was al eerder ontdekt en heeft bijvoorbeeld OpenBSD er in 2018 toe gebracht om Hyper threading standaard uit te laten staan. Google lijkt ook te overwegen om te stoppen met hyper threading op haar ChromeOS en Apple geeft ook aan dat voor volledige veiligheid je beter hyper threading uit kan zetten. Dat is nogal een advies want daarmee verlaag je de verwerkingssnelheid van die computer met circa 30%!

Wat te doen in dit geval?

Ga je nu als Linux desktop gebruiker in je bios hyper threading uitzetten? En zo ja, merk je dat dan? Die laatste vraag is nog wel het meest relevant. Want niemand wil dat de prestaties van je computer met 30% afneemt. Maar als je jouw computer gebruikt om -zeg maar- de standaard kantoortoepassingen te gebruiken dan ga je daar niets van merken. Gebruik je echter je computer om video te monteren, of om grote database queries te verwerken of om software te compilen dan maakt het natuurlijk wel degelijk uit. Zie bijvoorbeeld de recente uitkomsten van een test op Phoronix: Intel Hyper Threading Performance With A Core i7 On Ubuntu 18.04 LTS

Maar mocht je achter een computer zitten met belangrijke informatie dan zou ik toch maar het zekere voor het onzekere nemen. Dat zal in de regel niet gelden voor ‘gewone gebruikers’, maar als je als CEO toegang hebt tot belangrijke en gevoelige informatie dan denk ik toch dat het niet onverstandig is om maatregelen te nemen. En oh ja…de cloud is toch wat bewolkt aan het raken op deze manier. Hoe dan ook, dit verhaal gaat waarschijnlijk nog wel een staartje krijgen.

Tot slot

Mogelijk komen ook de fabrikanten van moederborden met een nieuw bios uit. Hou dat dus ook in de gaten. Je kan overigens vanuit je terminal zien welke bios versie je gebruikt met het commando:

sudo dmidecode | less

Je kan ook vanuit je terminal bekijken of jouw GNU/Linux computer kwetsbaar is: Bekijk daarvoor de output van het commando:

cat /sys/devices/system/cpu/vulnerabilities/mds

Komt daar als uitkomst uit ‘Vulnerable: Clear CPU buffers attempted, no microcode; SMT vulnerable‘ dan heb je nog niet de laatste microcode (de patch) geïnstalleerd op je linux computer.

Komt er als antwoord uit ‘Mitigation: Clear CPU buffers; SMT vulnerable” dan is dankzij de patch wel het nodige voordeel bereikt, maar blijft de SMT kwetsbaarheid onaangeroerd.

Meer informatie:

https://blog.ubuntu.com/2019/05/14/ubuntu-updates-to-mitigate-new-microarchitectural-data-sampling-mds-vulnerabilities

https://wiki.ubuntu.com/SecurityTeam/KnowledgeBase/MDS?_ga=2.197643567.1489802353.1557904875-802933965.1555581818

https://zombieloadattack.com/

https://www.nrc.nl/nieuws/2019/05/14/hackers-mikken-op-het-intel-hart-a3960208

Digiplace website opgeschoond

De digitale variant van de voorjaars schoonmaak heeft toegeslagen. Om te beginnen zijn onnodige plugins verwijderd, waaronder ook de classic editor van WordPress. Het wordt tijd om eens in het diepe te springen en de nieuwe Gutenberg werkwijze te omarmen. Anders komt het er nooit van. De footer widgets zijn tot slot ook opgeheven en in de sidebar staan nu alle relevante zaken keurig bij elkaar.

In de header heb ik een tagline (linux op je desktop) opgenomen en ik heb de Ubuntu kleuren doorgevoerd in linkjes en in bepaalde beeldelementen (knoppen en paginanummering).

Resmush

Alle afbeeldingen op de website zijn vervolgens onder handen genomen door reSmush.it Image Optimizer. Dat is wel een aanwinst voor de website. Uiteraard heb ik altijd mijn afbeeldingen opgeslagen met behulp van GIMP (Save for Web), maar er was duidelijk nog ruimte voor verdere optimalisaties mogelijk. Een volledige resmush leverde maar liefst 55% aan reductie op (255 MB).

GTmetrix

Het resultaat? Een veel snellere website! Volgens GTmetrix is er nu een PageSpeed score van 90% bereikt. Er zijn nog een paar kleine kansen op verbetering (nog betere gzip compressie maar daarvoor ben ik meer afhankelijk van de hosting provider dan van mijn configuratie. De zgn. YSlow Score kan ook beter maar om daar nou voor te investeren in een CDN lijkt mij overbodig met uitsluitend Nederlandse gebruikers.

GTmetrix output

Extra harde schijf toevoegen

harde schijf

Stel je wil een extra harde schijf inbouwen in je computer. Schijven die al beschikbaar zijn tijdens het installatie proces van Ubuntu kan je meteen opgeven en zijn dan ook automatisch beschikbaar. Maar wat doe je als je achteraf een extra schijf wil inbouwen? Je gaat dan natuurlijk niet meteen Ubuntu opnieuw installeren.

UUID

Bouw eerst die schijf in. Herstart dan je computer en zoek het door je besturingssysteem opgegeven UUID op. UUID staat voor Universally Unique Identifier en is dus een ID die wordt gebruikt om (in dit geval) de identiteit van een harde schijf aan te duiden. Dat gebeurt d.m.v. een zgn. 16-octet (128-bit) nummer. De UUID wordt weergegeven in 32 hexadecimale cijfers. Deze cijfers zijn ingedeeld in vijf groepen, in ongelijk aantal en gescheiden door koppeltekens: 8-4-4-4-12.

Oké, dat is dus een hoop theorie, nu de praktijk:

Open een terminal en ga naar de map waar alle UUID’s worden bijgehouden. Oftewel tik in:

cd /dev/disk/by-uuid

Vervolgens krijg je een overzicht met behulp van het commando

ll

Bestudeer daar de opgegeven UUID’s en bepaal welke UUID hoort bij jouw nieuw ingebouwde schijf. Je kan daarbij gebruik maken van bijv. Gparted als het je niet meteen duidelijk is welke schijf hoort bij sda, sdb, sdc etc. Je kan ook even kijken welke schijven al automatisch worden gebruikt door even te spieken in je /etc/fstab/ Dat gaat heel eenvoudig met het commando:

cat /etc/fstab

Voordat je die nieuw gevonden UUID gebruikt om je /etc/fstab aan te passen moet je eerst een mountpoint aanmaken. In het voorbeeld hierna gebruik ik daarvoor /mnt/tweedeschijf.

Je maakt dat aan met het commando:

sudo mkdir /mnt/tweedeschijf

en maakt die schijf beschrijfbaar met behulp van

sudo chown -R user:user /mnt/tweedeschijf

Daarbij vervang je user:user door je eigen gebruikersnaam.

Vervolgens geef je jouw computer opdracht om bij het opstarten die nieuwe schijf automatisch te koppelen aan dat mountpoint. Daarvoor pas je jouw /etc/fstab aan. Gebruik je editor naar voorkeur, ik gebruik graag in een terminal nano dus het commando

sudo nano /etc/fstab

Voeg dan een nieuwe regel toe aan jouw fstab zoals hieronder staat vermeld. Let op! Gebruik het juiste UUID (je andere schijven staan er ook al in) en het zojuist aangemaakte mountpoint én bedenk dat het voorbeeld uitgaat van een nieuwe schijf die bestaat uit één partitie met ext4 als filesysteem.

UUID=jouwgevondenUUID /mnt/tweedeschijf    ext4    defaults        0       2

Start je computer opnieuw op, ga in je bestandsverkenner (Nautilus, Dolphin, Konqueror, Nemo, Thunar etc. etc.) naar je mountpoint en maak er vervolgens een bladwijzer van.

harde schijf

Scroll naar top