User Tools

Site Tools


operating_systems:linux:debian:chmod_rescue

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
operating_systems:linux:debian:chmod_rescue [2012/12/07 11:15] tretoperating_systems:linux:debian:chmod_rescue [2013/07/24 07:15] (current) – [Prérequis] jzaehrin
Line 7: Line 7:
 Il est nécessaire d'avoir au moins un backup du système. Plus ce backup est proche de l'installation actuelle, plus la restauration des droits sera complète. Néanmoins, un backup proche de l'installation de base devrais suffire pour permettre un redémarrage du système. Il est nécessaire d'avoir au moins un backup du système. Plus ce backup est proche de l'installation actuelle, plus la restauration des droits sera complète. Néanmoins, un backup proche de l'installation de base devrais suffire pour permettre un redémarrage du système.
  
-Dans notre cas, le backup était une image complète de la carte flash (''dd if/dev/sdb of=~/backup.hdd'').+Dans notre cas, le backup était une image complète de la carte flash (''dd if=/dev/sdb of=~/backup.hdd'').
  
 ===== Sauvetage ===== ===== Sauvetage =====
  
-==== Montage du backup ====+==== Récupération des droits du backup ==== 
 + 
 +Il nous faut tout d'abord récupérer les droits de notre image de backup, en montant l'image comme un disque et en lisant les permissions de chaques fichiers.
  
 Création du point de montage : Création du point de montage :
Line 26: Line 28:
 > ''(parted) **print**'' > ''(parted) **print**''
 > ''Model:  (file)'' > ''Model:  (file)''
-> ''Disk ~/backup/2012_11_05_cgsa.hdd: 4000317440B''+> ''Disk ~/backup.hdd: 4000317440B''
 > ''Sector size (logical/physical): 512B/512B'' > ''Sector size (logical/physical): 512B/512B''
 > ''Partition Table: msdos'' > ''Partition Table: msdos''
Line 35: Line 37:
 > ''(parted) **quit**'' > ''(parted) **quit**''
  
 +L'information qui nous intéresse est la position ''Start'' de la partition (//31744//).
 +
 +On peut alors monter notre partition :
 +
 +//root#// ''mount -o loop,rw,offset=31744 ~/backup.hdd /mnt/cf.bck''
 +
 +Pour être sûr que les chemins soient correctes, on se ''chroot'' dans le backup :
 +
 +//root#// ''chroot /mnt/cf.bck''
 +
 +On lit alors les droits de chaques fichiers de notre backup et l'on crée un script qui réinitialisera notre système :
 +
 +//root@chroot#// ''find /mnt/cf.bck -exec stat --format "chmod %a /mnt/cf%n" {} \; > /restoreperms.sh''
 +
 +Comme l'on ne pourra probablement pas se chrooter dans le système, on rajoute un préfix au format de ''stat'' pour que tous nos chemins commence par ///mnt/cf//.
 +
 +On peur alors sortir du chroot :
 +
 +//root@chroot#// ''exit''
 +
 +==== Restauration des droits ====
 +
 +Création du point de montage pour le système :
 +
 +//root#// ''mkdir /mnt/cf''
 +
 +Montage du système :
 +
 +//root#// ''mount /dev/sdb1 /mnt/cf''
 +
 +Application des droits :
 +
 +//root#// ''bash /mnt/cf.bck/restoreperms.sh''
 +
 +On devrait pouvoir désormais démarrer sur le système.
 +
 +==== Réparations des programmes ====
 +
 +http://sysadminnotebook.blogspot.ch/2012/06/how-to-reset-folder-permissions-to.html
 +
 +===== Liens =====
 +
 +http://www.andremiller.net/content/mounting-hard-disk-image-including-partitions-using-linux
 +
 +http://sysadminnotebook.blogspot.ch/2012/06/how-to-reset-folder-permissions-to.html
 +
 + 
operating_systems/linux/debian/chmod_rescue.txt · Last modified: 2013/07/24 07:15 by jzaehrin