« SSH » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 67 : | Ligne 67 : | ||
Afficher le contenu d’un fichier (on affiche les logs principaux, faites ctrl-c pour stopper !) | Afficher le contenu d’un fichier (on affiche les logs principaux, faites ctrl-c pour stopper !) | ||
<pre> | |||
cat lefichier.txt | cat lefichier.txt | ||
zcat /var/log/syslog.1.gz | zcat /var/log/syslog.1.gz | ||
</pre> | |||
Chercher un fichier | Chercher un fichier : | ||
<pre> | |||
find -name "*.log" | find -name "*.log" | ||
find -name "*.log" | more | find -name "*.log" | more | ||
</pre> | |||
== sudo == | == sudo == | ||
<code>sudo su - u root</code> | |||
sudo su - u root | |||
== Concaténer == | == Concaténer == | ||
<pre> | |||
concatener des fichiers js ou css | concatener des fichiers js ou css | ||
echo | cat fichier1.css fichier2.css fichierfull.css > site.css | echo | cat fichier1.css fichier2.css fichierfull.css > site.css | ||
</pre> | |||
== Alias == | == Alias == | ||
<pre> | |||
ls -l Afficher les informations de manière détaillée. | ls -l Afficher les informations de manière détaillée. | ||
Ligne 109 : | Ligne 108 : | ||
ln -s 'chemin_de_l_element_visé' 'nom_effectif_du_lien' | ln -s 'chemin_de_l_element_visé' 'nom_effectif_du_lien' | ||
ex: ln -s /usr/local/php53/bin/php /usr/local/bin/php53 | ex: ln -s /usr/local/php53/bin/php /usr/local/bin/php53 | ||
</pre> | |||
== Copie == | == Copie == | ||
<pre> | |||
copie entre 2 serveurs sans mot de passe: | copie entre 2 serveurs sans mot de passe: | ||
générer la clé : | générer la clé : | ||
ssh-keygen -t dsa | ssh-keygen -t dsa | ||
</pre> | |||
Ensuite, pour copier la clé sur l'ordinateur distant : | Ensuite, pour copier la clé sur l'ordinateur distant : | ||
ssh root@server 'cat >> /root/.ssh/authorized_keys' < ~/.ssh/id_dsa.pub | <code>ssh root@server 'cat >> /root/.ssh/authorized_keys' < ~/.ssh/id_dsa.pub</code> | ||
pour serveur dédié ovh | pour serveur dédié ovh : | ||
ssh user@ip 'cat >> /home/user/.ssh/authorized_keys2' < /home/userlocal/.ssh/id_dsa.pub | <code>ssh user@ip 'cat >> /home/user/.ssh/authorized_keys2' < /home/userlocal/.ssh/id_dsa.pub</code> | ||
== Compression == | == Compression == | ||
Compresser un dossier | Compresser un dossier : | ||
tar -zcvf fichier.tar.gz /home/repertoire | <code>tar -zcvf fichier.tar.gz /home/repertoire</code> | ||
decompresser tar gz | decompresser tar gz : | ||
tar zxvf fichier.tar.gz | <code>tar zxvf fichier.tar.gz</code> | ||
== Historique == | == Historique == | ||
Supprimer l'historique ssh | Supprimer l'historique ssh: | ||
history -c | <code>history -c</code> | ||
== Taille | == Taille |
Version du 18 juillet 2019 à 14:53
Example RSYNC aller et retour avec chown et chmod
rsync local -> serveur rsync -avz --delete --chown="user:group" --chmod="D2755,F644" --rsync-path="sudo rsync" -e "ssh -p654" /users/toto/ user@1.2.3.4:/home/toto/ rsync serveur -> local rsync -avz --delete --no-owner --no-group --no-perms --rsync-path="sudo rsync" -e "ssh -p654" user@1.2.3.4:/home/toto/ /users/toto/
Linux version noyau
uname -sr uname -a cat /etc/issue cat /etc/*-release lsb_release -ds
Sendmail
cd /var/spool/mqueue sendmail -bp send mail mail -s "message" -F "adresse1@etc, adresse2@etc" -r "Un nom<une@email.com>" $EMAIL
Compter
compter le nombre de fichiers dans un répertoire:
find /dossier/path/etc -maxdepth 1 -type f | wc -l
compter le nombre de fichiers dans un répertoire selon son extension
find /dossier/path/etc -name '*.MOV' -type f -printf '.' | wc -c
Trouver
trouver les chemins des fichiers recherchés
find /volume1/video/perso/2017 -name '*.MOV' -type f
recherche:
find /home/rep/ \( -name '*.ai' \)
recherche et supprime
Effacer les fichiers .DS_Store et Thumbs.db d’un système Linux
find /home/ -name .DS_Store -exec rm -f {} \;
Rechercher dans un fichier (XXX est un mot ou une expression régulière)
cat /var/log/syslog | grep XXX cat /var/log/syslog | grep XXX | more cat /var/log/syslog | grep XXX > resultat.txt
Afficher les dernières lignes d’un fichier
tail /var/log/syslog
Afficher en live (en temps réel) un fichier (ctrl-c pour sortir)
tail -f /var/log/syslog
Afficher le contenu d’un fichier (on affiche les logs principaux, faites ctrl-c pour stopper !)
cat lefichier.txt zcat /var/log/syslog.1.gz
Chercher un fichier :
find -name "*.log" find -name "*.log" | more
sudo
sudo su - u root
Concaténer
concatener des fichiers js ou css echo | cat fichier1.css fichier2.css fichierfull.css > site.css
Alias
ls -l Afficher les informations de manière détaillée. ls -a Afficher les fichiers cachés. ls -h Afficher la taille des fichiers de facon lisible. ls -r Tri inversé. ls -t Trier les fichiers par date du plus récent au plus ancien. ls -S Trier par taille décroissante. ls -la Afficher tous les fichiers y compris les fichiers cachés. ls -lhS Afficher les informations des fichiers, avec des tailles lisibles le tout ordonné du plus grand au plus petit. créer raccourci: ln -s 'chemin_de_l_element_visé' 'nom_effectif_du_lien' ex: ln -s /usr/local/php53/bin/php /usr/local/bin/php53
Copie
copie entre 2 serveurs sans mot de passe: générer la clé : ssh-keygen -t dsa
Ensuite, pour copier la clé sur l'ordinateur distant :
ssh root@server 'cat >> /root/.ssh/authorized_keys' < ~/.ssh/id_dsa.pub
pour serveur dédié ovh :
ssh user@ip 'cat >> /home/user/.ssh/authorized_keys2' < /home/userlocal/.ssh/id_dsa.pub
Compression
Compresser un dossier :
tar -zcvf fichier.tar.gz /home/repertoire
decompresser tar gz :
tar zxvf fichier.tar.gz
Historique
Supprimer l'historique ssh:
history -c
== Taille
du -sh repertoire (taille repertoire) taille des partitions: df -h etat de la mémoire free -m
Reset
Vider un fichier echo "" > auth.log
transfert de fichiers:
scp root@00.00.00.00:/home/fichier.ext .
scp fichier.ext root@00.00.00.00:/home/
avec port scp -P XXXX user@ip:/rep/fichier.txt .
synchronisation de fichiers:
rsync -avz -e ssh /users/personne/.../ root@168.192.1.23:/home/../ sync -avz -e ssh root@168.192.1.23:/home/../ /users/personne/.../ rsync -av /Users/poste2/Desktop/Joomla_1/ /users/personne/.../
option: --exclude="/*/.local" (exclure un répertoire)
supprimer un repertoire: rm -rf portail
rsync -avz -e ssh root@168.192.1.23:/home/../ /users/personne/.../
exclure répertoire --exclude='/config/'
modifier les groupe et proprio chown -R personne:groupe rep (-R recursif)
modif des droits chmod -R 755 repertoire
serveur bin # mysql -p
mysql> GRANT ALL PRIVILEGES ON bdd_personne.* TO personne@'%' IDENTIFIED BY 'testdb'; Query OK, 0 rows affected (0.00 sec)
mysql> GRANT ALL PRIVILEGES ON bdd.* TO personne @'%' IDENTIFIED BY 'testdb';
recherche de fichier find / -name fichier.ini grep -Rl "quelques chose" .
MYSQL DUMP /usr/bin/mysqldump --default-character-set=latin1 --host=localhost --user=nom --password=pass bdd > /home/bdd.sql
ou
se placer ds le repertoire Bin de mysql commande: mysql -u root -p db < db.dmp
service mail /etc/init.d/spamd stop /etc/init.d/clamd stop /etc/init.d/qmail stop /etc/init.d/spamd start /etc/init.d/clamd start /etc/init.d/qmail start
lire les fichiers ls -la
répertoire www doit être en 705.
En revanche les autres répertoires doivent être en 755 et les fichiers en 644.
Voici deux comandes via le ssh pour mettre des répertoires en 755 et tes fichiers en 644.
cd /home/TEST/www/
répertoires en 705 avec cette commande :
find . -type d -print | xargs chmod 705
fichiers en 644 :
find . -type f -print0 | xargs -0 -n1 chmod 644
Executer une page web
- !/bin/bash
wget http://site.com/page.html 1> /dev/null 2> /dev/null
Extraire dossier ou fichier d'une archive:
Pour tirer un fichier:
tar --extract --file=mon_archive.tar file1 c'est à dire extraire le fichier file1 de l'archive mon_archive.tar. Si nous devons extraire à partir d'une archive gzippée: tar xzf mon_achive_zippee.tgz file2 maintenant si on veux extraire un répertoire: tar xzf grosse_archive.tar.gz --wildcards --no-anchored 'home/zydoon/public_html*' vous pouvez utiliser le t au lieu du x pour vous exercer.
ncftp> open -u ns36xxxx.ovh.net -p xxxxxxx ftpbackxx.ovh.net
rendre exécutable un fichier ssh
chmod u+x fichier.sh Cette commande ajoute les droits d'exécution au propriétaire du fichier. Pour rendre le fichier exécutable pour le groupe utilisateur il faut lancer :
chmod g+x fichier.sh
Pour rendre le script exécutable pour les utilisateurs autres :
chmod o+x fichier.sh
Et enfin pour autoriser tout le monde :
chmod ugo+x fichier.sh
http://www.linuxpedia.fr/doku.php/commande/ssh
http://juliend.github.io/linux-cheatsheet/