Documentation Linux

Chemins d'accès :

/bin pour les commandes exécutable dans Linux /sbin pour les commandes exécutable dans Linux avec l'utilisateur root /etc/os-release avoir des informations sur le système

Commandes :

pwd

mkdir dossier
cd dossier

ls

ls -a
file "namefile"
touch file1 file2 touch file{1..10}

cp file1 dossier/
cp -rvfp dossier/ dossier2/

mv fichier.txt dossier2/

rm fichier.txt rm -rf dossier2/
cat etc/passwd

grep root /etc/passwd grep -i Root /etc/passwd (ignore les majuscules)

less /etc/passwd less /root /etc/passwd -> pour chercher un mot dans la ligne less -N /etc/passwd -> afficher le nombre de lignes less -X /etc/passwd -> afficher la sortie more /etc/passwd more /root /etc/passwd -> pour chercher un mot dans la ligne d -> pour la page suivante b -> pour la page précédente
head /etc/passwd
tail /etc/passwd
cut -d: -f1 /etc/passwd

sed 's/test/sed/g' fichier.txt sed 's/test/sed/g' fichier.txt > sed.txt sed '1 s/test/sed/g' fichier.txt -> changer juste une ligne tail /etc/passwd >> sed.txt -> combiner un fichier dans un autre fichier

uptime uptime -s afficher l'heure uptime -p afficher l'heure au format plus compréhensible uptime -V version du logiciel last -n 100 voir les 100 dernières connexions last -i afficher une adresse IP last name voir les informations d'un utilisateur

cat /etc/passwd | grep root
find /home/olan -name fichier.txt par nom de fichier find /home/olan -type par type de fichier find /home/olan -size par taille find /home/olan -atime par date de création find /home/olan -user par propriétaire find /home/olan -group par groupe find /home/olan -perm par autorisation
ln -s /var/log/ logdir

Éditeur Nano :

nano --version
sudo apt-get install nano
nano fichier.txt nano dossier/dossier2/fichier.txt

Commandes Informations
CTRL + A Sauter au début de la ligne.
CTRL + E Sauter à la fin de la ligne.
CTRL + Y Défiler la page vers le bas.
CTRL + V Défiler la page vers le haut.
CTRL + G Afficher les commandes disponibles.
CTRL + O Enregistrer le fichier.
CTRL + W Rechercher un mot.
CTRL + K Couper la ligne.
CTRL + U Coller la ligne.
CTRL + X Quitter l'éditeur.
CTRL + \ Remplacer un mot.
CTRL + T Appeler le correcteur.
ALT + A Sélectionner du texte.

Utilisateurs et groupes :

Les noms d'utilisateurs sont stockés dans "/etc/passwd".

Les mots de passe sont stockés dans "/etc/shadow", mais ils sont cryptés.

On peut mettre en place des scripts à chaque connexion de l'utilisateur dans "/home".

  1. Nom d'utilisateur
  2. Mot de passe crypté
  3. Nombre de jours depuis la dernière modification du mot de passe
  4. Nombre de jours avant que le mot de passe puisse être changé
  5. Nombre de jours après le changement de mot de passe
  6. Nombre de jours avant la date d'expiration du mot de passe pour afficher le message d'avertissement
  7. Nombre de jours pour désactiver le compte après l'expiration du mot de passe
  8. Nombre de jours depuis la désactivation du compte
  9. Champ réservé
sudo useradd user
sudo passwd password
su - user ssh user@host
logout
sudo userdel -r user
groupadd group
usermod -G group user
sudo groupdel group

Permissions :

ls -l .

r (pour read) : droit de lire le fichier/dossier
w (pour write) : droit de modifier le fichier/dossier
x (pour execute) : droit d’exécuter le fichier
"-" (pour rien) : aucun droit sur le fichier/dossier

chmod 700 file chmod u+x
chown -R user file directory
chgrp -R group directory

Sudo :

sudo -i
apt-get install sudo
nano /etc/sudoers

nano /etc/hostname
user ALL=(ALL:ALL) NOPASSWD: ALL

Management :

curl url
wget link
apt-get install tree tree
history 10
apt search name
apt install package -y
apt reinstall package
apt remove package
apt update package
apt update
apt grouplist
apt groupinstall "groupname"
apt clean all
apt history
apt show package name
rsync dossier/* dossier2/
df
free -m
sudo fdisk -l
ssh-keygen
ls .ssh cat .ssh/id_rsa.pub
mount device-path mount-point umount device-path mount-point
cd ..
cd /var/www/html
clear
sudo systemctl start apache2 : démarrer apache sudo systemctl stop apache2 : arrêter apache sudo systemctl status apache2 : voir le status de apache sudo systemctl restart apache2 : redémarrer apache sudo systemctl reload apache2 : redémarrer la configuration sudo systemctl enable apache2 : démarrer apache au démarrage sudo systemctl disable apache2 : arrêter apache au démarrage sudo systemctl is-active apache2 : voir si le service est active sudo systemctl is-enabled apache2 : voir si le service est inactive

Bash :

nano script.sh
#!/bin/bash var="test" echo "Bonjour $(whoami)" echo "Date execution du script : $(date)" echo "Adresse IP : $(ip a | grep 'inet.*brd.*eth1' | awk ' {print $2 } ')" echo "Ma variable : $var" if [ "$find /home/test -size +0k -size -10k -exec ls -l {} +" ] then echo "Liste des fichiers : " echo "$(ls -l)" else echo "Pas de fichier !" fi while [ "$(ls -Al | wc -l)" -lt 10 ] do "$(touch fichier{1..10})" done
./script.sh
chmod u+x script.sh
-gt : plus de -eq : égal à -lt : moins de