Matt Biscay est développeur WordPress et WooCommerce certifié chez Codeable, ainsi que sysadmin qualifié et enseignant-chercheur. Passionné par le code performant et les solutions sécurisées, je m'efforce d'offrir une expérience utilisateur exceptionnelle sur chaque projet.
Vous avez aimé cet article ? Vous avez un projet en tête, n'hésitez pas à me contacter, je serai ravi d'en discuter avec vous !
Sauvegardez le fichier. Vous ne recevrez plus de message d’erreur lors du lancement de la tâche cron et les fichiers logs de MySQL/MariaDB seront bien archivés.
Debian Stretch possède MariaDB 10.1 mais au vu des améliorations récentes de MariaDB, il est intéressant de passer à la version 10.3 pour des raisons de performance.
Ajout du nouveau dépôt
On installe les dépendances et on ajoute le dépôt de MariaDB 10.3 à notre fichier de configuration apt, ainsi que la clé du dépôt:
Reto Zenhäusern, consultant zurichois ayant inspiré l’importation de la tradition du Black Friday en Suisse, nous en explique le principe en 120 secondes:
Présentateur:
Aujourd’hui c’est le Black Friday, un événement organisé depuis très peu de temps en Suisse, c’est seulement la quatrième année qu’il a lieu, mais qui rencontre chaque année davantage de succès, même si les critiques à son sujet se font de plus en plus nombreuses. Le Black Friday, c’est une journée de soldes exceptionnelle organisée par les commerces participants àl’opération et on va en parler avec vous ce matin, Réto Zenhäusern, bonjour.
Réto Zenhäusern:
Bonjour monsieur.
Présentateur:
Vous êtes consultant à Zurich et vous avez contribué à importer la tradition du black friday en Suisse.
Réto Zenhäusern:
Oui c’est juste c’est une grande fierté pour moi. Oui c’était il y a quatre ou cinq années un très bon ami à moi qui gère une entreprise de distribution, c’est une chaîne de de grand magasin, il m’a dit, je cherche une nouvelle idée de fête à la con pour encourager les pauvres à acheter de la merde entre Halloween et Noël et moi j’ai dit : “ça c’est un beau projet.
J’ai récemment installé un plugin qui met en cache les requêtes API Amazon mais dont la table SQL gonfle énormément – plus de 5 Go à l’heure où j’écris ces lignes.
Le problème, c’est que cela remplit la partition racine du serveur, qui est utilisée par défaut par MariaDB pour stocker les fichiers des bases de données.
Lorsque j’ai créé ce serveur, j’ai utilisé la configuration par défault d’OVH, ce qui est une erreur grossière : la partition racine (/) fait 10 Go alors que la partition /home fait 740 Go… même pour un desktop, on ne fait plus cela parce que cela laisse trop peu pour le système alors imaginez un peu pour un serveur !
Nous avons donc le choix entre re-partitionner le disque (autant vous dire que cela ne me tente que très moyennement) ou alors changer le dossier des bases SQL pour les mettre sous /home.
Ce tutoriel vous permet donc de délocaliser les bases de données MySQL/MariaDB sur une autre partition. Le serveur tourne sur la dernière version de Debian.
Vérification du chemin des bases MariaDB
Tout se passe via le terminal. Je vous conseille de faire une sauvegarde de vos bases avant de commencer.
Commençons par vérifier le dossier dans lequel se trouve nos bases de données:
mysql -u root -p
Entrez votre mot de passe root puis entrez la commande suivante:
Ceci est une étape fondamentale du tutoriel. Si vous ne faites pas cela, MariaDB ne démarrera pas avec votre nouveau dossier car, par défaut, il n’a pas accès à /home.
Il faut donc que nous lui donnions explicitement l’accès :
systemctl edit mariadb
Dans le fichier qui s’ouvre, entrez le code suivant:
Enregistrez le fichier tel quel, sans changer le nom. Le fichier que vous venez de créer est /etc/systemd/system/mariadb.service.d/override.conf
Appliquez maintenant les changements :
systemctl daemon-reload
Un nouveau répertoire pour nos bases de données
Nous pouvons maintenant créer le nouveau répertoire qui accueillera les fichiers de nos bases de données. Par simplicité, je choisis de tout mettre sous /home/mysql :
Theseus and Hippolyta look ahead to their wedding day, in four days’ time. Hermia plans to defy her father and elope with Lysander, but Helena reveals their plan to Lysander’s rival, Demetrius.
The scene takes place in Athens. The characters are :
Duke Theseus
Hippolyta, Queen of the Amazons.
Egeus and his daughter Hermia
Two suitors : Lysander and Demetrius
Hermia is in love with Lysander. Egeus wants her to marry Demetrius or die. Helena loves Demetrius.
Scene 2
A group of craftsmen from Athens have decided to stage a play, “Pyramus and Thisbe”, to celebrate the marriage of Theseus and Hippolyta. They cast the play and plan the rehearsal.
Peter Quince is a carpenter. He wrote the play and organized the rehearsal. Nick Bottom is a weaver. He wants to play every part of the play.
The secret rehearsal takes place in the wood.
Act II
Scene 1
The King and Queen of the Fairies, Oberon and Titania, quarrel in the wood over possession of a human boy. In revenge, Oberon sends his helper Robin for magic juice to put on Titania’s eyes, which will make her fall in love with the first creature she sees. When Oberon observes Demetrius spurning Helena, he decides that the magic juice should be applied to Demetrius’ eyes too, so that he would fall in love with her.
Scene 2
Oberon anoints the eyes of the sleeping Titania. Robin, however, mistakenly applies the juice to Lysander, who suddenly falls in love with Helena and abandons Hermia.
Act III
Scene 1
The craftsmen arrive in the wood to rehearse their play but their performance is disrupted by the mischievous Robin who uses magic to give Bottom the head of an ass. After the others have fled from him in terror, Titania awakens and, under the spell of the magic juice, falls in love with the transformed Bottom.
Scene 2
Demetrius has met with Hermia, who continues to reject his love. Oberon observes them quarreling and realizes that Robin’s intervention has misfired. Trying to put the situation right, he applies the juice to Demetrius’ eyes when Helena is nearby : as a consequence, Demetrius and Lysander become rivals for Helena’s love.
Helena believes both of them are tormenting her, with the connivence of Hermia. To prevent violence, Oberon orders Robin to intervene, drawing the lovers apart. Once they have grown weary and fallen asleep, Robin puts an antidote juice on Lysander’s eyes to take away his love for Helena. There is no fear of tragic ending.
Act IV
Scene 1
Oberon and Robin remove the magic spells from Titania and Bottom, and the King and Queen of Fairies are reunited. Theseus and his companions, out early in the morning, discover the four lovers, who explain their changed feelings. Theseus overrules Egeus’ objections and declares that the two young couples shall be married alongside Hippolyta and him. When everyone has left, Bottom awakens and reflects on his strange “dream”.
Scene 2
The other craftsmen are lamenting Bottom’s loss and the consequent cancellation of their play, when he arrives to announce that all is well and their play may be staged after all.
Act V
Scene 1
On the evening of the three marriages, Theseus agrees to the staging of “Pyramus and Thisbe”. The play is badly written and acted but this increases people’s entertainment.
When all the humans have gone to bed, the fairies enter the house and bless those who reside there and their children to come.
Robin stays behind to deliver an epilogue. The play concludes where it started, in Athens.
Voici Vanupié et Lidiop qui jouent le morceau Rockadown dans les couloirs du métro parisien à la station de métro Châtelet-Les-Halles :
De superbes voix et une musique totalement planantes. Admirez aussi le regard empli d’amour entre les deux musiciens, c’est absolument fascinant.
Vanupié, né en 1980 à Annecy, est un auteur-compositeur-interprète, chanteur et musicien de reggae-soul français.
Dans une autre vie, Vanupié a travaillé pour une grande agence de publicité avant de tout plaquer pour se consacrer à sa musique.
L’idée de départ était d’accumuler les concerts et d’en assurer la promotion par la distribution de flyers. Il se fait connaître grâce à ses prestations dans le métro parisien.
Vanupié aurait pu arrêter l’expérience il y a bien longtemps. Depuis ses débuts, il a rempli La Cigale, joué au Bataclan, assuré la première partie d’UB40, The Wailers, SOJA, Tryo ou encore Alpha Bondy, fait Solidays et tourne à une moyenne de 100 concerts par an.
MacOS dispose de Time Machine, l’utilitaire qui permet de sauvegarder et restaurer le système d’exploitation de votre Mac, ainsi que tous vos fichiers et documents.
Time Machine nécessite normalement un disque dur dédié à toutes vos sauvegardes. Un énième disque dur de sauvegarde… sauf si vous avez un NAS Synology!
Il est en effet possible d’utiliser une partie de votre Synology pour accueillir les sauvegardes de Time Machine alors autant l’utiliser !
Ajout du support de Time Machine dans le DSM du Synology
Nous avons besoin de configurer DSM pour qu’il puisse converser correctement avec Time Machine : il nous faut créer un utilisateur dédié avec des droits propres, un répertoire de destination et un quota pour ne pas que l’espace du NAS ne soit complètement phagocyté.
Ajout d’un répertoire partagé
Dans l’interface d’administration DSM, rendez-vous dans Panneau de Configuration > Dossier partagé et cliquez sur le bouton Créer un dossier partagé :
Vous pouvez maintenant éditer les paramètres du dossier partagé :
Sur l’écran suivant, vous pouvez choisir de chiffrer les sauvegardes de Time Machine. Pour un usage purement personnel, j’opte pour la rapidité, sans chiffrement.
Cliquez sur Appliquer pour sauvegarder les changements.
Création d’un utilisateur Time Machine
Nous créons un utilisateur qui sera dédié à la sauvegarde Time Machine, avec des droits spéciaux.
On entre le nouveau mot de passe pour notre utilisateur que nous appellons TimeMachineUser:
Au niveau des groupes utilisateurs, il fera parti du groupe des utilisateurs par défaut (users) :
On donne à notre utilisateur les droits de lecture et écriture sur le dossier partagé TimeMachine:
Je vous recommande de définir un quota votre utilisateur Time Machine, afin d’éviter que les sauvegardes ne saturent complètement le NAS :
Cliquez sur Appliquer pour sauvegarder les changements.
Depuis la mise à jour de MacOSX Mojave, il est devenu impossible de lancer Meld, l’application multi-plateforme dont je me sers pour comparer plusieurs versions de fichiers afin de visualiser les différences dans du texte ou code.
L’application se lance mais ne présente pas la fenêtre habituelle qui permet de sélectionner les options de comparaison. Le menu apparait bien en haut de l’écran mais reste inutilisable.
On peut débloquer la situation très facilement – ouvrez une fenêtre de terminal et lancez les commandes suivantes:
Ces commandes permettent de supprimer le fichier de préférence GNOME de l’application et de réinitialiser l’état de l’application.
Une fois que vous avez exécuté ces commandes, relancez Meld – il me semble plus lent qu’avant à démarrer mais il est tout à fait fonctionnel ensuite, ce qui est l’essentiel.
La plupart des tâches cron sont exécutées à un moment où elles n’empiètent pas sur les ressources du serveur (i.e. la nuit).
Or crontab envoie un email récapitulatif à chaque fois qu’une tâche est complétée, ce qui peut vite devenir pénible à gérer.
Heureusement, il existe plusieurs manières d’empêcher de recevoir ces emails de notification de tâches cron.
1. Méthode nucléaire : rendre la variable MAILTO nulle
Vous pouvez éditer le fichier /etc/crontab et rendre la variable MAILTO nulle, comme ceci:
MAILTO=""Code language:JavaScript(javascript)
Cela désactive effectivement tous les emails envoyés depuis crond. C’est par contre une méthode nucléaire : si vous voulez une notification, il faudra l’envoyer depuis le script et non cron.
Cela empêche également de recevoir toute notification en cas d’erreur de la tâche cron, ce qui est très gênant – ce n’est pas vraiment la méthode que je conseille.
2. Rediriger STDOUT et STDERR vers null pour supprimer toute sortie
Si vous supprimez la sortie du script, crond n’aura rien à envoyer.
Ajoutez ceci à l’entrée de votre crontab pour envoyer toute sortie (STDERR et STDOUT) vers /dev/null:
La neuvième saison de The Walking Dead a été diffusée sur AMC.
Dix-huit mois après la défaite de Negan, les différentes communautés travaillent à la reconstruction de la société. Cependant, le sanctuaire souffre d’un terrain stérile et du soutien sous-jacent à Negan. Rick se rend dans un musée de Washington, DC, pour récupérer du matériel des premiers pionniers américains, comme des socs de charrue.
Sur le chemin du retour, ils découvrent que le pont principal qui mène à Hilltop a été anéanti par une tempête, les obligeant à faire un détour. Un jeune homme, Ken, est tué alors qu’il protégeait les chevaux du groupe des marcheurs.
Gregory, évincé du poste de chef de Hilltop, convainc le père de Ken, Earl, d’essayer d’assassiner Maggie, mais il échoue. Rick et Michonne demandent à Maggie l’aide de Hilltop pour donner de la nourriture au Sanctuaire, mais celle-ci refuse. Ce soir-là, Maggie fait exécuter publiquement Gregory pour l’ensemble de son œuvre.
La neuvième saison commence un an et demi après les évènements de la huitième saison. Ce sera également la dernière saison avec Andrew Lincoln et Lauren Cohan dans la série.
Noah Hunt and the 420 All Stars interprètent Cortez the Killer de Neil Young, avec Scotty Bratcher à la guitare lead au MVP Sports Bar and Grill in Cincinnati Ohio, le 30 décembre 2010 :
openssl:amd64 1.1.0f-5 install ok installed
openssl:amd64 1.1.0f-3+deb9u2 stable debian.mirrors.ovh.net
openssl:amd64 1.1.0f-3+deb9u2 stable security.debian.org
openssl:amd64 1.1.0f-5 newer than version in archive
perl-openssl-defaults:amd64 3 install ok installed
perl-openssl-defaults:amd64 3 stable debian.mirrors.ovh.net
perl-openssl-defaults:amd64/stable 3 uptodate
python3-openssl:all 16.2.0-1 install ok installed
python3-openssl:all 16.2.0-1 stable debian.mirrors.ovh.net
python3-openssl:all/stable 16.2.0-1 uptodate
Pour obtenir la version 1.1.1 d’OpenSSL, qui est le sésame pour TLS 1.3, nous allons temporairement ajouter le repo sid, mettre à jour OpenSSL et ses dérivés puis remettre apt dans sa position stable.
On met à jour nos sources apt:
nano /etc/apt/sources.listCode language:PHP(php)
et on y ajoute sid:
deb http://ftp.debian.org/debian sid main
deb-src http://ftp.debian.org/debian sid mainCode language:JavaScript(javascript)
On met à jour apt:
apt update
Et on met à jour openssl:
aptinstallopenssllibssl1.1Code language:CSS(css)
Résultat:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libc-bin libc-dev-bin libc-l10n libc6 libc6-dev libc6-i386 libnih-dbus1 libnih1 libssl-dev locales
python-httplib2
apt-listchanges: News
---------------------
glibc (2.26-5) unstable; urgency=medium
Starting with version 2.26-1, the glibc requires a 3.2or later Linux
kernel. If you useanolderkernel, pleaseupgradeit *before*
installingthisglibcversion. Failingtodosowillend-upwiththefollowingfailure:
Preparingtounpack .../libc6_2.26-5_amd64.deb ...
ERROR: ThisversionoftheGNUlibcrequireskernelversion
3.2 orlater. Pleaseupgradeyourkernelbeforeinstallingglibc.
ThedecisiontonotsupportolderkernelsisaGNUlibcupstreamdecision.
Note: Thisobviouslydoesnotapplytonon-Linuxkernels.
-- AurelienJarno <aurel32@debian.org> Tue, 23 Jan 2018 22:03:12 +0100
openssl (1.1.1-2) unstable; urgency=medium
Following various security recommendations, the default minimum TLS version
has been changed from TLSv1 to TLSv1.2. Mozilla, Microsoft, Google and Apple
plan to do same around March 2020.
The default security level for TLS connections has also be increased from
Suggested packages:
glibc-doc
The following packages will be upgraded:
Setting up libc6-i386 (2.27-8) ...
Setting up python-httplib2 (0.11.3-1) ...
Processing triggers for libc-bin (2.27-8) ...
Setting up libssl1.1:amd64 (1.1.1-2) ...
locale: Cannot set LC_ALL to default locale: No such file or directory
Setting up libc-l10n (2.27-8) ...
Setting up openssl (1.1.1-2) ...
Installing new version of config file /etc/ssl/openssl.cnf ...
Processing triggers for man-db (2.7.6.1-2) ...
Setting up libc-dev-bin (2.27-8) ...
Setting up libc6-dev:amd64 (2.27-8) ...
Setting up locales (2.27-8) ...
Installing new version of config file /etc/locale.alias ...
Generating locales (this might take a while)...
en_GB.ISO-8859-1... done
en_GB.UTF-8... done
en_GB.ISO-8859-15... done
Generation complete.
Setting up libnih1 (1.0.3-10+b1) ...
Setting up libnih-dbus1 (1.0.3-10+b1) ...
Setting up libssl-dev:amd64 (1.1.1-2) ...
Processing triggers for libc-bin (2.27-8) ...
Scanning processes...
Scanning candidates...
Scanning linux images...
Failed to retrieve available kernel versions.
Restarting services...
invoke-rc.d bind9 restart
invoke-rc.d cgmanager restart
invoke-rc.d cgproxy restart
invoke-rc.d fail2ban restart
ERROR No section: 'Definition'
ERROR No section: 'Definition'
ERROR No section: 'Definition'
ERROR No section: 'Definition'
ERROR No section: 'Definition'
ERROR No section: 'Definition'
ERROR No section: 'Definition'
ERROR No section: 'Definition'
invoke-rc.d haveged restart
invoke-rc.d irqbalance restart
invoke-rc.d lvm2-lvmetad restart
invoke-rc.d lvm2-lvmpolld restart
invoke-rc.d lwresd restart
invoke-rc.d mdadm restart
invoke-rc.d mdadm-waitidle restart
invoke-rc.d minissdpd restart
invoke-rc.d nginx restart
invoke-rc.d opendkim restart
invoke-rc.d opendmarc restart
invoke-rc.d php7.2-fpm restart
invoke-rc.d postfix restart
invoke-rc.d redis-server restart
invoke-rc.d rsyslog restart
invoke-rc.d saslauthd restart
invoke-rc.d ssh restart
Services being skipped:
invoke-rc.d dbus restart
No containers need to be restarted.</aurel32@debian.org>Code language:PHP(php)