1 votes

'tmutil listbackups' ne fonctionne pas avec tmux dans Mojave

J'ai essayé de dresser la liste des sauvegardes antérieures de la TM tout en fonctionnant dans un fichier tmux mais la solution décrite dans cette question ne semble plus fonctionner sur MacOS Mojave :

root@nomi ~> tmutil listbackups
The operation could not be completed because tmutil could not access
private application data on the backup disk. Use the Privacy tab
in the Security and Privacy preference pane to add Terminal to the
list of applications which can access Application Data.

J'ai essayé d'accorder Terminal l'accès à mes données :

enter image description here

mais cela ne fonctionne pas. Alors comment faire pour lister/supprimer mes anciennes sauvegardes dans Mojave si je lance l'interpréteur de commandes dans tmux ?

1voto

Maxxer Points 136

Vous devez exécuter la commande à l'intérieur de Terminal sans aucune ancêtre autre que le programme lui-même : ce n'est pas screen ou tmux ou tout autre assistant de terminal.

Dans le cas contraire, le programme appelant sera le programme assistant et non Terminal lui-même, et vous devrez ajouter ce assistant à la Vie privée de MacOS.


EDIT : ajout de l'info pstree

C'est le cas, au moins pour tmux parce qu'il crée un autre processus qui est no un enfant de iTerm/Terminal. Avec pstree Je constate ce qui suit :

-+= 00001 root /sbin/launchd
...
 | |-+= 12748 maxxer /Applications/iTerm.app/Contents/MacOS/iTerm2 --server login -fp maxxer
 | | \-+= 12749 root login -fp maxxer
 | |   \-+= 12750 maxxer -zsh
 | |     \--= 14144 maxxer tmux
...
 |-+= 14146 maxxer tmux
 | \-+= 14147 maxxer -zsh
 |   \--= 14170 root top
 |--= 14212 maxxer /System/Library/Frameworks/CoreServices.framework/Frameworks/Metadata.framework/Versions/A/Support/mdworker_shared -s mdworker -c MDSImporterWorker -m com.apple.mdworker.shared

PID 14144 est tmux lancé dans iTerm2, tandis que 14146 est la valeur réelle de la tmux programme en cours d'exécution top dans la première coquille

0voto

2bits Points 1

J'ai rencontré cette erreur en essayant d'exécuter

/usr/bin/tmutil dernière sauvegarde

via Apple Remote Desktop (ARD) sur mon iMac vers les clients iMac Mojave.

J'ai constaté que l'ajout de ARDAgent.app (de /System/Library/CoreServices/RemoteManagement/)

à l'accès intégral au disque (sous Sécurité et confidentialité > Confidentialité) sur l'iMac cible du client - cela a fonctionné.

De la même manière, la présence de SSHD dans . Sécurité et confidentialité > Onglet Confidentialité > Accès intégral au disque permettra d'exécuter la commande via SSH depuis mon iMac vers un iMac client. (SSHD sera présent si vous avez activé SSH dans Partage).

Il est intéressant de noter que sur l'iMac client lui-même, l'exécution /usr/bin/tmutil latestbackup ne fonctionne pas si Terminal n'est pas ajouté à Privacy. Mais la même commande exécutée depuis mon iMac vers l'iMac cible via SSH ou ARD fonctionnera, même si Terminal n'est pas ajouté à la confidentialité de l'iMac client. (Tant que ARDAgent et SSHD sont ajoutés à la confidentialité sur le client).

Il semble donc que vous puissiez exécuter tmutil "sous les auspices" d'ARDAgent ou de SSHD sans avoir à ajouter Terminal à Privacy.

Je suis sûr que tout cela peut être expliqué en termes d'appelant et d'assistant, etc. (et je suis reconnaissant à la réponse ci-dessus d'avoir résolu mon problème).

D'ailleurs, si vous suivez ce fil : https://macscripter.net/viewtopic.php?id=46620

Dans un cas similaire, l'ajout d'osascript à Privacy a permis de résoudre le problème.

0voto

Bernhard Fürst Points 101

Ajouter tmux à la Accès à l'intégralité du disque dans Préférences système > Sécurité et confidentialité > Confidentialité. Vous pouvez utiliser la touche + pour ouvrir la boîte de dialogue de sélection de fichier, puis saisir shift + commande + G pour ouvrir la boîte de dialogue de sélection de fichier, puis saisir shift + commande + G pour ouvrir la boîte de dialogue de sélection de fichier. Aller au dossier entrée. Entrez le chemin dans lequel tmux est installé, par exemple /usr/local/bin , cliquez Aller et choisissez tmux dans la liste des fichiers. Il peut s'agir d'un simple lien symbolique, ce qui n'est pas grave.

Fermer toutes les sessions / processus tmux ouverts. Les nouvelles sessions tmux devraient maintenant avoir un accès complet au disque.

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