La syntaxe est simple:
rsync -avz -e 'ssh -p 2345' --delete --partial --backup --backup-dir=/mnt/backup source destination
La syntaxe est simple:
rsync -avz -e 'ssh -p 2345' --delete --partial --backup --backup-dir=/mnt/backup source destination
Le seul préalable :
# apt install ffmpeg
Tout d'abord, on concatène les fichiers VOB qui nous intéresse après avoir monter le DVD :
# mount /dev/sr0 /mnt
$ cat /mnt/VIDEO_TS/VTS_01_1.VOB /mnt/VIDEO_TS/VTS_01_2.VOB /mnt/VIDEO_TS/VTS_01_3.VOB /mnt/VIDEO_TS/VTS_01_4.VOB > /home/user/Vidéos/monfilm.VOB
On repère les flux vidéos (généralement le 1), audios et sous-titres :
$ ffmpeg -i monfilm.VOB
Le flux vidéo est généralement le premier, on repère ensuite les flux audio et le flux de sous-titre si besoin. Ici, on suppose que l flux video est 0:1, les flux audios 0:10 (cantonnais) et 0:11 (français). Le flux sous-titre est le 0:3.
On encode ainsi :
$ ffmpeg -i monfilm.VOB -map 0:1 -map 0:10 -map 0:11 -map 0:3 -c:v libx264 -preset slow -crf 16 -c:a copy -c:s copy -metadata:s:a:0 language=yue -metadata:s:a:1 language=fra -metadata:s:s:0 language=fra mon_film.mp4
-map 0:1 donne l'ordre des flux de la future vidéo. Le premier flux sera la vidéo (flux 0:1 du DVD), le deuxième sera l'audio en cantonnais (flux 0:10) puis l'audio en français (0:11) et enfin les sous-titres (0:3).
-c:v libx264 : le codec vidéo sera h264
-c:a copy : on copie le flux audio
-c:s copy : on copie le flux de sous-titres
-preset veryslow : vitesse d'encodage, inversement proportionnelle à la qualité de l'image. Les options sont : ultrafast, superfast, fast, medium, slow, slower, veryslow. Medium est le réglage par défaut.
-crf : définit le niveau de qualité (q). L'échelle va de 0 à 51 (petit nombre = + de temps de calcul)
-metadata:s:a:0 : définit la metadata du flux audio 0 (a:0) avec language =yue (cantonnais), même chose pour le a:1 en français
-metadata:s:s:0 définit la langue des sous-titres (français)
Puis, en dernier, le nom du fichier en sortie.
Une alternative pour encoder en bitrate variable et en deux passes :
ffmpeg -i input.VOB -c:v libx264 -b:v 2000k -pass 1 -an -f null /dev/null && ffmpeg -i input.VOB -c:v libx264 -b:v 2000k -pass 2 -c:a aac-b:a 128k c:s copy output.mp4
En cas d'erreur, remplacer -na par -vsync cfr
La doc complète : https://ffmpeg.org/documentation.html dont le wiki : https://trac.ffmpeg.org/
Une autre doc : https://forum.hardware.fr/hfr/VideoSon/Traitement-Video/encodage-ffmpeg-dummies-sujet_154546_1.htm
Pour copier un disque distant :
# ssh user@IP "sudo dd if=/dev/sda bs=4M" | dd of=/dev/sdb status=progress
Une ligne de commande (et changer la pile BIOS) :
# timedatctl set-time '2022-10-13 09:55:00'
Ou pour changer la timezone :
# timedatctl set-timezone Europe/Paris
sysctl vm.drop_caches=3
Et voilà.
Si on cherche, par exemple, les fichiers dont le groupe est 41 :
find . -group 41
et on veut les changer pour le groupe 42
find . -group 41 -exec chgrp 42 {} \;
Gigantesque !
Pour mémoire :
# mount /dev/sdc3 /mnt
# mount /dev/sdc4 /mnt/var
# mount /dev/sda1 /mnt/home
# mount --bind /dev /mnt/dev
# mount -t proc /proc /mnt/proc
# mount -t sysfs /sys /mnt/sys
# chroot /mnt /bin/bash
Et une fois terminé :
# exit
# umount /mnt/sys
# umount /mnt/proc
# umount /mnt/dev
# umount /mnt/home
# umount /mnt/var
# umount /mnt
pour utiliser at avec un format de date en français :
# at 22:00 18.02.23
at> kill 4760
at>
Ctrl +D pour sortir de at
Tout simplement avec la commande cat !
cat film1.avi film2.avi film3.avi > gros_film.avi
Simple, efficace. Ne fonctionne pas avec les mkv, bien sûr.
La galère !
# curl -fsSL https://download.virtualbox.org/virtualbox/debian/oracle_vbox_2016.asc | gpg --dearmor | tee /etc/apt/trusted.gpg.d/virtualbox.gpg > /dev/null
Une seule commande, une seule.
# dmidecode -t memory
Le nombre de slots, ce qu'il y a sur les slots.
GG pour ramener la RAM qui va bien à la prochaine visite.
Un exemple de ligne de commande :
ffmpeg -s 1920x1080 -r 25 -f x11grab -i :0.0 -f mp4 video.mp4
Coté serveur (la machine que l'on lira) :
apt install nfs-kernel-server
dans /etc/export, on ajoute :
/home/user IP.DU.CLI.ENT(rw,root_squash, no_subtree_check)
Coté client :
dans /etc/fstab :
IP.DU.SER.VER:/home/user /mnt/RepDePartage nfs defaults 0 0
puis un
mount -a
et le partage devrait être effectif !
L'ordinateur distant est ici appelé serveur.
L'ordinateur sur lequel on manipule est le client.
Sur le serveur :
apt install x11vnc
Sur le client :
apt install xtightvncviewer
Sur le serveur, en user, on lance
x11vnc
Sur le client,
vncviewer 192.168.1.2
Ouvrir les ports chez le poste serveur si nécessaire.
Simple et efficace :
grep -rn "montexte" /var/www
Le -r est récursif.
Le -n affiche le n° de ligne.
Très simple !
On se place dans le dossier et on fait :
du -sh
Du lourd, parfois.
D'abord, il faut télécharger la clé du dépot (démerdetoi.com pour la trouver).
Un petit wget fera l'affaire :
wget http://download.opensuse.org/repositories/isv:/ownCloud:/community/Debian_8.0/Release.key
Puis la commande apt-key va faire le boulot
apt-key add Release.key
Rock it !
Rien de plus simple !
dpkg-query -l
enjoy.
Un jour, sur xfce, impossible de fermer mes fenêtres.
La barre avait disparue.
Et comment s'appelle cette barre ?
C'est dans le titre.
Bref, un terminal et :
xfwm4
Pour vérifier la dernière version :
# update-flashplugin-nonfree --status
Flash Player version installed on this system : 11.2.202.521
Flash Player version available on upstream site: 11.2.202.559
Pour mettre à jour :
# update-flashplugin-nonfree --install
Ça n'est pas beaucoup mieux mais bon.
mount -o loop -t iso9660 fichier.iso /mnt/iso
Permet de monter fichier.iso
Tous les CD/DVD debian peuvent se copier avec dd sur une clé USB :
dd if=fichier.iso of=/dev/sde bs=4M; sync
TOP !
On commence par lister les secteurs défectueux dans un fichier :
badblocks -svn -o FICHIER_BAD_BLOCKS /dev/sdd1
On lance ensuite un
e2fsck -f -L FICHIER_BAD_BLOCKS -p -y /dev/sdd1
xset b off
Moins radical et juste pour un utilisateur, à la fin de ~/.bashrc :
xset -b
Pour ne copier que les fichiers cachés (avec les attributs) :
cp -a /chemin/.[!.]* /destination
Lorsqu'un disque renvoie des erreurs, après avoir démonté la partition en question :
e2fsck -f -y -C0 /dev/part
-f force le contrôle du disque même s'il paraît sain
-y répond yes à toutes les questions
-C0 montre la barre d'avancement
Modification du groupe primaire d'un utilisateur :
Pour que le groupe primaire de papadakis soit admin :
# usermod -g admin papadakis
Ajout d'un groupe à un utilisateur existant
# usermod -a -G ftpusers papadakis
Ajout d'un nouvel utilisateur à un groupe primaire
# useradd -g admin valere
Ajout d'un nouvel utilisateur à un groupe secondaire
# useradd -G ftpusers valere
plusieurs groupes sont possibles :
# useradd -G sshusers,ftpusers valere
La commande groups récapitule tous les groupes
# groups papadakis
papadakis : papadakis admin sshusers ftpusers
blkid
awk permet d'extraire des motifs qui sont ordonnés sous forme de champs.
awk '{print $NF}' expression
renvoie le dernier champ de l'expression
awk '{print $1,$5} fichier
renvoie le premier et le cinquième champ des lignes d'un fichier de log (par exemple)
awk 'lenght($0)>75 {print}' fichier
renvoie les lignes de plus de 75 caractères.
apt show paquet
Cela ne fonctionne pas avec les DVD cryptés mais :
dd if=/dev/sr0 of=chemin/image.iso
copie le reste.
Pour faire une copie de disque dur en ssh :
ssh user@remote "dd if=/dev/sda | gzip -1 -" | dd of=image.gz
ou
dd if=/dev/sda | gzip -1 - | ssh user@local dd of=image.gz
find . -ctime +15 -print
renvoie les fichiers créés il y a plus de 15 jours
find . -atime +15 -print
renvoie les fichiers dont le dernier accès a eu lieu il y a plus de 15 jours
find . -mtime +15 -print
renvoie les fichiers modifiés il y a plus de 15 jours.
pour bannir une ip :
#iptables -I INPUT -s xx.xx.xx.xx -j DROP
pour sauvegarder les règles :
#iptables-save > /etc/firewall-client
pour restaurer les tables au démarrage, ajouter dans le /etc/network/interfaces :
post-up iptables-restore < /etc/firewall-client
pour ne pas avoir à changer les droits utilisateur ensuite ou pour une question de droits réseau, on peut utiliser en root :
#su - user -c 'ma commande'
très utile !
Je me suis posé cette question suite à un bug de chromium que j'ai reporté.
Tout d'abord, pour savoir quel est le navigateur par défaut et les navigateurs installés :
#update-alternatives --config x-www-browser
La réponse chez moi est :
Il existe 3 choix pour l'alternative x-www-browser (qui fournit /usr/bin/x-www-browser).
Sélection Chemin Priorité État
------------------------------------------------------------
* 0 /usr/bin/iceweasel 70 mode automatique
1 /usr/bin/chromium 40 mode manuel
2 /usr/bin/dwb 50 mode manuel
3 /usr/bin/iceweasel 70 mode manuel
J'ai ensuite une question :
Appuyez sur <Entrée> pour conserver la valeur par défaut[*] ou choisissez le numéro sélectionné :
Je laisse l'entrée telle qu'elle est mais je vais changer la priorité de dwb et la passer à 90 :
#update-alternatives --install /usr/bin/x-www-browser x-www-browser /usr/bin/dwb 90
Et voilà !
# fdisk -l
pour trouver la partition et
# blkid
pour lister les UUID
df -h
Pour avoir les sous-dossiers :
df -sh
Pour suivre un fichier pendant qu'il tourne :
tail -f nom_du_fichier
Pour savoir de combien de RAM on dispose :
dmesg | grep Memory:
Et pour savoir comment elle est utilisée :
free -t
À faire uniquement lorsque la machine n'est pas en charge et si la quantité en swap est inférieure à ce qu'il reste de RAM !
#swapoff -a && swapon -a
export
Pour tester un script, j'ai eu besoin de changer la date d'un fichier, j'ai utilisé la commande touch.
Avec ses options :
-a pour donner au dernier accès l'heure actuelle
touch -a fichier
-m pour changer la date de modification à maintenant
touch -m fichier
-t utilise la date donnée en argument (au format ci dessous)
touch -t AAMMJJhhmm
-c ne crée pas de fichier si celui-ci n'existe pas (sinon c'est l'inverse)
touch -c fichier
-r utilise l'horodatage d'un autre fichier
touch -r modèle fichier
Je ne sais pas si je m'enresservirai un jour mais c'est noté.
Celui qui couine lors d'une install fraîche.
En une ligne de commande ou lancer au démarrage :
#xset b off
bip bip !
Aide mémoire pour ceusses qui oublient tout le temps, je le note une fois pour toute :
ln -s cible nom_du_lien