nt le dernier paramètre de la dernière commande)
<code bash>
$ touch toto
$ echo !!
echo touch toto
touch toto
</code>
======Les variables======
En bash, chaque var... on récupère le contenu en ajoutant ''$'' devant.
<code bash>
NOM="robert"
echo "Salut, je suis le gros $NOM"
</code>
On peut les manipuler sans les déclarer propreme
n'affiche rien, même pas un message d'erreur) :
<code>
sudo fdisk -l | grep Disque
Disque /dev/sda: 64... ts
Disque /dev/sdb: 1073 Mo, 1073741824 octets
</code>
On va faire un RAID1 avec les disques /dev/sd{c... ume RAID1 ; y rattacher les 2 partitions de 1 Go
<code>
mdadm --create /dev/md0 --level=1 --raid-devices... blocks [2/2] [UU]
unused devices: <none>
</code>
On déclare un disque en erreur ("faulty")
<code
* lors du menu grub, presser "E"
* saisir :
<code>grub edit> kernel /boot/vmlinuz-2.6.8-2-386 root=/dev/sda1 rw init=/bin/bash</code>
* valider, puis, au menu grub, presser "B"
*... cher un fichier avec les numéros de lignes=====
<code>perl -ne 'print "$. - $_"' infile.txt</code>
=====Débloquer un terminal=====
Il arrive que votre term
comme regexp avec awk, on peut procéder ainsi :
<code>
awk '$1 ~ /^'$VAR'/ {print}'
</code>
* BEGIN ou END (BEGIN permet de faire des actions avant le trai... '-f <fichier>'' précise un fichier de script awk
<code bash>
vi test.awk
BEGIN{FS=";"; OFS=" : "}
$0 ~ "...
awk -f test.awk fichier.txt
ceci est un test
</code>
* ''-F "<séparateur>"'' spécifie le séparateur
se termine dès qu'une commande se termine avec un code de retour en erreur (différent de 0). Impossible ... ter (erreur=2 : fichier inexistant par exemple).
<code bash>
#!/bin/bash -e
function grep () {
local exit_code
command grep "$@" || exit_code=$?
return $(( exit_code == 1 ? 0 : exit_code ))
}
grep PATTERN F
eau sous Linux ======
=====Outils en vrac=====
<code>
nmap (http://www.nmap.org/),
thcrut (http://www.... an (http://www.unixwiz.net/tools/nbtscan.html).
</code>
====TUI monitoring====
<code>
bmon
iptraf
iftop
nettop
</code>
=====IP secondaire=====
Soit l'interface réseau (physique ou non = m
erfaces réseau (rx/tx) et l'état des partitions.
<code bash>
saidar -c
</code>
====glance====
Dans le même genre que saidar, en plus détaillé.
====neofetch=... ==
Affiche un résumé des informations système :
<code bash>
$ neofetch
_,met$$$$$gg. du... `Y$$b.
`"Y$b._
`"""
</code>
====inxi====
A l'instar de neofetch, permet d'
te réseau
=====Les options=====
* Standarts
<code bash>
Option : Description :
-A Append (ajoute)... et
--line-numbers Affiche les numéros de ligne
</code>
''-j [ACCEPT | DROP | LOG | REJECT]''
* ACCEP... ne table n'est spécifiée.
* Liées aux modules
<code bash>
--sport port source
--dport port destinatio... ntifie un paquet ICMP (echo-reply echo-request)
</code>
=====Les extensions=====
<code bash>
Module
urs, tube)
Ces colonnes sont donc de la forme :
<code bash>
<service.priorité> </path/fichier> | </de... yX> | @<host> | <root,toto> | | </path/to/pipe>
</code>
Par exemple pour récupérer les logs critiques (... et les rediriger dans la console ''/dev/tty8'' :
<code bash>
mail.crit /dev/tty8
</code>
On utilise :
* une étoile ''*'' pour désigner
''setenforce [0 | 1]'' (Permissive | Enforcing).
<code bash>
getenforce
Enforcing
setenforce 0
</code>
Il existe 2 politiques :
* **targeted** (seuls les ... é est de la forme : ''user:object (rôle):type''.
<code bash>
ps -ZC sendmail
LABEL ... :sendmail_t 2719 ? 00:00:00 sendmail
</code>
-> liste le contexte actuel du processus sendmai
supp**r**imer (**r**emove) ce fichier de conf :
<code bash>
crontab [-u user] {-l e r}
</code>
L'option ''-u'' permet au root d'accéder à celui d'un autre u... ation de la prise en compte de la modification :
<code bash>
crontab: installing new crontab
</code>
Voici des exemples (toujours 1 ligne par commande).
*
amétrage des disques et partitions sous Linux :
<code bash>
cat /proc/partitions
major minor #blocks ... 2 8790396928 dm-2
252 3 2088960 dm-3
</code>
<code bash>
df -hT | grep -v tmpfs
Sys. de fichiers Type Taille Utilisé Dispo Uti% Monté s... ecryptfs 57G 3,3G 51G 7% /home/dude
</code>
====fdisk====
**fdisk** est un couteau suisse
chaque disque répéter les opérations suivantes :
<code bash>
sudo parted /dev/sdc
GNU Parted 2.3
Utilisa... lier de mettre à jour /etc/fstab si nécessaire.
</code>
=====Création de la grappe RAID=====
<code bash>
# création du la grappe
sudo mdadm --create --verbo... 49 3 active sync /dev/sdd1
</code>
Avant de créer un système de fichier et de dépo