Disk vervangen ZFS RAID-Z2

Oh jee, er is een disk stuk gegaan op mijn Proxmox server:

root@host2:~# zpool status
   pool: rpool
  state: DEGRADED
 status: One or more devices could not be used because the label is missing or
     invalid.  Sufficient replicas exist for the pool to continue
     functioning in a degraded state.
 action: Replace the device using 'zpool replace'.
    see: http://zfsonlinux.org/msg/ZFS-8000-4J
   scan: resilvered 8.73G in 0h8m with 0 errors on Fri Apr  5 15:26:14 2019
 config:

NAME        STATE     READ WRITE CKSUM
rpool       DEGRADED     0     0     0
  raidz2-0  DEGRADED     0     0     0
    sda3    UNAVAIL      0     0     0
    sdb3    ONLINE       0     0     0
    sdc3    ONLINE       0     0     0
    sdd3    ONLINE       0     0     0

errors: No known data errors

Disk vervangen door een ‘nieuwe’. Partitietabel kopiëren van een andere disk:

root@host2:~# sgdisk --replicate=/dev/sda /dev/sdb
The operation has completed successfully.

root@host2:~# fdisk -l /dev/sda
Disk /dev/sda: 1.8 TiB, 2000398934016 bytes, 3907029168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 728ECA41-74BD-442B-A35A-1D71A5CD3F8D

Device       Start        End    Sectors  Size Type
/dev/sda1       34       2047       2014 1007K BIOS boot
/dev/sda2     2048    1050623    1048576  512M EFI System
/dev/sda3  1050624 3907029134 3905978511  1.8T Solaris /usr & Apple ZFS

ZFS vertellen dat ze partitie 3 van de nieuwe disk mag gaan gebruiken:

root@host2:~# zpool replace rpool /dev/sda3
Make sure to wait until resilver is done before rebooting.

Af en toe eens kijken hoe de vlag er bij hangt:

root@host2:~# zpool status
  pool: rpool
 state: DEGRADED
status: One or more devices is currently being resilvered.  The pool will
	continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
  scan: resilver in progress since Mon Apr  8 07:50:19 2019
	9.52G scanned out of 47.7G at 99.4M/s, 0h6m to go
	1.67G resilvered, 19.93% done
config:

	NAME             STATE     READ WRITE CKSUM
	rpool            DEGRADED     0     0     0
	  raidz2-0       DEGRADED     0     0     0
	    replacing-0  DEGRADED     0     0     0
	      old        UNAVAIL      0     0     0
	      sda3       ONLINE       0     0     0  (resilvering)
	    sdb3         ONLINE       0     0     0
	    sdc3         ONLINE       0     0     0
	    sdd3         ONLINE       0     0     0

errors: No known data errors

MySQL Replicatie inrichten

Zorg dat je twee sessies open hebt staan op de master. In de ene sessie blokkeer je schrijf-acties naar de database:

In de tweede sessie maak je een dump van je database:

In de eerste sessie haal je de master-gegevens op die je later nodig hebt:

Schrijf-acties kunnen nu weer toegestaan worden:

Zorg dat de slave replicatie mag doen:

Kopieer nu de dump-file naar de nieuwe slave, en importeer deze:

Configureer de slave configuratie van MySQL:

Controleer de slave configuratie:

 

PDF converteren van RGB naar CMYK

Op verschillende plekken verschillende varianten van het volgende gevonden:

En over PDF-converteren gesproken: Dit is een heel handig overzicht!

Certificate Signing Request

Key file:

Passphrase verwijderen:

Request:

Optioneel, self-signed certificate:

Bestaand proces naar een nieuwe screen sessie

Thank you very much, Romain.

PHP Sessies en paden

Wat een gedoe, twee of meer applicaties met eigen sessies onder dezelfde hostname. Dan moet je paden mee geven in de cookies. En wel vóór het starten van de sessie.

Maar omdat de sessie-cookie niet zomaar wordt bijgewerkt met iedere request moet na het starten van de sessie de lifetime nog worden bijgewerkt. ’t Is nu eenmaal niet anders. Oh, en het schijnt belangrijk te zijn om een sessie-naam te definiëren

Dus de enige juiste manier, volgens mij, om een sessie te (her)starten:

Of je gooit de hele sessie-afhandeling van PHP overboord, en bouwt zelf wat beters.

Thunderbird, Google en event invitations

Pffrt. Waarom moet dat nou zo moeilijk zijn? Kan de Google Calendar plugin mij niet gewoon voor alle agenda-uitnodigingen de optie geven om te accepteren?

Fixed mostly the same way, but did not delete anything
Used config editor and changed calendar.google.enableEmailInvitations “yes”
Restarted TB
Right clicked Google Calendar and selected properties
Under properties there was a new choice for e-mail and I selected the email address I wished to add invites from.
Worked great

bron

Embedded base64 images

Ik ben er net achter gekomen dat het sinds HTML 4.01 mogelijk is om plaatjes in base64 te embedden in HTML code. Maar dat is handig zeg! Neem het volgende stukje:

Resultaat hiervan is:

Standaard Cisco config

Gebaseerd op de Cisco Guide to Harden Cisco IOS Devices.