# Un ch’ti tuto pour commencer…

- Link: https://dolys.fr/forums/topic/un-chti-tuto-pour-commencer/
- Published: 2022-01-16T02:32:42+02:00
- Author: Old tired coder

Bonjour les gens, un blog hébergé dans le grand Nord Canadien, Ostie, Tabernacle&#8230; Je pense que [b]nam1962[/b] va me reconnaître&#8230; On s&rsquo;est vus en d&rsquo;autres lieux sur la toile, sur des forums plus ou moins infréquentables. Pour mon premier post ici, Milliard, je propose un [i]ch&rsquo;ti tuto[/i] qui sera peut-être bien utile pour tous ceux qui, dans un souci d&rsquo;interopérabilité, voudront par exemple copier des données à partir d&rsquo;un volume NTFS ou FAT vers un volume ext4. Si Windows ne peut pas lire les formats Linux, les OS basés Linux, eux, lisent les formats ms-dos/windows sans problème ou presque, et c&rsquo;est ce que nous allons voir : IMPORTANT : 1) COMMENCER PAR UNE BONNE SAUVEGARDE. La commande find est très puissante en raison de sa récursivité, alors méfiance. 2) NE JAMAIS LANCER UNE COMMANDE « chmod » AVEC LES PRIVILÈGES « su &#8211; » OU « sudo » ! En cas de mauvaise manip, les fichiers propriété « root » seraient chmodés eux aussi donc le système serait probablement cassé ou, pour le moins, vulnérable à des attaques diverses&#8230; 3) SE PLACER DANS LE DOSSIER À TRAITER. On peut préciser un chemin dans « find » mais je déconseille cette méthode pour des raisons de sécurité : [code]cd LeDossierAChmoder[/code] Les répertoires doivent toujours être exécutables, non parce que ce sont des scripts, mais parce que Linux interprète le bit « x » comme une autorisation de lister dans les fichiers de type « d » (directory). Donc, les 3 bits « ugo » doivent être impairs : [code]find . -type d -exec chmod 0755 {} \;[/code] Les fichiers ordinaires, en principe, sont non exécutables sauf dans les répertoires « bin » et « sbin ». Donc, les bits « ugo » seront pairs : [code]find . -type f -exec chmod 0644 {} \;[/code] Ces deux commandes « find » doivent être lancées dans cet ordre. En effet, les fichiers de type « d » ne feront correctement leur travail que s&rsquo;ils sont chmodés convenablement. Ces commandes sont particulièrement utiles lorsque l&rsquo;on restore des données qui ont été sauvegardées sur un volume NTFS ou FAT. En effet, NTFS « chmode » tous les fichiers en 777 et écrit peut-être n&rsquo;importe quoi dans le bit « s » (special). Ce bit est sans effet sur les fichiers non exécutables mais sur un fichier de type « d », « le Sticky Bit » (=1) ne permettra l&rsquo;effacement des fichiers qui en dépendent que par leur propriétaire. On pourra par exemple chmoder le dossier commun d&rsquo;un groupe : [code]chmod 1755 DossierDuGroupeToto[/code] Afin que Titi ne puisse pas eraser les fichiers de Tata ni ceux de Tutu, tout en lui permettant de les modifier si le bit « w » (=2) est présent dans « g ». Sur un script, ce bit aura pour effet de le maintenir en RAM, ce qui en principe est à éviter sur les bécanes modernes. Il s&rsquo;agit d&rsquo;un héritage UNIX qui date des débuts, vers 1970. Donc, mettre le bit « s » à zéro en chmodant, c&rsquo;est quand même plus propre. À noter que dans un volume NTFS, ces commandes ne retournent pas d&rsquo;erreur mais restent sans effet et qu&rsquo;il n&rsquo;existe pas de commande équivalente à « chmod » dans Windows.
