Linux tips - pifou25/docker-jeedom GitHub Wiki
ncdu petit utilitaire bien pratique pour visualiser la taille de chaque répertoire et naviguer
du -h -d 1 2>/dev/null pour lister les répertoires et leur taille (et ignorer les erreurs de type access denied)
Vérifier la taille des logs par containers... on a des id de containers, voir ici pour récupérer leur nom:
sudo sh -c "du -ch /var/lib/docker/containers/*/*-json.log"
Si c'est les logs des containers docker, il faut gérer leur option individuellement par exemple dans un docker-compose.yaml:
logging:
options:
max-size: "10m"
max-file: "1"diminuer la tailla avec la valeur cousie ex: journalctl --vacuum-size=200M
https://www.loggly.com/ultimate-guide/managing-journal-size/
en général dans /var/cache/apt/archives:
sudo apt-get clean
git repack -a -d -f --depth=250 --window=250
Plus agressif mais est une mauvaise pratique:
git gc --aggressive --prune=now
S'il y a beaucoup de repo git dans le disque, on peut automatiser la recherche & repack avec ce genre de script:
#!/bin/bash
find / -type d -name ".git" 2>/dev/null | while read -r dir; do
size=$(du -sm "$dir" 2>/dev/null | cut -f1)
if [ "$size" -gt 50 ]; then
echo "Répertoire trop gros détecté : $dir (${size} Mo)"
# repertoire parent du .git pour repack dans un (subshell)
repo_dir=$(dirname "$git_dir")
echo "Nettoyage du dépôt : $repo_dir"
(cd "$repo_dir" && git repack -a -d -f --depth=250 --window=250)
fi
doneecho "" | sudo tee /path/to/the/file
Utile pour purger les logs par exemple:
find /path/to/directory -type f -mtime +30 -exec rm -f {} \;
- /path/to/directory == The directory where the search begins. Replace this with the actual path.
- -type f == Searches only for files (ignores directories).
- -mtime +30 == Finds files modified more than 30 days ago.
- -exec rm -f {} ; == Deletes each file found (rm -f forces deletion).
https://linuxconfig.org/howto-mount-usb-drive-in-linux
liste des périphériques: sudo fdisk -l
liste les partitions et leur UUID: sudo blkid -c /dev/null
lsusb ou lsblk pour lister les devices USB ou les 'blocks' (partitions logiques) et leur point de montage.
Créer le répertoire avant, définir le 'montage' dans /etc/fstab, puis sudo mount
# champs séparés par des espaces:
# <filesystem> <mnt path> <type ntfs|ext4|...> <options> <dump> <pass>
UUID=b476f674-33ae-4b60-8997-3b524c2b33f8 /media/usb1 ext4 rw,user,noexec,nofail,auto 0 0
UUID=5ED4B67ED4B6584B /media/samba ntfs rw,user,noexec,nofail,auto,uid=1000,gid=1000,umask=022 0 0
https://blog.stephane-robert.info/docs/admin-serveurs/linux/reseau/rsync/#_top
Exemple d'utilisation:
rsync -a -z --progress /local/source 192.168.1.25:/distant/destination