Suppression des chemins de fichiers des directives TEXTE dans les binaires Go
Lors de la construction de binaires Go à l'aide de go build, on peut remarquer que l'exécutable résultant contient un fichier chemins dans son code assembleur. La suppression de ces informations peut être souhaitable pour des raisons de sécurité ou de confidentialité.
Utilisation des indicateurs -trimpath
Pour supprimer les chemins de fichiers des directives TEXT dans les binaires Go, l'indicateur -trimpath peut être utilisé. Cet indicateur nous permet de spécifier un préfixe à supprimer des chemins des fichiers sources enregistrés.
Pour utiliser cet indicateur, ajoutez-le aux arguments -gcflags et -asmflags de la commande go build. Par exemple :
CGO_ENABLED=0 go build -v -a -ldflags="-w -s" \ -gcflags=-trimpath=/Users/myuser/dev/go/src \ -asmflags=-trimpath=/Users/myuser/dev/go/src \ -o ./fooapi spikes/mongoapi.go
Cette commande supprimera le préfixe spécifié des chemins de fichiers dans l'exécutable résultant.
Utilisation de l'outil strip
Le L'outil strip peut également être utilisé pour supprimer les symboles des binaires ELF, y compris les chemins de fichiers. Cependant, son utilisation n'est pas recommandée avec les binaires Go, car cela peut entraîner des exécutables cassés ou un comportement inattendu.
Plus d'informations
L'indicateur -trimpath est un plus méthode fiable et cohérente pour supprimer les chemins de fichiers des binaires Go. Il est également pris en charge par la chaîne d'outils Go, fournissant une solution stable et efficace.
En utilisant l'indicateur -trimpath, vous pouvez générer des binaires Go qui ont réduit les informations de chemin de fichier, améliorant ainsi la sécurité et la confidentialité.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!