jeudi 22 février 2024

Installer un MTA pour le mail du LAN

J'ai essayé

  • dma (convient pour les satellites tels que le serveur de backup, très facile à configurer)
  • courier-mta (pas réussi à configurer)
  • msmtpd (pas réussi à configurer)
  • puis finalement postfix
Pour la configuration de postfix, j'ai utilisé la config a minima proposée par dpkg-reconfigure (localonly) puis pour autoriser les connections des satellites j'ai changé dans /etc/postfix/main.cf:

  1. mynetworks = 127.0.0.0/8 192.168.1.0/24 [::ffff:127.0.0.0]/104 [::1]/128
  2. inet_interfaces = all

Je n'ai pas configuré de smarthost... exprès, pour empêcher postfix de sortir je pourrais utiliser une règle dans le firewall mais j'ai simplement indiqué d'utiliser "localhost" comme relayhost (-> boucle) et les couriers sont retournés à l'envoyeur.

relayhost = localhost


Enfin, je rajoute un alias:

$ cat /etc/aliases
# See man 5 aliases for format
postmaster:    root
root: luc

Voilà voilà...

samedi 9 décembre 2023

Dell Laptop

Retrouvé le Dell PP33L (Studio 1535?) mais pas son alimentation... je ne sais pas s'il démarre encore, mais en tous cas il semble n'avoir qu'un USB 2.0 donc pas très intéressant pour y brancher des disques. Le Toshiba serait plus avantagé de ce point de vue semble-t-il.

Voir ce qu'on peut récupérer (HDD?) puis à recycler.

Toshiba laptop

Retrouvé le laptop Toshiba Satellite C55-A-1NH (de B.)

Avec son alimentation de même marque, il boote touhours OK en Windows.

Rangé dans un carton avec d'autres petites choses comme les câbles et disques récupérés de feue WS1.lan

Backup rsync par le réseau plus état des lieux hardware

Bon c'est BEAUCOUP plus lent de faire passer le backup rsync via ssh sur le LAN.  Il est vrai que j'ai non pas un mais deux commutateurs/routeurs sur le chemin entre la source et la destination, çà n'aide sûrement pas.  Je pourrais supprimer un des deux puisque je n'ai plus qu'un laptop à brancher dans mon bureau.

La destination est pour le moment un ancien laptop (de F.) avec le disque externe USB de 4TB en 3.5".

Par ailleurs j'ai démantelé la vieille station de travail HP pour y retrouver un SSD de 240MB et un HDD de 3TB. J'avais aussi un HDD de 2TB sur mon bureau depuis longtemps.  Un autre de 250MB dans un boitier USB externe... 

Nettoyé tous ces disques en déplaçant ce qui vaut la peine/doit être examiné plus en détail (déplacé vers le HDD Sea).

J'ai aussi commandé et entretemps reçu un deuxième boitier USB externe pour disque de 3.5".  Avec les deux plus gros HDD vidés (2TB+3TB) et montés en BTRFS à deux volumes, çà me fait la place pour un backup local complet de mon laptop principal.  A voir si on pourrait ensuite le monter sur le laptop serveur backup et commencer une rotation?  Faudra tester le déplacement d'un filesystem BTRFS multivolume vers un nouvel hôte...

Ensuite il me restera à démanteler et recycler la tour qui me servait de serveur urbackup jusqu'il y a peu.  J'ai aussi quelques laptops déclassés en réserve, à tester et recycler.

mercredi 29 novembre 2023

Erreurs BTRFS sur nouveau disque externe - simplification du backup

OK urbackup est une Rolls de système de backup mais il faut des jours et des jours pour copier mes 2TB de données environ actuellement... c'est devenu assez ingérable et les sauvegardes incrémentales ne sont pas forcément très courtes non plus.

Ce ne serait encore rien si je n'avais pas fréquemment des erreurs I/O rapportées par le kernel lors de ces longues sauvegardes.

J'ai récemment ajouté un disque externe 2 TB 2.5" en remplacement du Maxtor M3 de 6 ans d'âge qui venait de rendre l'âme... rien à faire, toujours des I/O errors (avec un LVM pour avoir 4 ou 6 TB en plusieurs drives USB)

J'ai alors ajouté un externe 4 TB 3.5" (Intenso)... utilisé seul grâce à sa plus grande capacité (pas besoin de LVM).  Mais... à nouveau des erreurs.

Bon on simplifie.  Le drive 4 TB sera formaté en BTRFS (pour bénéficier de la déduplification).  On le monte sur /var/backups/rsync au lieu du mountpoint de urbackup.  Du coup évidemment le serveur urbackup râle d'avoir perdu son disque mais bon on verra plus tard.

Un petit script de backup remplace le client urbackup:

HERE=`hostname`
THERE=root@kid3:/var/backups/rsync/$HERE

rm /tmp/usbmounted
scp $THERE/usbmounted /tmp
[ -f /tmp/usbmounted ] || exit 1

sudo rsync -av --delete --exclude 'cache' --exclude 'tmp' --exclude '.cache' /etc /root /home /media/luc/Sea $THERE

Pour le user (ici remplacé par uuu) il faut éventuellement faire un petit setup sshd sur le serveur.

En parlant du serveur, il lui faut une ligne dans fstab pour le disque externe:

UUID=a66b6bd2-4450-417b-a9d7-ea38661da852 /var/backups/rsync btrfs auto,nofail 1 1

Il y a un test basique dans le script de backup pour vérifier que le disque est monté... il faut créer ce fichier usbmounted sur le serveur, pour chaque client

Une entrée dans crontab -e permet de lancer automatiquement:

01 17,19,21,23    * * *        /home/luc/.local/bin/backup.sh > /var/backups/lastbackup

Bon voilà c'est à l'essai, on verra ce que çà donne...

dimanche 19 novembre 2023

LVM2 setup on kid3

Physical

Laptop (ASUS) with 7-slot USB hub with USB (5V1A) power supply

3x2TB USB external drives (Seagate,W...,Toshiba)

LVM

  1. sudo pvcreate /dev/sdb /dev/sdc /dev/sdd
  2. sudo vgcreate VGurbackup /dev/sdb /dev/sdc
  3. sudo lvcreate -L 5T -n LVurbackup VGurbackup
  4. sudo mkfs.ext4 /dev/VGurbackup/LVurbackup 
  5. sudo vi /etc/fstab 
  6. sudo mount /var/backups/urbackup
  7. sudo chgrp urbackup /var/backups/urbackup
  8. sudo chmod 770 /var/backups/urbackup

Issues

With 2xUSB external drives it proved to be working fine and reliably even without external supply (the laptop itself is AC powered)
However with 3 drives...Well maybe this powered USB hub is not the right solution... I keep getting I/O errors after a short elapsed time of usage.  Will try a 5V 2A power adapter.

vendredi 24 février 2023

BTRFS filesystem down

The system re-mounted this BTRFS automatically as ro. Suspected errors on /dev/sdc (Seagate Barracuda 7200.14 (AF) ST2000DM001-1ER164):

ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000f   117   099   006    Pre-fail  Always       -       164630272
  3 Spin_Up_Time            0x0003   095   094   000    Pre-fail  Always       -       0
  4 Start_Stop_Count        0x0032   099   099   020    Old_age   Always       -       1401
  5 Reallocated_Sector_Ct   0x0033   100   100   010    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x000f   084   060   030    Pre-fail  Always       -       332790098
  9 Power_On_Hours          0x0032   065   065   000    Old_age   Always       -       31013
 10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   084   084   020    Old_age   Always       -       17029
183 Runtime_Bad_Block       0x0032   084   084   000    Old_age   Always       -       16
184 End-to-End_Error        0x0032   100   100   099    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
188 Command_Timeout         0x0032   100   074   000    Old_age   Always       -       119 137 138
189 High_Fly_Writes         0x003a   097   097   000    Old_age   Always       -       3
190 Airflow_Temperature_Cel  0x0022   067   060   045    Old_age   Always       -       33 (Min/Max 23/33)
191 G-Sense_Error_Rate      0x0032   100   100   000    Old_age   Always       -       0
192 Power-Off_Retract_Count  0x0032   100   100   000    Old_age   Always       -       152
193 Load_Cycle_Count        0x0032   092   092   000    Old_age   Always       -       17329
194 Temperature_Celsius     0x0022   033   040   000    Old_age   Always       -       33 (0 11 0 0 0)
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable     0x0010   100   100   000    Old_age   Offline        -       0
199 UDMA_CRC_Error_Count    0x003e   200   006   000    Old_age   Always       -       3845
240 Head_Flying_Hours       0x0000   100   253   000    Old_age   Offline        -       35373h+05m+27.196s
241 Total_LBAs_Written      0x0000   100   253   000    Old_age   Offline        -       74173422810
242 Total_LBAs_Read         0x0000   100   253   000    Old_age   Offline        -       3047778277400

 

$ sudo service urbackupsrv stop
$ sudo umount /dev/sdd

$ sudo btrfs check /dev/sdd
Opening filesystem to check...
Checking filesystem on /dev/sdd
UUID: ddd8d501-3bd0-4afd-b501-66340f14f587
[1/7] checking root items
[2/7] checking extents
parent transid verify failed on 1710716993536 wanted 36440 found 36428
parent transid verify failed on 1710716993536 wanted 36440 found 36428
parent transid verify failed on 1710716993536 wanted 36440 found 36428
Ignoring transid failure
...

root 5 inode 4309086 errors 2001, no inode item, link count wrong
    unresolved ref dir 289 index 3782059 namelen 10 name cps.9ROFpp filetype 1 errors 4, no inode ref
root 5 inode 4309087 errors 2001, no inode item, link count wrong
    unresolved ref dir 289 index 3782060 namelen 10 name cps.gunqYe filetype 1 errors 4, no inode ref 

...

From there, I proceeded as described already (https://admintux.blogspot.com/2022/11/btrfs-filesystem-re-creation.html).  

Epilog

I need to proceed to replace that system with something more reliable I guess.  Already I ordered an enclosure for the 3.5" HP disk (seems more reliable and/or younger).  My current idea is to recycle one of the laptops lying around here to replace the urbackup system one day (sooner or later).  And hook a number of external drives to that system, to serve as backup drives (and they could possibly be vaulted and rotated?)