Basic command

  • La seule partition obligatoire est la racine « / »
  • / = partition pour le système
  • /home = partition pour les documents utilisateurs
  • swap = fichier d’échange quand la mémoire est saturée
  • /tmp contient des fichiers temporaires, il est utile de le partitionner pour ne pas saturer le système
  • /var contient des bases de données, en cas de crash système /var reste intact
  • Afficher la configuration système ;
  • fdisk -l ou cfdisk ou sfdisk -l : voir les partitions systèmes
  • Iscpu : infos sur le CPU
  • Ishw : lister globalement le hardware du système
  • hwinfo : pour une liste plus complète du hardware
  • grub-install --version : connaître la version de GRUB installée
  • du : affiche l’espace disque restant
  • 1 apt

  • Un paquet source est un paquet contenant le code source d’un programme
  • Une source de paquet est un répertoire contenant des paquets
  • Les sources apt sont listées dans le fichier /etc/apt/sources.list
  • Les source peuvent être de deux types ; « deb » pour un paquet binaire « deb-src »pour un paquet source
  • Les commandes apt :
    • apt update : cherche les mises à jour des paquets installés
    • apt install "paquet -t version" : installe un paquet avec la version voulue
    • apt-cache search "paquet" : recherche un paquet
    • apt-cache show "paquet" : affiche les détails d’un paquet
    • apt install/remove "paquet" : installe/désinstalle un paquet
    • apt purge "paquet" : désinstalle toute trace du paquet
    • apt upgrade : met à jour les paquets
    • apt full-upgrade : met à jour le système et les paquets
    • apt dist-upgrade : met à jour la distribution
    • apt clean : vide le dossier archive
    • apt autoclean : ne supprimes que les paquets inutiles
  • Changer le proxy de apt :
    • nano /etc/apt/apt.conf
    • Acquire::http::Proxy ‘’http://ftp.belnet.be :80/’’ ;

    2 dpkg

  • dpkg est le programme qui s’occupe des fichiers .deb, notamment en les installant, supprimant, extrayant et analysant
  • Les commandes dpkg ;
    • dpkg -i "paquet.deb" : installe un paquet .deb
    • dpkg -l : liste les paquets installés
    • dpkg -s "paquet" : vérifie si un paquet est installé
    • dpkg -r "paquet" : supprime un paquet
    • dpkg -q "paquet" : supprime le paquet et les fichiers qui lui sont associés
    • dpkg -L "paquet" : affiche les fichiers installés par le paquet
    • dpkg –configure "paquet" : configure un paquet

    Configuration Réseaux

    1 Fichiers de configuration

  • /etc
  • /hostname : nom de la machine
  • /hosts : fichier DNS local
  • /resolv.conf : fichier de désignation de serveur DNS, le système commencera par questionner le serveur de la première ligne. S’il échoue, il questionnera la ligne suivante et ainsi de suite
  • /host.conf : spécifie comment les nom d’hôtes sont résolus dans un réseau par exemple avec leur adresse IP
  • /nsswitch.conf : est utilisé par la librairie de GNU pour déterminer la source à partir de laquelle obtenir des infos DNS dans un range de catégories et dans quel ordre, le système questionne ligne par ligne
  • /network/inteface :
    • auto "eth0" : permet d’activer automatiquement l’interface
    • allow-hotplug : permet de retirer la carte réseau pendant que la machine est en marche
    • iface lo inet loopback : initialise l’interface lo à être l’interface
    • iface "eth0" inet static/dhcp
    • static
      • address "IP"
      • netmask "mask"
      • gateway "gw"
    • Pour prendre en compte les modifications :
      • ifdown "eth0"
      • ifup "eth0"
    • /proc : contient tous les répertoires rel atifs aux processus
    • /proc/sys/net/ipv4/ip-forward : est un synonyme de routing pour l’activer
    • Autoriser le ping -> nano /etc/sysctl.conf -> #net. ipv4.forward = 1
    • 2 Commandes de configuration

    • hostname "nom" : change le nom d’hôte
    • lspci : repère les cartes réseaux et leur modèle
    • mii-tool : vérifie la présence de connexion sur les interfaces
    • Le jeu de commande ip ;
      • Attribue une ipv4 statique à une interface réseau :
        • ip addr add "192.168.1.5/24" dev "eth0"
      • Afficher la config ipv4 des interfaces :
        • ip -4 -o addr show
      • Supprimer une addresse IP sur une interface réseau :
        • ip addr del "192.168.1.5/24" dev "eth0"
      • Activer/Désactiver une interface réseau :
        • ip link set "eth0" up/down
      • Ajouter une passerelle par défaut :
        • ip route add default via "192.168.1.1"
      • Ajouter une passerelle supplémentaire :
        • ip route "192.168.1.0" via "192.168.2.1" dev "eth0"
      • Supprimer une route :
        • ip route del "192.168.1.0" || ip route del default
    • Afficher la table de routage :
      • ip route list
    • Nettoyer une interface réseau
      • ip flush dev "eth0"
    • Redémarrer l’interface réseau :
      • /etc/init.d/networking restart
    • Activer l’adressage dynamique sur une interface :
      • dhclient -v "eth0"
    • nslookup : Test le serveur DNS
    • Gestion des fichiers

      1 Gestion générique

    • Lister les fichiers avec ls :
      • a : affiche également les fichiers cachés
      • l (L) : affiche les permissions
      • R : affiche de façon récursive
      • s : affiche la taille en Ko
    • pwd : affiche le répertoire courant
    • Copier des fichiers avec cp :
      • cp "chemin d’origine" "chemin de destination"
      • -u -r : copie de façon récursive et incrémentielle ( pour copier des dossiers entier)
      • -p : conserve l’heure et les droits
      • -f : force la copie
      • -a : archive la copie
    • Changer la date et l’heure d’un fichier avec touch :
      • touch -t AAMMJJhhmm
    • Créer des dossiers avec mkdir :
      • mkdir -p dir1/{sdir1,sdir2}/ssdir1
    • Supprimer des fichiers avec rm :
      • -r : récursivement
      • -f : forcer
      • -i : interactivement
    • Afficher le type de fichier avec file :
      • file "nom du fichier" "emplacement"
      • ex : file *.* /root -> affiche le type de tous les fichiers dans /root
    • Rechercher un fichier dans un répertoire avec find :
      • find "emplacement" -name "nom du fichier"
    • type "type" : précise le type de fichier à rechercher ;
      • d = dossier
      • c = caractère
      • f = fichier standard
    • stat : affiche le statut d’un fichier
    • Créer des liens vers des fichiers avec ln :
      • ln "file" "nom_du_lien" -> crée un hard-link (pointe vers les données du fichier )
      • ln -s "file" "nom_du_lien" -> crée un soft link (pointe vers le pointeur originel)

      2 Gestion des fichiers texte

    • Afficher le contenu d’un fichier texte avec cat :
      • -n : numérote les lignes
      • -t : afficher les caractères non imprimables
    • Afficher le/a début/fin d’un fichier avec head/tail :
      • -n "nombre de ligne à afficher"
      • -f : affiche en continu
    • more : permet d’afficher un fichier écran par écran
    • less : permet d’afficher un fichier et d’y naviguer
    • sort : trie un fichier vers la sortie
    • expand : remplace les tabulations par des espaces
    • unexpand : remplace les chaines de deux espaces ou plus par des tabulations
    • frmt : formate un fichier texte à une certaine longueur
    • nl : numérote les lignes d’un fichier
    • pr : convertit un texte en version paginée
    • uniq : affiche sans doublons
    • split : découpe un fichier en plusieurs fichiers de nombres de ligne spécifié
    • wc : compte le nombre de ligne, caractère, etc.
    • grep : recherche dans un fichier l’expression entrée
    • 3 Les options de recherche

    • [abc] = un des caractères entre crochet
    • [^abc] = tous les caractères sauf ceux entre crochet
    • {n} = n occurrence de l’expression entrée précédemment
    • {n,} = au moins n occurrence de l’expression précédente
    • abc* = 0 ou plusieurs occurrence de abc
    • abc+ = 1 ou plusieurs occurrence de abc
    • ^[abc] = un des caractères entre crochet en début de ligne
    • [a-b]$ = l’intervalle compris entre a et b en fin de ligne
    • ^hello world/. = hello world avec point en début de ligne, /. sert à ignorer l’option « . »
    • 4 Gestion des droits des fichiers

    • chmod u=rwx, g=rx, o=r "file"
    • donne les droits de lire, d’écrire et d’exécuter à propriétaire du fichier
    • donne les droits de lire et d’exécuter au groupe du propriétaire du fichier
    • donne le droit de lire aux autres utilisateurs
    • chmod o-r "file"
    • enlève le droit de lecture aux utilisateurs
    • chmod g+w "file"
    • donne le droit d’écriture au groupe du propriétaire du fichier
    • 5 Gestion des redirections

    • ls > file.txt : insrit le résultat d’une commande dans un fichier (supprime ce que contenait le fichier s’il n’était pas vierge)
    • ls >> file.txt : inscrit à la fin du fichier (ce que contenait le fichier est préservé)
    • ls 2> file.txt : inscrit les erreurs d’exécution d’une commande dans un fichier texte
    • ls | cat : renvoit le résultat d’une première commande en entrée d’une seconde
    • Gestion des utilisateurs et des groupes

      1 Gestion des utilisateurs

    • /etc/passwd : fichier utilisateurs
    • Créer un utilisateur :
      • adduser "ID" "ID_du_groupe"
    • Supprimer un utilisateur :
      • deluser "ID"
    • Changer l’UID d’un utilisateur :
      • usermod -u "UID" "ID"
    • Enlever le droit d’accès au shell :
      • usermod -s /bin/false user
      • /bin/false >> /etc/shells

      2 Gestion des groupes

    • /etc/group : fichier groupes
    • Créer un groupe :
      • addgroup "ID"
    • Supprimer un groupe :
      • delgroup "ID"
    • Changer le GID d’un groupe :
      • groupmod "ID" -g "GID"

    Network

    Services de base

    1 NTP

  • Installer NTP : apt install ntp
  • Configurer ntp pour synchroniser le temps avec un serveur spécifié (belnet) :
  • nano /etc/ntp.conf
    • ajouter ntp.belnet.be et ntp1.belnet.be, il faut commenter les serveur de base
    • shutdown -r now
  • Vérifier si la configuration a réussi : ntpq -p
  • Mettre à jour l’heure du système en utilisant ntpd :
    • -n : pas en arrière plan
    • -q : quitter ntpd après la synchronisation
    • -g : met à jour même si le décalage est plus grand que 1000s
  • Sécuriser la configuration
    • Les clients du LAN peuvent seulement lire les infos sur le temps :
      • restrict "IP_LAN" mask "MASK_LAN" nomodify notrap
    • Tout autre client n’ont aucun accès :
      • restrict default ignore
    • Empêcher les machines de changer la configuration à part le localhost :
      • restrict localhost
      • restrict default kod notrap nomodify nopeer noquery

    2 Telnet

  • Tester la connection avec un serveur smtp avec telnet :
    • telnet "ip" "port"
  • Pour pouvoir se connecter la machine cible doit avoir installer un serveur telnet :
    • apt install telnetd
  • Pour se connecter avec telnet, il faut être connecter en local avec un autre utilisateur que root
    • adduser test_telnet

    3 SSH basique

  • Si vous modifiez l’adresse IP du serveur ssh après avoir accepté sa clé rsa/dsa, il vous demandera une nouvelle fois de l’accepter car la clé est lié à l’adresse IP du serveur
  • Root ne doit pas être autorisé à se connecter avec ssh mais il est possible de passer en tant que root après s’être connecté avec un autre utilisateur en utilisant su
  • Les fichiers /etc/hosts.allow et /etc/hosts.deny sont une liste des hôtes autoriser ou non à se connecter avec ssh ou un autre service
  • Installer un serveur ssh :
    • apt install openssh-server
  • Configurer le serveur dans le fichier /etc/ssh/sshd_config
    • PermitRootLogin no : évite la connexion root
    • PasswordAuthentification no : désactive la connexion par mot de passe
    • PermitEmptyPasswords no : désactive les mots de passe vide
    • UsePAM no : désactive la connexion par le biais du module PAM
    • AllowUsers "login1" "login2" : restreint l’accès aux utilisateurs indiqués uniquement
    • AllowGroups "group_ID" : restreint l’accès aux groupes indiqués
    • DenyUsers test guest admin root : interdit l’accès à certains utilisateurs
    • DenyGroups test guest root : interdit l’accès à certains groupes
    • MaxStartups 1 : Limite le nombre de tentatives de connexions à 1 (par défaut 10)
  • Connection à serveur ssh :
    • ssh user@192.168.1.10
  • S’authentifier à l’aide de clés publiques/privées (clé publique sur le serveur et clé privée sur le client) :
  • Générer les clés sur la machine cliente dans le répertoire /home/user/.ssh
  • Le compte user doit être actif sur le serveur comme sur le client pour pouvoir copier la clé facilement
    • ssh-keygen -t dsa
    • passphrase : "password"
    • Copier la clé sur le serveur ssh :
      • ssh-copy-id -i /home/user/.ssh/id_dsa.pub user@192.168.1.10
  • S’authentifier de façon automatisée
    • Créer le fichier .ssh/config
      • cat /home/user/.ssh/config
    • Host debianServer
    • ssh debianServer

    3 SCP

  • scp est similaire à cp mais fonctionne à travers le réseau sous ssh
  • Copier un fichier du client vers le serveur
    • scp -r -p /home/user/scp_test/ user@debianServer :
    • La syntaxe fonctionne comme suis :
      • scp -r -p "user@serveur1" :"/directory" "user@serveur2" :"/directory"
        • -r : récursif
        • -p : préserve les dates, les droits, etc.
  • La commande équivalente sous Windows est Winscp
  • 4 FTP

    4.1 Installer et configurer FTP

  • apt install vsftpd
  • Désactiver les connexions anonymes et autoriser les utilisateurs authentifiés
    • nano /etc/vsftpd.conf
      • anonymous_enable=NO
      • local_enable=YES
  • Se connecter sur un serveur FTP :
    • ftp 192.168.1.10 21
  • Autorise le droit d’écriture aux utilisateurs authentifiés (/etc/vsftpd.conf) :
    • write_enable=YES
  • chroot un utilisateur est une manière de s’assurer qu’il soit emprisonné dans un répertoire en l’empêchant de se balader librement dans les fichiers (/etc/vsftpd.conf) :
    • chroot_local_user=YES
      • Avec cette option il est nécéssaire de changer les permissions du dossier home de l’utilisateur à emprisonner avec les droits 555 et de créer un sous dossier avec les droits 755
      • chroot /home/user/ 555
      • chroot /home/user/dir 755

    4.2 Configurer un FTP sécurisé

  • nano /etc/vsftpd.conf : décommenter les deux lignes suivantes
    • les lignes avec chroot_list
  • nano /etc/vsftpd.chroot_list : ajouter le nom de l’user autorisé
  • Associer un répertoire à un user ftp
    • mkdir /var/www/toto
    • chown toto -R /var/www
    • usermod –home /var/www/ toto

    DNS-DHCP-APACHE

    1 DNS

  • Installer bind
    • apt install bind9
  • Configurer un serveur DNS de cache, de base bond9 est directement configuré en serveur cache il n’est donc pas nécéssaire d’y apporter des modifications. Cependant il peut être intéressant de préciser les forwardes à questionner pour ne pas perdre de temps à questionner trop de serveur.
  • nano /etc/bind/name.conf.options
  • ensuite ajouter les adresses des serveurs DNS
  • Créer une zone dns primaire « intranet.local » (IP srv1 : 192.168.160.129)
  • Utilisons le fichier de configuration du DNS local pour construire notre zone
    • cp /etc/bind/db.local /etc/bind/db.xx
  • Configurons notre zone forward
    • nano /etc/bind/db.xx
  • Créons et configurons maintenant la zone inverse
    • cp /etc/bind/db.127 /etc/bind/db.xx
    • nano /etc/bind/db.xx - Spécifions à bind quels fichiers à utiliser désormais
    • nano /etc/bind/named.conf.local
  • Redémarrons le serveur DNS : service bind9 restart
  • Vérification de la configuration grâce à nslookup
    • 192.168.169.129
    • srv1.intranet.local
    • mail.intranet.local
  • Créer une zone dns secondaire « extranet.local » (IP srv2 : 192.168.160.139)
  • Réinstaller bind9 sur une autre machine (srv2)
  • Recréer un zone forward et reverse sur srv2
    • cp /etc/bind/db.local /etc/bind/db.xx
    • nano /etc/bind/db.xx
    • cp /etc/bind/db.127 /etc/bind/db.xx
    • nano /etc/bind/db.xx
    • nano /etc/bind/named.conf.local
    • service bind9 restart
  • Sur srv1 rajouter srv2 comme zone DNS esclave
    • nano /etc/bind/named.conf.local
    • service bind9 restart

    2 DHCP

  • Installer le serveur dhcp sur srv1
    • apt install isc-dhcp-server
  • Activer le serveur dhcp sur la bonne interface
    • nano /etc/default/isc-dhcp-server
      • Mettre le nom de l'interface a utiliser
  • Avant de configurer le serveur il est judicieux de faire une copie de la configuration de départ
    • cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.ORIGIN
  • Configurer le dhcp
    • nano /etc/dhcp/dhcpd.conf
  • choisir le modèle de notre choix ou en créer un et ensuite le remplir
  • S’il n’y a pas de DNS configuré utiliser l’addr ip du serveur dhcp pour l’option domain-name.
  • service isc-dhcp-server restart
  • Donner toujours la même adresse ip à une machine (MAC addr)
    • nano /etc/dhcp/dhcpd.conf
    • host mint {
      hardware ethernet "MAC";
      fixed-address "IP";
      }
  • service isc-dhcp-server restart
  • 3 Apache2

  • Installer et configurer Apache2
    • apt install apache2
  • Modification du site par défaut
  • Création d’un nouveau répertoire « site1 » dans « /var/www » et d’un nouvel index.html
    • mkdir /var/www/site1
    • head -n 3 /var/www/html/index.html > /var/www/site1/index.html
    • nano /var/www/site/index.html
    • faire son code html
  • Création du fichier de configuration de site1
    • cp /etc/apache2/sites-availeble/000-default.conf /etc/apache2/sites-available/site1.conf
    • nano site1.conf
  • Désactivation du site par défaut :
    • a2dissite 000-default
  • Activation du site1 :
    • a2ensite site1.conf
  • Redémarrage de apache2 :
    • service apache2 reload
  • Ajout d’un site sécurisé
  • Mise à jour du DNS
    • cp /etc/bind/site1 /etc/bind/siteSecure
    • nano siteSecure
    • nano /etc/bind/named.conf.local
    • service bind9 restart
  • nslookup www.siteSecure.local
  • Création du dossier /var/www/secure et du fichier index.html
    • mkdir /var/www/secure
    • cp /var/www/site1/index.html /var/www/secure/index.html
    • nano .../secure/index.html
  • Pour la sécurisation, nous aurons besoin d’un certificat d’authentification et d’une clé privée
    • cd /var/www/secure/cert
    • Génération de la clé : openssl genrsa -des3 -out private.key 1024
    • Génération du certificat csr : openssl req -new -key private.key -out private.csr
  • Suppression de la passphrase pour éviter qu’apache ne la demande à chaque démarrage
    • cp private.key private.key.origin
    • openssl rsa -in private.key.origin -out private.key
    • Génération du certificat :
    • openssl x509 -req -days 365 -in private.csr -signkey private.key -out private.crt
  • Création du fichier siteSecure.conf
    • cd /etc/apache2/sites-available
    • cp site1.conf siteSecure.conf
    • nano siteSecure.conf
    • mettre le chemin vers ses certificats
  • Activation du site siteSecure
    • a2ensite siteSecure.conf
  • Activation du module SSL dans Apache2
    • a2enmod ssl
  • Redémarrage d’Apache (et de bind pour être sûr) : service apache2 reload
  • Gestion Fichier

    1 Partitions

  • Lister les commandes intégrées à fdisk : -m
  • Afficher la table de partition : -p
  • Afficher les différents types de partitions existants : -l
  • Les codes pour les types de partitions sont :
    • Linux 83
    • Swap 82
    • LVM 8e
    • RAID fd
    • FAT32 0b
  • Créer 3 partitions de 300 Mo :
  • fdisk
  • Entrer les commandes suivantes
    • F : pour afficher l’espace disque libre non partionné
    • n : pour créer une nouvelle partition
    • +300M : la taille en Mo
    • w : pour terminer et écrire les changements sur le disque
  • reboot
  • Créer des partitions avec cfdisk ( /dev/sda ou /dev/sdb)
  • 2 Systèmes de fichiers

  • Formater une partition en Ext4
    • mkfs.ext4 /dev/sdx
  • Formater la 1ere partition en ext2 avec des blocs de 1ko avec 4ko par inode
    • mkfs -t ext2 -b 1024 -i 4096 -L ‘’FSext2’’ /dev/sda6
    • -L : permet de définir un label pour la partition
  • Formater la 2e en ext3 :
    • mkfs -t ext3 -b 2048 -i 16384 -L ‘’FSext3’’ /dev/sda7
  • Formater la 3e en ext4 :
    • mkfs -t ext4 -b 2048 -i 16384 -L ‘’FSext4’’ /dev/sda8

    3 Montage

  • Monte la partition en ext2 dans /mnt :
    • mkdir /mnt/one
    • mount /dev/sda6 /mnt/one
  • Monter de façon temporaire une partition dans /media/backup
    • mkdir /media/backup
    • mount /dev/sdx /media/backup
  • Convertir la partition en ext2 en ext3 :
    • tune2fs -j /dev/sda6
    • umount /dev/sda6
    • mount /dev/sda6 /mnt/one
  • Afficher les montages actifs :
    • cat /etc/mtab ou cat /proc/mounts
  • Recopier la ligne sda6 de /etc/mtab dans /etc/fstab (à la fin)
  • Lister l’espace disque libre dans les partitions montées
    • df -h
  • Créer un nouveau home et monter la partition sda8 (ext4) :
    • mkdir /newHome
    • mount /dev/sda8 /newHome
    • Copier le contenu de /home dans /newHome
      • cp -a /home/. /newHome
      • -a : conserver autant que possible la structure

    4 RAID et LVM

  • Créer un raid miroir avec trois partitions vides, 2 pour le raid et un de secours
    • apt install mdadm
    • mdadm - -create - -verbose /dev/md0 - -level=mirror - -raid-devices=2 - -spare-devices=1 /dev/sdb1 /dev/sdb2 /dev/sdb3
  • Utiliser un ensemble LVM par-dessus le Raid
    • apt install lvm2
    • vgcreate vg0 /dev/md0
    • vgdisplay -v vg0 -> repérer la taille du volume
    • lvcreate -L396 -n lvtest vg0 ->396 etant la taille du volume
    • pvscan -> pour voir le résultat
  • Déplacer le répertoire home sur vg0
    • umount /home
    • lvscan -> repérer le nom du volume logique ( lvtest )
    • mkfs -t ext4 /dev/vg0/lvtest
    • mount /dev/vg0/lvtest /home
  • df -h -> permet de voir les volumes montés
  • 5 Quotas

  • Implémenter la gestion des quotas pour /home
    • apt install quota quotatool
  • Retrouver dans mtab la ligne correspondant au point de montage sur lequel se trouve /home et la copier
    • nano /etc/mtab
  • Copier cette ligne dans le fichier fstab en rajoutant usrquota
    • nano /etc/fstab
  • Remonter /home pour que les changements prennent effet
    • mount -o remount /home
  • Créer les fichiers de quotas et activer les quotas
    • quotacheck -avug
    • quotaon -avug
  • Créer un utilisateur toto et lui appliqué une limite dure de 50 Mo avec un avertissement à 45 Mo
    • quotatool -u toto -b -l 50MB -q 45MB /home
  • Afficher les règles de quota actives
  • repquota -ust /home
  • File Sharing

    1 SAMBA

    1.1 Partager un dossier public en lecture

  • Installer le serveur samba ainsi que le client samba et les fichier nécéssaire :
    • apt install samba samba-common-bin sambaclient
  • Créer le dossier que l’on souhaite partager :
    • mkdir -p /share/home/pub
  • Il est toujours plus judicieux de faire une copie du fichier de configuration initial avant de le modifier
    • cp /etc/samba/smb.conf /etc/samba/smb.conf.backup
  • Modification du fichier de config pour partager le dossier pub en ajoutant à la fin du fichier : nano /etc/samba/smb.conf
  • [share pub]
    path = /share/home/pub
    browsable = yes
    public = yes
    writible = no
  • Redémarrer les services samba :
  • service smbd restart
  • service nmbd restart
  • En entrant l’url dans un explorateur windows, vous devriez voir votre dossier partagé
  • Sous linux la commande smbtree et testparm permettent de voir les dossiers partagés sur le réseau
  • 1.2 Partager un dossier public en écriture avec des droits spécifiques

  • Retourner dans /etc/samba/smb.conf et ajouter le partage suivant :
  • [share pub]
    path = /share/home/pub
    browsable = yes
    public = yes
    writible = yes
    create mask = 0xxx
  • L’option create mask spécifie les droits propres au partage
  • Créer le dossier spécifié dans le partage
  • mkdir -p /share/home/writablePub
  • Changer l’appartenance du dossier créer pour autoriser tout le monde
  • chown nobody:nogroup /share/home/writablePub
  • Redémarrer les services et essayer d’écrire dans le dossier
  • 1.3 Partager le dossier home d’un utilisateur

  • Créer l’utilisateur tango et son dossier home : useradd -m tango
  • Ajouter l’utilisateur tango au domain samba : smbpasswd -a tango
  • Modifier le fichier smb.conf pour partager le dossier home de tango
  • [share pub]
    path = /home/tango
    browsable = yes
    public = yes
    read only = no
    writible = yes
    create mask = 0xxx
    valid users = tango
  • nano /etc/samba/smb.conf
  • Redémarrer les services et essayer d’écrire dans le dossier avec l’utilisateur tango
  • Gestion des processus

    1 Les processus

  • La commande top permet de lister en continu les processus en cours
  • La commande pgrep "n°" affiche les pid liés au programme
  • 2 Les signaux

  • La commande killall permet d’interrompre tous les processus lié à un service
  • La commande kill "signal" permet d’envoyer des signaux aux processus. Attention les numéros de signaux varient selon l’OS
  • 3 Priorité

  • La commande nice permet de lancer une commande avec une priorité voulue (-20 à 20)
  • La commande renice permet de modifier la priorité d’un processus en cours
  • 4 Planification

  • Le service cron permet la programmation d’évènement à répétition. Il fonctionne à l’aide d’une table, appelée crontab.
  • Pour éditer sa crontab : crontab -e
  • Reboot sa machine tous les jours à minuit : crontab -e
    • 0 0 * * * /home/user/reboot.sh
  • Reboot sa machine ce soir à 22h30 :
    • at 22:30
    • shutdown -r now
    • Ctrl+D