Table des matières
- 2026:
- 2025:
1 billet(s) pour avril 2026
| Notes ping ICMP | 2026/04/03 23:01 | Jean-Baptiste |
LVM - migrer les systèmes de fichiers avec la partition racine
Exemple avec avec RedHat / Amazon Linux
Partition /var /var/log (Hors racine /)
Arrets des services pouvant accéder à /var et /var/log
systemctl stop systemd-journald* systemctl stop nfs-client* systemctl stop rpc* systemctl stop mariadb.service systemctl stop smb.service systemctl stop atd.service systemctl stop acpid.service systemctl stop gssproxy.service systemctl stop atop.service systemctl stop irqbalance.service systemctl stop chronyd.service systemctl stop postfix.service systemctl stop rsyslog.service
pvcreate /dev/xvdk vgcreate vg_os /dev/xvdk lvcreate -n var -L 1G vg_os lvcreate -n log -L 1G vg_os mkfs.xfs /dev/vg_os/var mkfs.xfs /dev/vg_os/log mkdir /var/log2 mount /dev/vg_os/log /var/log2 rsync -ax /var/log/ /var/log2/ rm /var/log -rf umount /var/log2/ rmdir /var/log2/ mkdir /var2 mount /dev/vg_os/var /var2 rsync -ax --exclude='/log/' /var/ /var2/ rm /var -rf umount /var2 rmdir /var2 mkdir /var echo "/dev/mapper/vg_os-var /var xfs defaults,noatime 0 2" >> /etc/fstab mount -a mkdir /var/log echo "/dev/mapper/vg_os-log /var/log xfs defaults,noatime 0 2" >> /etc/fstab mount -a restorecon -R /var
Conf /tmp sur /var/tmp
## /tmp rsync -ax /tmp/ /var/tmp/ echo "/var/tmp /tmp none bind 0 0" >> /etc/fstab rm -rf /tmp mkdir /tmp chmod 1777 /tmp mount -a
Au tour de la swap
lvcreate -n swap -L 1G vg_os mkswap /dev/vg_os/swap echo "/dev/mapper/vg_os-swap none swap sw 0 0" >> /etc/fstab swapon -a
Terminer par
touch /.autorelabel
Partition racine
Voir https://www.linuxsysadmins.com/migrate-from-single-partition-boot-device-to-lvm-in-centos7/
Chroot
mkdir /newroot lvcreate -n root -L 3G vg_os mkfs.xfs /dev/vg_os/root mount /dev/vg_os/root /newroot/ rsync -ax --exclude "/newroot/" --exclude "/boot/" / /newroot/ mkdir /newroot/boot rsync -ax /boot/ / rm /boot -rf mkdir /boot mount -o bind / /newroot/boot/ mount -o bind /dev/ /newroot/dev/ mount -o bind /sys/ /newroot/sys/ mount -o bind /proc/ /newroot/proc/ #mount -t proc proc /newroot/proc/ mount -o bind /run /newroot/run/ mount -t devpts devpts /newroot/dev/pts mount -o bind /var/ /newroot/var/ mount -o bind /var/log /newroot/var/log/ mount -o bind /tmp /newroot/tmp chroot /newroot/ cp -p /etc/fstab /etc/fstab.orig cp -p /etc/default/grub /etc/default/grub.orig
/etc/fstab
#UUID=a1e1011e-e38f-408e-878b-fed395b47ad6 / xfs defaults,noatime 1 1 /dev/mapper/vg_os-root / xfs defaults,noatime 1 1 UUID=a1e1011e-e38f-408e-878b-fed395b47ad6 /boot xfs defaults,noatime 1 1 /dev/mapper/vg_os-var /var xfs defaults,noatime 0 2 /dev/mapper/vg_os-log /var/log xfs defaults,noatime 0 2 /dev/mapper/vg_os-swap none swap sw 0 0 /var/tmp /tmp none bind 0 0
Conf grub et /boot
sed -i '1i/dev/mapper/vg_os-root / xfs defaults,noatime 1 1' /etc/fstab sed -ie 's|^UUID=\(.*\)/\(.*\)|UUID=\1/boot\2|' /etc/fstab
/etc/default/grub
#GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,115200n8 net.ifnames=0 biosdevname=0 nvme_core.io_timeout=4294967295 rd.emergency=poweroff rd.shell=0" GRUB_CMDLINE_LINUX_DEFAULT="net.ifnames=0 biosdevname=0 nvme_core.io_timeout=4294967295 rd.emergency=poweroff rd.shell=0 console=ttyS0,115200n8 console=tty0 rd.lvm.lv=vg_os/root"
Ajouter rd.lvm.lv=vg_os/root et si SELinux changer l'ordre console=ttyS0,115200n8 console=tty0
sed -ie 's/^GRUB_CMDLINE_LINUX_DEFAULT/#&/' /etc/default/grub echo >> /etc/default/grub echo 'GRUB_CMDLINE_LINUX_DEFAULT="net.ifnames=0 biosdevname=0 nvme_core.io_timeout=4294967295 rd.emergency=poweroff rd.shell=0 console=ttyS0,115200n8 console=tty0 rd.lvm.lv=vg_os/root"' >> /etc/default/grub
grub2-mkconfig -o /boot/grub2/grub.cfg #dracut -f -v /boot/initramfs-4.14.123-111.109.amzn2.x86_64.img dracut -f -v /boot/initramfs-*.img grub2-install --recheck /dev/xvda
touch /.autorelabel exit /sbin/reboot -f
Lsof - Mettre fin à tous les processus d'un utilisateur
Voir http://www.thegeekstuff.com/2012/08/lsof-command-examples/
pkill -u marc
Ou
kill $(lsof -t -u marc)
PS :
lsof peut remplacer netstat
lsfd peut remplacer lsof
Ansible user - retirer un utilisateur d'un groupe secondaire - remove user from a secondary group - unappend
Exemple - retirer tous les utilisateurs du groupe “docker”
- name: get all user into docker group shell: | awk -F':' '/^docker:/ {print $4}' /etc/group register: users_intogroup_docker changed_when: False - name: no user into docker group command: gpasswd -d {{ item }} docker with_items: "{{ users_intogroup_docker.stdout.split(',') }}" when: not item in [""]
Logique - Algèbre de Boole
Voir :
- Table de vérité
- Tableau de Karnaugh
- Théorème de Morgan
Ne pas confondre la logique booléenne avec la logique aristotélicienne / scolastique !
En Python
Voir :
Voir aussi :
En bash
combine (moreutils)
echo aaa > a.txt echo bbb > b.txt echo common | tee a.txt b.txt
$ cat a.txt aaa common $ cat b.txt bbb common
$ combine a.txt and b.txt common $ combine a.txt or b.txt aaa common bbb common $ combine a.txt xor b.txt aaa bbb $ combine a.txt not b.txt aaa $ combine a.txt or b.txt |sort | uniq aaa bbb common
Logique - Algèbre de Boole - and - or - Ordre des opérations - priorité de calcul
Le AND et prioritaire sur le OR.
Moyen mnémotechnique : penser à Haor
In [36]: False and False or True Out[36]: True In [37]: ( False and False ) or True Out[37]: True In [38]: False and ( False or True ) Out[38]: False
Pour rappel
OR + Disjonction
| A | B | Y |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
AND . Conjonction
| A | B | Y |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
Symboles du OR :
- *
- ∨
- | ou ||
Symboles du AND :
- .
- ∧
- & ou &&
