Voici un petit florilège de commande vraiment pratique lorsque l'on se retrouve en ligne de commande que j'ai repris du
wiki de lutece.
permet de chercher dans l'historique de la ligne de commande.
(Esc pour en sortir)
"Ctrl + r"
On peut avoir toutes les lignes avec
history | grep 'marecherche'
Tuer tous les processus Java :
Quels processus écoutent sur le port 8080 :
Quels processus sont associés à tomcat :
Supprimer le processus 21456 :
Suivre ce qui se passe dans le fichier de log "catalina.out" :
tail -f logs/catalina.out
|
Programmer la sauvegarde automatique de la base Mysql dans le cron linux (contab -e)
* */2 * * * mysqldump -uroot -pmotdepasse mabase -rdump`date +%Y%m%d`.sql > sauvegarde.log
|
Suivre l'utilisation du serveur par les processus (les touches z et c permettent de changer le mode de visualisation) :
Autres :
pgrep -u$LOGINNAME mysqld
strace -p20687 -f -c -q
Commandes Linux utiles
Utilisateurs
Ajouter un utilisateur
$ sudo useradd -m nom_utilisateur -s /bin/bash
|
Ajouter un utilisateur sudoer
$ sudo useradd -m nom_utilisateur -s /bin/bash -G admin
|
Supprimer un utilisateur
$ sudo userdel nom_utilisateur
|
Puis supprimer le dossier de l'utilisateur qui est probablement dans /home
$ rm -rf /home/nom_utilisateur
|
Gestion des fichiers
Convertir une arborescence de noms de fichiers d'un encoding à un autre :
convmv -f iso-8859-15 -t UTF-8 -r --nosmart --notest .
|
Convertir une arborescence de contenus de fichiers d'un encoding à un autre :
$ find . -name *.html -type f | (while read file; do iconv -f UTF-8 -t ISO-8859-15 "$file" > "${file%.html}.htmlnew"; done)
$ find . -name "*.htmlnew" -type f | (while read file; do mv $file `echo $file | sed 's/\(.*\.\)htmlnew/\1html/'` ; done
|
Synchroniser un dossier avec rsync
$ rsync -avz -e ssh username@xxx.xxx.xxx.xxx:/home/username/folder/backup_srcp/mountmd2/srcp_prod/* .
|
Cette commande synchronise le dossier courant avec le dossier distant
/home/username/folder/backup_srcp/mountmd2/srcp_prod/ sur la machine
xxx.xxx.xxx.xxx
Faire une recherche récursive d'un texte sur l'ensemble des fichiers du répertoire
$ grep -Ri le_texte_a_rechercher *
|
Remplacer une chaîne de caractères récursivement dans un dossier :
$ find /some/dir -type f | xargs sed -i 's|chaine_a_trouver|chaine_a_remplacer|'
|
Avec du REGEX :
$ grep -rlE "^regexhere$" /some/dir | xargs sed -i 's|string1|string2|'
|
Infos mémoire et espace disque
infos io
infos memoire
$ cat /proc/meminfo > meminfo.txt
$ vmstat > vmstat.txt |
usage disque
usage disque par dossier :
usage disque du dossier courant : du -sh * * vitesse du disque - pour celle-ci, remplacer sdxX par les disques réellement utilisés :
$ hdparm -tT /dev/sdxX > hd_sdxX.txt
|
activités systèmes
info matériel
dmidecode > dmidecode.txt
|
Vérifier les ports d'écoutes :
Commandes VIM
Aller à la fin d'un fichier avec Vim :
Aller au début d'un fichier avec Vim :
Aller à la ligne XXX d'un fichier avec Vim :
MySQL
Lister les tables d'une base MySql :
mysql -uroot -pmotdepasse -Dlutece -e"show tables"
|
Sauvegarder une base de donnée du nom de "lutece" dans "dump.sql" :
mysqldump -uroot -pmotdepasse lutece -rdump.sql
|
Jouer le script "dump.sql" dans la base "lutece" :
mysql -uroot -pmotdepasse -Dlutece -e"source dump.sql"
|
Apache sur Ubuntu
Voir la liste des modules disponibles d'Apache :
$ ll /etc/apache2/mods-available |
Ajouter un nouveau module Apache :
$ sudo a2enmod
$ sudo service apache2 restart
Retirer un module Apache :
$ sudo a2dismod
$ sudo service apache2 restart
Ajouter un site :
$ sudo a2ensite
$ sudo service apache2 restart