Outils pour utilisateurs

Outils du site


php-bash:aide-memoire

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
Prochaine révisionLes deux révisions suivantes
php-bash:aide-memoire [2019/03/08 07:27] cyrillephp-bash:aide-memoire [2019/05/07 19:00] – [Aide mémoire Linux] cyrille
Ligne 1: Ligne 1:
 ====== Aide mémoire Linux ====== ====== Aide mémoire Linux ======
  
 +Quelques liens 
 +  * [[https://www.alsacreations.com/tuto/lire/622-Securite-firewall-iptables.html|IPTABLES]]
 +  * [[https://www.instructables.com/id/CNC-Arduino-Plant-Growing-Machine/|ARDUINO  Plant Growing]
 +=====Programmation BASH====
 +[[https://fr.wikibooks.org/wiki/Programmation_Bash|Programmation BASH]]
 =====Perte mot de passe root===== =====Perte mot de passe root=====
  
Ligne 45: Ligne 50:
 </code> </code>
  
 +===== Aptitude  ~i | !~i =====
 +Trouvé que le motif bash (dans le nom)
 +<code bash>aptitude search '~i bash'</code>
 +
 +
 +Trouvé que le motif bash (dans la description)
 +<code bash>aptitude search '~i ~d bash'</code>
 +
 +Idem mais en non installé
 +<code bash>aptitude search '!~i bash'</code>
  
 =====FREEBOX VLC===== =====FREEBOX VLC=====
Ligne 94: Ligne 109:
 FreeBSD : pkg install intel-backlight  FreeBSD : pkg install intel-backlight 
 Debian : aptitude instatt xbacklight Debian : aptitude instatt xbacklight
 +
 +
 +=====Bash : recursif=====
 +
 +<code bash>#!/bin/sh
 +
 +dossierDeTravail="/home/serveur";
 +
 +recursiveSearch() {
 +    [ -r "$1" ] && [ -x "$1" ] || return 1 # Si on peut fouiller dans le dossier
 +    [ "`ls "$1" | wc -l`" == "0" ] && return 0 # Si le dossier est vide
 +    for file in "$1"/*; do
 +        if [ -d "$file" ]; then
 +            recursiveSearch "$file"
 +        fi
 +        echo "$file"
 +    done
 +}
 +
 +recursiveSearch  $dossierDeTravail</code>
 +
 +
 +
 +=====Bash : recursif 2 / zenity =====
 +<code bash>#!/bin/sh
 +#
 +# Test de l'existence du programme ZENITY 
 +if which zenity > /dev/null; then
 +    echo "zenity already install. Fine."
 +else
 +    echo "zenity does not exist. Go for the installation"
 +    su -c "apt-get install zenity"
 +fi
 +
 +dossier=`zenity --title="Choisir un dossier" --file-selection --directory` ; 
 +find $dossier -depth -name '*.wav' -execdir bash -c '[[ -f $0 ]] &&  flac -7 --replay-gain "$0" ' {} \;</code>
 +
 +=====Bash: jours semaine=====
 +<code bash>#!/bin/sh
 +
 +case $(LC_ALL=C date +%a) in
 +   (Mon) echo 'Bonjour :)';;
 +   (Thu) echo 'Bienvenue ;) ';;
 +   (Wed|Sat|Sun) echo 'YEP !!! :)';;
 +   (*) echo 'Hi ! ;)' ;;
 +esac</code>
 +
 +=====VIRTUAL BOX: racc.claviers=====
 +
 +
 +La touche Host est la touche Ctrl droite de votre clavier.
 +
 +
 +    Host: Active (intègre la souris et le clavier dans la machine)
 +    Host: Désactive le mode capturé (sortir de la machine capturé)
 +    Host + Début: Affichée la barre de menu en mode intégré
 +    Host + A: Ajuste la taille de l'écran invité
 +    Host + F: Passe l'affichage en mode plein écran
 +    Host + F: Passe l'affichage en mode normal
 +    Host + G: Ajuste automatiquement la taille et l'écran de l'invité
 +    Host + H: Arrêt par ACPI
 +    Host + I: Activation de l'intégration de la souris
 +    Host + I: Désactivation de l'intégration de la souris
 +    Host + L: Mode affichage intégré dans le bureau
 +    Host + P: Mettre la machine virtuelle en pause
 +    Host + P: Sortir la machine virtuelle du mode pause
 +    Host + Q: Fermer (quitter) la machine virtuelle
 +    Host + R: Redémarrer la machine virtuelle
 +
 +=====sources.list=====
 +
 +<code bash>$ find /etc/apt -type f -name '*.list' -exec bash -c 'echo -e "\n$1\n"; nl -ba "$1"' _ '{}' \;</code>
 +
 +
 +
 +
 +=====Bloquer l'USB=====
 +====Bloquer les ports====
 +<code bash>serveur@serveurProliant:~$ lsusb -t
 +/:  Bus 05.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
 +    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
 +/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
 +    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
 +/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M
 +/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 480M
 +    |__ Port 2: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
 +    |__ Port 3: Dev 3, If 0, Class=Hub, Driver=hub/2p, 480M
 +    |__ Port 4: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
 +/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
 +</code>
 +
 +
 +Pour désactiver un port : (ici le bus 2 port 4)
 +<code bash>echo '2-4' |sudo tee /sys/bus/usb/drivers/usb/unbind</code>
 +
 +Pour le réactiver 
 +<code bash>echo '2-4' |sudo tee /sys/bus/usb/drivers/usb/bind</code>
 +
 +====Bloquer les périphériques de stockage====
 +1. Initialiser l'usb-storage
 +<code bash>cat /etc/modprobe.d/block_usb.conf
 +install usb-storage /bin/true</code>
 +
 +2.Blacklister usb-storage
 +
 +<code bash>cat /etc/modprobe.d/blacklist.conf
 +blacklist usb-storage
 +blacklist uas</code>
 +
 +===== find =====
 +<code bash>find /var/log/ -maxdepth 3 -name "*gz*" -ctime +5</code>
 +
 +Explication :
 +
 +**"/var/log"** : indique le répertoire ou nous allons chercher. Nous aurions aussi pu indiquer "." pour spécifier le répertoire où nous nous trouvons.
 +
 +**"name "*tar*""** : Permet de nous afficher tous les fichiers qui possèdent "tar" dans leur nom. On s'aide des "*" qui nous permettent de dire "tout à partir du moment ou il y a tar".
 +
 +**"maxdepth 3"** : permet d'indiquer que nous allons descendre dans les arborescences sur trois niveaux. Le trois à été choisi car on descend rarement plus de 3 niveaux dans les logs mais cela peut être plus où peut ne pas être indiqué pour descendre au maximum.
 +
 +**"ctime +5"** : c'est l'option la plus intéressante, avec celle-ci nous n'affichons que les données dont la création est plus vieille que 5 jours.
 +
 +Avec cette dernière option, nous pouvons trier les fichiers selon la date, mais il existe d'autres options :
 +
 +**"ctime"** pour "creation time" : permet de n'afficher que les fichiers dont la création est plus ou moins vieille que le nombre de jour donné.
 +
 +**"atime"** pour "access time" : permet de n'afficher que les fichiers dont le dernier accès est plus ou moins vieux que le nombre de jour donné
 +
 +**"mtime"** pour "modification time": permet de n'afficher que les fichiers dont la dernière modification est plus ou moins vieille que le nombre de jour donné
 +
 +Sur ces trois options, nous pouvons spécifier un nombre de jours précédé d'un "+" pour "plus vieux que X jours" ou un "-" pour spécifier "moins vieux que".
 +
 +Quelques exemples :
 +
 +Pour lister les fichiers qui ont été modifiés il y a moins de trois jours :
 +
 +<code bash>find -mtime -3</code>
 +
 +Pour lister les fichiers qui ont été ouverts (lus) il y a plus de 20 jours :
 +
 +<code bash>find -atime +20</code>
 +
 +On peut bien entendu combiner l'une des trois options avec les autres options vues un peu plus tôt dans le tutoriel.
 +
 +
 +Supprimer les fichiers
 +
 +Maintenant que nous savons lister les fichiers, nous voulons agir sur les fichiers que nous avons trouvés avec la même ligne de commande. On peut pour cela ajouter "-exec ". Par exemple si nous souhaitons supprimer les archives qui date de plus de 30 jours dans le dossier "/var/log"
 +
 +<code bash>find /var/log/ -maxdepth 3 -name "*gz*" -ctime +30 -exec rm -f {} \;</code>
 +
 +**"{}"** permet d'afficher le nom du fichier trouvé à la place de ces deux accolades.
 +
 +** "\;"** : permet de terminer la commande proprement
 +
 +Nous sommes libre d'effectuer la commande que l'on souhaite après le "-exec".
 +
 +
 +===== Vitesse démarrage =====
 +<code bash>systemd-analyze blame</code>
 +
 +
php-bash/aide-memoire.txt · Dernière modification : 2024/06/13 18:34 de cyrille