6 votes

Comment désinstaller Tuxera NTFS ?

Je voulais supprimer le support NTFS que j'ai installé en utilisant Tuxera NTFS. Quand j'ai vérifié dans mon panneau de préférences, l'option semble avoir été grisée. Comment le désinstaller maintenant ?entrez ici une description de l'image

J'ai essayé de le désactiver mais le "Désinstaller Tuxera NTFS" était toujours gris.

En cours d'exécution - macOS 10.12

9voto

grg Points 181593

Le bouton de désinstallation exécute le script suivant, situé à

/Library/Filesystems/fusefs_txantfs.fs/Contents/Resources/Support/uninstall-package.sh

#!/bin/bash

if [ "$0" != "/bin/uninstall-for-real" ]; then
    echo "Réexécution du script à partir de la mémoire."
    /bin/bash -c "`cat \"$0\"`" "/bin/uninstall-for-real" "$@"; exit $?
else
    echo "Exécution en mémoire activée."
fi

NOM_DU_DRIVER="Tuxera NTFS"
NOM_DU_PAQUET="TuxeraNTFS"
NOM_DU_PAQUET_COMPAT="TuxeraNTFS_compat"
ID_DU_PAQUET="com.tuxera.pkg.Tuxera_NTFS"
ID_DU_PAQUET_COMPAT="com.tuxera.pkg.Tuxera_NTFS_compat"
NOM_DU_BUNDLE_FS="fusefs_txantfs"
REP_BUNDLE_FS="/Library/Filesystems/${NOM_DU_BUNDLE_FS}.fs"
REP_COMPAT_BUNDLE_FS="/System/Library/Filesystems/${NOM_DU_BUNDLE_FS}.fs"
REP_PREFERENCE_PANE="/Library/PreferencePanes/${NOM_DU_DRIVER}.prefPane"
REP_STARTUP_ITEMS="/Library/StartupItems/${NOM_DU_PAQUET}UnmountHelper"
REP_DISK_MANAGER="/Applications/Tuxera Disk Manager.app"
CHEMIN_ANCIEN_BUNDLE_RECEIPT="/Library/Receipts/${NOM_DU_PAQUET}.pkg"
CHEMIN_ANCIEN_RECEIPT="/${CHEMIN_ANCIEN_BUNDLE_RECEIPT}/Contents/Archive.bom"
CHEMIN_COMPAT_BUNDLE_RECEIPT="/Library/Receipts/${NOM_DU_PAQUET_COMPAT}.pkg"
CHEMIN_COMPAT_RECEIPT="/${CHEMIN_COMPAT_BUNDLE_RECEIPT}/Contents/Archive.bom"
CHEMIN_NOUVEAU_RECEIPT="/var/db/receipts/${ID_DU_PAQUET}.bom"
CHEMIN_PLIST_NOUVEAU_RECEIPT="/var/db/receipts/${ID_DU_PAQUET}.plist"
CHEMIN_COMPAT_NOUVEAU_RECEIPT="/var/db/receipts/${ID_DU_PAQUET_COMPAT}.bom"
CHEMIN_PLIST_COMPAT_NOUVEAU_RECEIPT="/var/db/receipts/${ID_DU_PAQUET_COMPAT}.plist"
REP_SUPPORT_APPLICATION="/Library/Application Support/Tuxera NTFS"
CHEMIN_RECU_BAK="${REP_SUPPORT_APPLICATION}/Receipt.bom"
CHEMIN_RECU_COMPAT_BAK="${REP_SUPPORT_APPLICATION}/Receipt_compat.bom"

erreur() {
    echo "Il y a eu des erreurs... Abandon."
    exit 1
}

verifierErreurs() {
    _ERRVAL=$1
    if [ ! "${_ERRVAL}" -eq 0 ]; then erreur; fi
}

EUID_REEL=${EUID}
if [ ${EUID_REEL} -ne 0 ]; then
    echo "ERREUR : Pas en cours d'exécution en tant que root! (UID: ${UID} EUID: ${EUID})"
    exit 100
fi

if [ -f "${CHEMIN_NOUVEAU_RECEIPT}" ]; then
    RECEIPT="${CHEMIN_NOUVEAU_RECEIPT}"
elif [ -f "${CHEMIN_ANCIEN_RECEIPT}" ]; then
    RECEIPT="${CHEMIN_ANCIEN_RECEIPT}"
elif [ -f "${CHEMIN_RECU_BAK}" ]; then
    RECEIPT="${CHEMIN_RECU_BAK}"
else
    echo "Aucun des chemins de réception possibles n'a été trouvé... Abandon."
    exit 101
fi

if [ -f "${CHEMIN_COMPAT_NOUVEAU_RECEIPT}" ]; then
    COMPAT_RECEIPT="${CHEMIN_COMPAT_NOUVEAU_RECEIPT}"
elif [ -f "${CHEMIN_COMPAT_RECEIPT}" ]; then
    COMPAT_RECEIPT="${CHEMIN_COMPAT_RECEIPT}"
elif [ -f "${CHEMIN_RECU_COMPAT_BAK}" ]; then
    COMPAT_RECEIPT="${CHEMIN_RECU_COMPAT_BAK}"
else
    COMPAT_RECEIPT=""
fi

# Stocker la liste des fichiers à supprimer en mémoire (pour ne pas dépendre de
# la lecture de fichiers que nous pourrions supprimer pendant le processus).
FICHIERS_A_SUPPRIMER="$(sh -c "lsbom -fls \"${RECEIPT}\" | colrm 1 1 | sed \"s/^/\\\"/\" | sed \"s/$/\\\"/\"")"

if [ ! -z "${COMPAT_RECEIPT}" ]; then
    FICHIERS_A_SUPPRIMER="${FICHIERS_A_SUPPRIMER} $(sh -c "lsbom -fls "${COMPAT_RECEIPT} | colrm 1 1 | sed \"s/^/\\\"/\" | sed \"s/$/\\\"/\"")"
fi

# Retirer tous les attributs uchg des fichiers installés. Si présent, cet attribut
# empêchera la suppression des fichiers installés.
# (Pas besoin de vérifier la valeur de retour de chflags car nous voulons tenter la suppression
# de toute façon si chflags échoue.)  

chflags -R nouchg "${REP_BUNDLE_FS}"
if [ -d "${REP_COMPAT_BUNDLE_FS}" ]; then
    chflags -R nouchg "${REP_COMPAT_BUNDLE_FS}"
fi
chflags -R nouchg "${REP_PREFERENCE_PANE}"
chflags -R nouchg "${REP_STARTUP_ITEMS}"
chflags -R nouchg "${REP_DISK_MANAGER}"
sh -c "echo '${FICHIERS_A_SUPPRIMER}' | xargs chflags -R nouchg"
if [ -d "${CHEMIN_ANCIEN_BUNDLE_RECEIPT}" ]; then
    chflags -R nouchg "${CHEMIN_ANCIEN_BUNDLE_RECEIPT}"
fi
if [ -d "${CHEMIN_COMPAT_BUNDLE_RECEIPT}" ]; then
    chflags -R nouchg "${CHEMIN_COMPAT_BUNDLE_RECEIPT}"
fi
if [ -f "${CHEMIN_NOUVEAU_RECEIPT}" ]; then
    chflags nouchg "${CHEMIN_NOUVEAU_RECEIPT}"
fi
if [ -f "${CHEMIN_PLIST_NOUVEAU_RECEIPT}" ]; then
    chflags nouchg "${CHEMIN_PLIST_NOUVEAU_RECEIPT}"
fi
if [ -f "${CHEMIN_COMPAT_NOUVEAU_RECEIPT}" ]; then
    chflags nouchg "${CHEMIN_COMPAT_NOUVEAU_RECEIPT}"
fi
if [ -f "${CHEMIN_PLIST_COMPAT_NOUVEAU_RECEIPT}" ]; then
    chflags nouchg "${CHEMIN_PLIST_COMPAT_NOUVEAU_RECEIPT}"
fi
if [ -d "${REP_SUPPORT_APPLICATION}" ]; then
    # Le reçu de sauvegarde se trouve dans ce répertoire, donc nous devons faire cela dans le bon
    # ordre.
    chflags nouchg "${REP_SUPPORT_APPLICATION}"
fi
if [ -f "${CHEMIN_RECU_BAK}" ]; then
    chflags nouchg "${CHEMIN_RECU_BAK}"
fi
if [ -f "${CHEMIN_RECU_COMPAT_BAK}" ]; then
    chflags nouchg "${CHEMIN_RECU_COMPAT_BAK}"
fi

# Supprimer les fichiers installés.

echo "Suppression des fichiers du paquet..."

sh -c "echo '${FICHIERS_A_SUPPRIMER}' | xargs rm -fv"
verifierErreurs $?

if [ -d "${REP_BUNDLE_FS}" ]; then
    echo "Suppression du répertoire du bundle du système de fichiers..."

    rm -rfv "${REP_BUNDLE_FS}"
    verifierErreurs $?
fi

if [ -d "${REP_COMPAT_BUNDLE_FS}" ]; then
    echo "Suppression du répertoire du bundle de fichier système de compatibilité..."

    rm -rfv "${REP_COMPAT_BUNDLE_FS}"
    verifierErreurs $?
fi

if [ -d "${REP_PREFERENCE_PANE}" ]; then
    echo "Suppression du répertoire du panneau de préférences ${NOM_DU_DRIVER}..."

    rm -rfv "${REP_PREFERENCE_PANE}"
    verifierErreurs $?
fi

if [ -d "${REP_STARTUP_ITEMS}" ]; then
    echo "Suppression du répertoire du gestionnaire de démarrage ${NOM_DU_DRIVER}..."

    rm -rfv "${REP_STARTUP_ITEMS}"
    verifierErreurs $?
fi

if [ -d "${REP_DISK_MANAGER}" ]; then
    echo "Suppression du répertoire du gestionnaire de disque ${NOM_DU_DRIVER} Tuxera..."

    rm -rfv "${REP_DISK_MANAGER}"
    verifierErreurs $?
fi

# Supprimer tous les fichiers de reçu du paquet.

if [ -d "${CHEMIN_ANCIEN_BUNDLE_RECEIPT}" ]; then
    echo "Suppression du reçu du paquet..."

    rm -rfv "${CHEMIN_ANCIEN_BUNDLE_RECEIPT}"
    verifierErreurs $?
fi

if [ -d "${CHEMIN_COMPAT_BUNDLE_RECEIPT}" ]; then
    echo "Suppression du reçu de compatibilité du paquet..."

    rm -rfv "${CHEMIN_COMPAT_BUNDLE_RECEIPT}"
    verifierErreurs $?
fi

if [ -f "${CHEMIN_NOUVEAU_RECEIPT}" ]; then
    echo "Suppression du fichier bom du reçu du paquet..."

    rm -fv "${CHEMIN_NOUVEAU_RECEIPT}"
    verifierErreurs $?
fi

if [ -f "${CHEMIN_PLIST_NOUVEAU_RECEIPT}" ]; then
    echo "Suppression du fichier plist du reçu du paquet..."

    rm -fv "${CHEMIN_PLIST_NOUVEAU_RECEIPT}"
    verifierErreurs $?
fi

if [ -f "${CHEMIN_COMPAT_NOUVEAU_RECEIPT}" ]; then
    echo "Suppression du fichier bom du reçu de compatibilité du paquet..."

    rm -fv "${CHEMIN_COMPAT_NOUVEAU_RECEIPT}"
    verifierErreurs $?
fi

if [ -f "${CHEMIN_PLIST_COMPAT_NOUVEAU_RECEIPT}" ]; then
    echo "Suppression du fichier plist du reçu de compatibilité du paquet..."

    rm -fv "${CHEMIN_PLIST_COMPAT_NOUVEAU_RECEIPT}"
    verifierErreurs $?
fi

if [ -f "${CHEMIN_RECU_BAK}" ]; then
    echo "Suppression du fichier bom de reçu de sauvegarde..."

    rm -fv "${CHEMIN_RECU_BAK}"
    verifierErreurs $?
fi

if [ -f "${CHEMIN_RECU_COMPAT_BAK}" ]; then
    echo "Suppression du fichier bom de reçu de compatibilité de sauvegarde..."

    rm -fv "${CHEMIN_RECU_COMPAT_BAK}"
    verifierErreurs $?
fi

if [ -d "${REP_SUPPORT_APPLICATION}" ]; then
    echo "Tentative de suppression du répertoire de support..."

    rmdir "${REP_SUPPORT_APPLICATION}"
    # Cela échouera s'il y a d'autres fichiers à l'intérieur, mais ce n'est pas grave.
fi

echo "Terminé."
exit 0

-1voto

donthan Points 1

Chemin incorrect dans certaines versions, vous pouvez donc modifier comme ceci :

sudo /Bibliothèque/Systèmes de fichiers/tuxera_ntfs.fs/Contenu/Ressources/Support/désinstaller forfait.sh

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X