DOCS/UNIX/Trucs et astuces : Différence entre versions

De MonPtitSite
Sauter à la navigation Sauter à la recherche
 
(3 révisions intermédiaires par le même utilisateur non affichées)
Ligne 4 : Ligne 4 :
 
==restriction d'accès pour une clé publique partagée==
 
==restriction d'accès pour une clé publique partagée==
  
Il est possible de restreindre l'accès à un serveur qui dispose d'une clé publique partagée (authorized_keys).
+
Il est possible de restreindre l'accès à un serveur qui dispose d'une clé SSL publique partagée (authorized_keys).
On peut donc n'autoriser l'utilisation de cette clé qu'à partir d'une liste d'adresses IP sources fixes.  
+
On peut donc autoriser l'accès en utilisant cette clé uniquement à partir d'une liste d'adresses IP sources données.  
 +
 
 
Il suffit d'ajouter   
 
Il suffit d'ajouter   
 
   from="liste IP,IP2,IP3 etc ..."
 
   from="liste IP,IP2,IP3 etc ..."
dans le fichier ''authorized_keys'' devant la clé publique concernée
+
dans le fichier ''~/.ssh/authorized_keys'' devant la clé publique concernée
 +
 
 +
  ex :
 +
  from="123.45.678.91,192.168.0.1,francky.example.com" ssh-rsa AAAAB3NzaC1kc3MAAACBANDbnl....
 +
 
  
 
cf [https://blog.tinned-software.net/restrict-ssh-logins-using-ssh-keys-to-a-particular-ip-address https://blog.tinned-software.net/restrict-ssh-logins-using-ssh-keys-to-a-particular-ip-address]
 
cf [https://blog.tinned-software.net/restrict-ssh-logins-using-ssh-keys-to-a-particular-ip-address https://blog.tinned-software.net/restrict-ssh-logins-using-ssh-keys-to-a-particular-ip-address]
Ligne 30 : Ligne 35 :
 
==définir le dernier jour du mois==
 
==définir le dernier jour du mois==
  
00 00 28-31 * * [ `/bin/date +\%d` -gt `/bin/date +\%d -d "1 day"` ] &&  echo "FIN DE MOIS...."
+
  00 00 28-31 * * [ `/bin/date +\%d` -gt `/bin/date +\%d -d "1 day"` ] &&  echo "FIN DE MOIS...."
  
  
Ligne 37 : Ligne 42 :
 
dont voici la copie ici :  
 
dont voici la copie ici :  
  
*[[DOC:Crontab|Crontab sous Linux]]
+
*[[DOC:UNIX:Crontab|Crontab sous Linux]]
 
 
=Recettes de cuisine & commandes utiles=
 
 
 
==Comment dire à linux qu'un disque (LUN SAN) a changer de taille ? ==
 
 
 
la commande a lancer est :
 
 
 
  '''# blockdev --rereadpt /dev/sdx'''
 
  (x = lettre associée au LUN)
 
 
 
  # dmesg
 
  SCSI device sdc: drive cache: write back w/ FUA
 
  '''sdc: detected capacity change from 42949672960 to 214748364800'''
 
  sdc: sdc1
 
  SCSI device sdc: 419430400 512-byte hdwr sectors (214748 MB)
 
  sdc: Write Protect is off
 
  sdc: Mode Sense: a5 00 10 08
 
 
 
  # fdisk -l /dev/sdx
 
  Disk /dev/sdx: 214.7 GB, '''214748364800''' bytes
 
  255 heads, 63 sectors/track, 26108 cylinders
 
  Units = cylinders of 16065 * 512 = 8225280 bytes
 
  Device Boot      Start        End      Blocks  Id  System
 
  /dev/sdc1              1      26108  209712478+  8e  Linux LVM
 
 
 
 
 
Puis, il faut rescanner les chemins, soit avec en lancant simplement multipath soit en utilisant le démon multipathd
 
 
 
  # multipathd -k"resize multipath mpathX"
 
 
 
==Comment zipper (ou traiter) un ensemble de fichiers contenant des caractères blancs dans le nom ?==
 
 
 
la commande magique :
 
 
 
  find <nom rép>  -name '*.pdf' -print | sed "s/'/\\\'/g" | xargs -I "{}" zip -9m "{}".zip "{}"
 
 
 
que fait cette commande ?
 
 
 
elle recherche à partir d'un répertoire donné tous les fichiers PDF, affiche leurs noms, protège le caractère ' ' s'il y a lieu et ZIP le fichier en compression maximale
 
 
 
petite variante :
 
 
 
  find . -mtime +365 -name '*.pdf' -print | sed "s/'/\\\'/g" | xargs -I "{}" zip -9m "{}".zip "{}"
 
 
 
idem que précédemment, mais ne prend que les fichiers modifiés il y à plus d'un an à partir du répertoire courant
 
 
 
==Comment supprimer les sous dossiers vides d'un répertoire ==
 
 
 
  find /symlnks/io/jobs/workflows/wkftwist -depth -mindepth 2 -type d -empty  -mtime +1  -print  | xargs rmdir
 
 
 
recherche tous les sous dossiers (-type d )  vides (-empty) modifiés il y a plus d'un jour  (-mtime +1) en ne prenant en compte qu'à partir du 2è niveau (-depth -mindepth 2)
 
 
 
==Commande equivalente à un "tree size" par répertoire ==
 
 
 
ex : trouver la taille des dossiers .trash" de MisTRAL
 
 
 
  du -k `find /mnt/nfsshare/6.0/MiSTRAL/raid -maxdepth 2 -name '*.trash' -type d  ` | perl -ni -e '$i += $_ ; END {printf "%.02f Mo" , $i/1024/1024 ."\n"}'
 
 
 
== Libération du répertoire c:\Windows\winsxs sous windows 2008 R2 server (utilisé pour MAJ système) ==
 
 
 
 
 
:* commande à lancer dans une fenêtre "DOS"  :
 
 
 
  c:\> dism /online /cleanup-image /spsuperseded
 

Version actuelle datée du 6 mai 2020 à 09:11

Accueil SysAdmin Hobbies                  

SSH

restriction d'accès pour une clé publique partagée

Il est possible de restreindre l'accès à un serveur qui dispose d'une clé SSL publique partagée (authorized_keys). On peut donc autoriser l'accès en utilisant cette clé uniquement à partir d'une liste d'adresses IP sources données.

Il suffit d'ajouter

 from="liste IP,IP2,IP3 etc ..."

dans le fichier ~/.ssh/authorized_keys devant la clé publique concernée

 ex : 
 from="123.45.678.91,192.168.0.1,francky.example.com" ssh-rsa AAAAB3NzaC1kc3MAAACBANDbnl....


cf https://blog.tinned-software.net/restrict-ssh-logins-using-ssh-keys-to-a-particular-ip-address

Optimiser Linux

Adapter vm.swap, vm.swappiness pour éviter des I/O Disk inutiles

 $ sudo sysctl -w vm.swappiness=0
 $ sudo echo 'vm.swappiness=0' >>  /etc/sysctl.conf
 $ sudo sysctl -p

Ce paramètre est notamment très utile pour prolonger la durée de vie d'un disque SSD .... car on évite ainsi beaucoup d'I/O liées aux transfert de pages de/vers la swap

pour plus d'infos, cf ce site lonesysadmin.net

OH MY GOD WE ARE OUT OF RAM .... NON pratiquement jamais sous UNIX !!!!

ce site est très instructif sur comment linux gère sa mémoire ..... : that-ram-usage-youre-seeing-its-filesystem-cache

La crontab

définir le dernier jour du mois

 00 00 28-31 * * [ `/bin/date +\%d` -gt `/bin/date +\%d -d "1 day"` ] &&  echo "FIN DE MOIS...."


pour plus d'infos, cf ce site fr.wikipedia.org/wiki/Crontab

dont voici la copie ici :