Prendre un thé
Tapoter des doights
Monsieur fantôme
Quelle heure est-il ?
BazinGa's Tips & tuto IT
BazinGa's - Tips & tuto IT

TIPS Linux

Propriété

Changer le propriétaire et le groupe

# Changer le propriétaire d'un élément
chown mon_user mon_fichier
chown mon_user /mon_répertoire

# Changer le propriétaire d'un élément de façon récursive (tous les fichier et dossier contenus)
chown -R mon_user /mon_répertoire



# Changer le groupe d'un élément
chgrp mon_groupe mon_fichier
chgrp mon_groupe /mon_répertoire

# Changer le groupe d'un élément de façon récursive (tous les fichier et dossier contenus)
chgrp -R mon_groupe /mon_répertoire


# Tricks : changer le propriétaire et le groupe d'un coup
chown mon_user:mon_groupe mon fichier
# Tricks : changer uniquement le groupe
chown :mon_groupe mon fichier

Ajout d’un utilisateur à un groupe

-- usermod
usermod -a -G groupname username

Liste des groupes

cat /etc/group
cat /etc/group | awk -F: '{print $ 1}

Lister les utilisateurs

cat /etc/passwd | awk -F: '{print $ 1}'

Connaitre les groupes d’un utilisateur

--groups
groups mon_user

Java et certificats

# Localiser JAVA
locate java

# Certificats SSL (notamment HTTPS)
# Importer un certificat dans java (mot de passe par défaut : "changeit")
/usr/bin/keytool -importcert -file /tmp/mon_certificat.cer -keystore /usr/lib/jvm/java-XXX/jre/lib/security/cacerts -alias "Mon_certification_XXX"

# Lister les certificats
/usr/bin/keytool -v -list -keystore /usr/lib/jvm/java-XXX/jre/lib/security/cacerts

# Afficher un certificat provenant d'un site
/usr/bin/keytool -printcert -sslserver host:port

# Télécharger un certificat
echo -n | openssl s_client -connect host:port \
| sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > /tmp/mon_certificat.cert

Ressources

Mémoire

# Espace disque
df -h

# Taille d'un répertoire
du -h --max-depth=1 /mon_repertoire/
du -sh

# Voir la RAM dispo
free -m

# Libérer la mémoire (à faire en root ou sudo)
sync
echo 3 > /proc/sys/vm/drop_caches

Processeur

# Voir la charge
top
# Variante
htop

# Nombre de coeur sur la machine
cat /proc/cpuinfo | grep 'processor\|vendor_id\|model name\|cpu cores\|cpu MHz\|cache size'

# Processus en cours répondant au nom de mon_processus
ps aux|grep mon_processus

# Tuer les taches "mon_process"
taskkill /F /IM mon_process

# Pour killer le processus
kill -SIGHUP <pid>

Applications

# Lister les paquets installés
dpkg -l 

# Rechercher des packets
dpkg -l '*mot clé*'
# Plus loin
dpkg -l '*php*' | grep '^.i'

# Désinstaller le packet et ses dépendances
apt-get --purge remove mon-paquet

# Lister les services : 
ls /etc/init.d
# Ou
service --status-all
# APT
# Purger le cache
apt-get clean

# Purger le cache (juste les déb non utilisées)
apt-get autoclean

# Mettre à jour la liste des paquets
apt-get update

BDD

# MySQL
# Se connecter à MySQL
mysql -u root -p

# redémarrer la BDD
sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql start

# PostgreSQL
# Pour lister les clusters :
pg_lsclusters  

# Pour plus d'info
pg_ctlcluster <version> <cluster> < start|stop|restart|reload|status|promote>

# Recharger la conf
systemctl reload postgresql

# Stopper le service (ou le redémarrer avec "start")
/etc/init.d/postgresql stop
/etc/init.d/postgresql stop 9.5
service postgresql stop

Mise à jour MySQL

Si la clé du repo MySQL est expirée, se rendre ici : https://dev.mysql.com/downloads/repo/apt/

Télécharger le paquet puis mettre à jour le paquet sur le serveur :

# Mettre à jour
sudo dpkg -i /tmp/mysql-apt-config_0.8.14-1_all.deb

# Mettre à jour APT
apt-get update

Fichiers

# Voir les 200 dernières lignes et se mettre à jour dès que de nouvelles apparaissent
tail -n 200 -f /var/log/monlog

# Déplacer un fichier
mv /emplacement/nom_du_fichier_source /emplacement/nom_fichier destination

# Créer un lien symbolic
ln -s /emplacement/nom_du_fichier_source /emplacement/nom_du_lien

# Télécharger un fichier
wget  -P /home/mon_repertoire/ "http://mon_url.com/mon_fichier.zip"

# Transfert de fichier (-p pour préserver les date de modif, date d'accès et les modes)
scp mon_user@127.0.0.1:/tmp/mon-repertoire/fichier_source /home/mon_repertoire_destination

# Transfert de d'un répertoire
scp -r mon_user@127.0.0.1:/tmp/mon-repertoire_source/ /home/mon_repertoire_destination

Apache

# Démarrer Apache
/etc/init.d/apache2 start
service apache2 start
# En ouvrant le fichier de variable avant
apache2ctl -k start

# Reload apache
sudo /etc/init.d/apache2 reload
service apache2 reload
apache2ctl -k reload

# Version apache
apache2 -v

# Tester le fichier de configuration
apachectl configtest

# Ajouter un site
a2ensite "vhost"
# Retirer un site
a2dissite "vhost"

# Ajouter un module
a2enmod "module"
# Retirer un module
a2dismod "module"

# Ajouter une configuration
a2enconf "conf"
# Retirer une configuration
a2disconf "conf"

GREP

# Pour chercher :
grep 'ma recherche' "/mon fichier"

# Pour chercher plusieurs fichier
grep 'ma recherche1\|ma recherche2\|ma recherche2' "/mon fichier"

# Avec les extensions
grep 'ma recherche' *.txt

# Rechercher le mot 1 ou 2
grep -E 'ma recherche|ma recherche2' "/mon fichier"
grep -e 'ma recherche' -e 'ma recherche2' "/mon fichier"
grep 'ma recherche'\''ma recherche2' "/mon fichier"

Autre

# MOTD 
# Modifier le fichier dans etc/update-motd

# Connexion ssh sur un autre serveur :
ssh mon_user@127.0.0.1 -p 22

# Qu'est-ce qui écoute sur le port 443
netstat -nao |findstr 443

Cet article vous a plu ?

N'hésitez pas à le partager, il interessera surement certains de vos contacts.

Les thèmes suivants contiennent des articles en lien avec celui-ci, allez faire un tour :

ITLinux commandetips

50%