web-dev-qa-db-fra.com

Comment exécuter Visual Studio Code en tant que root

J'ai récemment installé l'éditeur de code Visual Studio. J'ai téléchargé le package .deb 32bit. Installé et exécuté normalement, mais lorsque j'ai essayé d'enregistrer un fichier dans le dossier de mon projet, il renvoie une autorisation refusée. Donc, je relance le code avec

Sudo code .

et ça revient

It is recommended to start vscode as a normal user.
To run as root, you must specify an alternate user data directory with the --user-data-dir argument.

J'ai cherché comment spécifier un répertoire de données d'utilisateur alternatif avec l'argument --user-data-dir mais je n'ai pas trouvé grand chose.

Alors, comment puis-je exécuter Visual Studio Code en tant que root dans Ubuntu 16.04?

edit: Je préférerais une solution qui évite de changer les permissions du répertoire.

edit2: répertoire du projet: /var/www/project (J'utilise Apache avec vhost)

32
wdarking

Il est très dangereux d’exécuter VScode en tant que root (comme c’est le cas de toute autre application). Cependant, vous devez absolument:

Vous devez spécifier le répertoire de données utilisateur à utiliser lors de l'exécution de vs code:

Sudo code --user-data-dir="~/.vscode-root"

Ensuite, depuis la fenêtre, vous pouvez ouvrir votre dossier de projet

Encore une fois: ce n'est pas recommandé. S'amuser.

Mise à jour de mai 2018

Pour tous ceux qui demandent pourquoi cela n'est pas recommandé, vous ne comprenez clairement pas pourquoi Sudo existe même. De cette question AskUbunt :

Cela va à l'encontre du modèle de sécurité en place depuis des années. Les applications sont conçues pour fonctionner avec une sécurité non administrative (ou en tant que simples mortels), vous devez donc élever leurs privilèges pour modifier le système sous-jacent. Par exemple, vous ne voudriez pas que la récente panne de Rhythmbox supprime tout votre répertoire/usr à cause d'un bogue. Ou cette vulnérabilité qui vient d'être publiée dans ProFTPD pour permettre à un attaquant d'obtenir un shell ROOT.

Il est recommandé, sur tout système d'exploitation, d'exécuter vos applications au niveau utilisateur et de laisser les tâches administratives à l'utilisateur root, uniquement au besoin.

Je ne dis pas que vous ne devriez jamais utiliser VSCode en tant que racine (bien que ce soit assez facile à éviter). Je vous dis que vous devez faire attention lorsque vous le souhaitez et connaître les risques.

La meilleure chose à faire est de copier un fichier restreint, de le modifier et de le copier à nouveau lorsque vous êtes absolument certain qu'il est terminé.

Également pour l'édition de fichiers sur lesquels votre utilisateur ne dispose pas d'autorisations, je recommanderais maintenant la réponse de Talha Junaid qui demande des autorisations chaque fois que vous souhaitez enregistrer un fichier. L'invite pour l'accès root n'existait pas lorsque j'ai écrit cette réponse.

40
zawata

Juste au cas où vous voudriez apporter des modifications à un seul fichier, je préférerais l’approche suivante.

  • Exécutez vs-code en tant qu'utilisateur régulier.
  • apporter des modifications au fichier
  • File -> Save ou appuyez sur Ctrl + S
  • vs-code apparaîtra erreur dans le coin en bas à droite en disant

    Échec de l'enregistrement de 'grub': autorisations insuffisantes. Sélectionnez 'Réessayer en tant qu'administrateur' pour réessayer en tant qu'administrateur.

    enter image description here

  • Cliquez sur Retry as Admin. Il demandera des informations d'identification d'administrateur

    enter image description here

  • Entrez les informations d'identification et profitez de la sauvegarde de fichiers avec vs-code.

7
Talha Junaid

Vous devez donner la permission à votre dossier HTML.

essayez-le dans votre terminal.

Sudo chmod -R 777 /var/www/html/
1
R_J