Je comprends que /proc
Le système de fichiers reflète la sortie de divers processus. Malheureusement, j'ai un propriétaire (romdump
) binaire qui s'attend à ce que la table de montage apparaisse sous la forme /proc/mtd
, alors que mon appareil Android semble le sortir sous la forme /proc/mounts
.
J'ai essayé de créer un lien symbolique, mais cela ne fonctionne clairement que pour les fichiers ou répertoires réels. Comment puis-je tromper ce binaire pour lire la sortie de /proc/mounts
au lieu de /proc/mtd
?
Réponse acceptée :
La façon la plus simple de le faire serait de changer le binaire :
sed s-/proc/mtd-/tmp/mntx- < romdump > romdump.new
ln -s /proc/mounts /tmp/mntx
./romdump.new
L'astuce ici, puisque vous éditez un binaire, est de vous assurer que la chaîne d'origine /proc/mtd
a la même longueur que la nouvelle chaîne /tmp/mntx
, afin que vous ne modifiiez pas la taille ou l'emplacement de quoi que ce soit dans le binaire.
Ce n'est pas infaillible - cela ne fonctionnera pas si le binaire construit le nom du chemin par morceaux plutôt que d'utiliser une chaîne fixe. Mais il est susceptible de faire l'affaire.