Comme tout le monde, lorsque l’on gère des serveurs pour nos sites internet, nous arrivons parfois dans certaines situation où l’ont a besoin de faire une commande linux, mais on ne se souvient plus comment elle est construite ou tout simplement on ne la connait pas.
Ici j’ai donc répertorié la plupart des commandes « récurrente » et utiles dont on peut en avoir besoin.
Si vous en avez d’autres intéressante, poster en commentaire !
Afficher la taille des disks du serveur
df -h
OU installer et utiliser :
ncdu
Afficher la taille des dossiers de logs des vhosts Plesk (centOs)
du -sh /var/www/vhosts/*/statistics/logs/
Afficher les requêtes SQL exécutées sur le serveur
Installer mytop et taper la commande :
mytop -uadmin -p`cat /etc/psa/.psa.shadow`
Afficher tous les login / passwd FTP des hébergement plesk
En root :
On se connecte sur le SQL Plesk :
mysql -uadmin -p`cat /etc/psa/.psa.shadow` psa
On exécute la requête suivante :
SELECT REPLACE(sys_users.home,'/home/httpd/vhosts/','') AS domain, sys_users.login,accounts.password FROM sys_users LEFT JOIN accounts on sys_users.account_id=accounts.id ORDER BY sys_users.home ASC;
Afficher tous les login / passwd SQL des hébergement plesk
En root :
On se connecte sur le SQL Plesk :
mysql -uadmin -p`cat /etc/psa/.psa.shadow` psa
On exécute la requête suivante :
SELECT domains.name AS domain_name, data_bases.name AS database_name, db_users.login, accounts.password FROM data_bases, db_users, domains, accounts WHERE data_bases.dom_id = domains.id AND db_users.db_id = data_bases.id AND db_users.account_id = accounts.id ORDER BY domain_name;
Afficher les infos du trafic réseau serveur
iftop
Afficher les infos entrée / sortie disk serveur
iotop
Mettre à jour les permissions par Default CHMOD Fichier & Dossier
Pour les dossiers :
find /var/www/vhosts/httpdocs -type d -exec chmod 755 {} \;
Pour les fichiers :
find /var/www/vhosts/httpdocs -type f -exec chmod 644 {} \;
Modification des Couleurs de l’éditeur VIM
locate vimrc vim /pathto/vimrc
Ajouter :
syntax on colorscheme desert
Modification du port SSH
Après connexion SSH, taper la commande :
vim /etc/ssh/sshd_config
Décommenter et modifier la ligne « Port »
Puis redémarrer le service :
/etc/init.d/sshd restart
LFTP : transfert de fichiers
Transfert ftp local vers ftp distant
lftp -u login,pass -e 'mirror --reverse /var/www/vhosts/website.fr/httpdocs /web/www/website-new' ftp5.host.net
WGET : transfert de fichier via FTP
Lorsque LFTP n’est pas dispo, wget est là!
wget -r -nH --cut-dirs=5 -nc --level=8 ftp://user:pass@server//absolute/path/to/directory
Notez le double slash après le nom du serveur. Si je ne mets pas de slash supplémentaire, le chemin est relatif au répertoire personnel de l’utilisateur.
-nH évite la création d’un répertoire nommé après le nom du serveur
-nc évite de créer un nouveau fichier s’il existe déjà sur la destination (il est simplement ignoré).
–cut-dirs=5 me permet de prendre le contenu de /absolute/path/to/répertoire et de le mettre dans le répertoire où je lance wget. Le nombre 5 est utilisé pour filtrer les 5 composants du chemin. Le double slash signifie un composant supplémentaire.
Mettre en pause une commande et le réexécuter en background
Lorsque que la commande est déjà exécuté faire :
[CTRL-Z]
puis
bg
Faire un MySQL Dump
Avec Plesk :
mysqldump -lv -uadmin -p`cat /etc/psa/.psa.shadow` dbname > mysqlbackup.sql
Sinon :
mysqldump --opt -u [user_name] -p[password] [database_name] > [backup_file].sql
Faire un MySQL Restore
Avec Plesk :
mysql -uadmin -p`cat /etc/psa/.psa.shadow` -D dbname < /var/backup/linux/site.com/mysqlbackup.sql
Sinon :
mysql -u [user_name] -p[password] [database_name] < dumpfilename.sql
Commandes utiles Postfix
postqueue -p //postqueue -p is the same as mailq service postfix reload //reload config service postfix restart //restart postfix server postconf mail_version //View the postfix version postconf -d //Show default postfix values postconf -n //Show non default postfix values mailq //list mail queue and MAIL_ID's, list mail queue postqueue -p //list mail queue and MAIL_ID's, list mail queue postfix flush // flush mail queue postqueue -f //process the queue now postcat -q MAIL_ID //read email from mail queue postsuper -d MAIL_ID //To remove MAIL_ID mail from the queue postsuper -d ALL //To remove all mail from the queue postsuper -d ALL deferred //To remove all mails in the deferred queue postqueue -p | awk '/^[0-9,A-F]/ {print $7}' | sort | uniq -c | sort -n //sort and count emails by "from address" postqueue -p | grep '^[A-Z0-9]'|grep [email protected]|cut -f1 -d' ' |tr -d \*|postsuper -d - //removing all emails sent by: [email protected] postqueue -p | awk '/^[0-9,A-F].* / {print $1}' | tr -d \* | while read id; do postcat -q "$id" | grep "^Subject: Undelivered Mail Returned to Sender" > /dev/null && echo $id; done | postsuper -d - // supprime selon le sujet postqueue -p | awk '/^[0-9,A-F].*[email protected] / {print $1}' | cut -d '!' -f 1 | postsuper -d - //remove all email sent from [email protected] To delete all messages from the queue by a certain user: for i in `postqueue -p | grep [email protected] | awk '{print $1}' | grep -v host | grep -v \*`; do postsuper -d $i; done postqueue -p | grep '^[A-Z0-9]'|grep @adminlogs.info|cut -f1 -d' ' |tr -d \*|postsuper -d - //remove all email sent by domain adminlogs.info postqueue -p | tail -n 1 //Mail queue stats short postqueue -p | grep -c "^[A-Z0-9]" //number of emails in Mail queue tail -f /var/log/maillog //watch logs live
Plesk : redémarrer le service plesk
/etc/init.d/sw-cp-server restart
Transfert de fichiers et dossiers avec Rsync
Source => Destination
rsync -apzv --progress -e 'ssh -p 4444' /var/www/vhosts/old.fr/httpdocs/. [email protected]:/var/www/vhosts/new.fr/httpdocs/.
Renommer en minuscule (tolowercase) les extensions de fichiers
find . -name '*.*' -exec sh -c ' a=$(echo {} | sed -r "s/([^.]*)\$/\L\1/"); [ "$a" != "{}" ] && mv "{}" "$a" ' \;
Supprimer tous les fichiers contenant un nom spécifique
find . -name 'xxxx.php*' -exec rm {} \;
VIM SEARCH & REPLACE – Rechercher et remplacer sur VIM
Chercher « foo » et remplacer par « bar » dans tout le fichier :
:%s/foo/bar/g
0 commentaires