web-dev-qa-db-de.com

Die Paketsteuerung kann in Sublime Text 2 nicht installiert werden

Ich benutze Ubuntu 12.04. Ich habe getan, was auf der Website steht, habe aber folgenden Fehler erhalten:

import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); 
open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print 'Please restart Sublime Text to finish installation'
Traceback (most recent call last):

File "<string>", line 1, in <module>
IOError: [Errno 13] Permiso denegado: u'/home/housepc/.config/sublime-text-2/Installed Packages/Package Control.sublime-package'

permiso denegado : "permission denied" 

Was kann ich tun, um es zu installieren?

17
1Engels

Öffne einfach das Terminal und führe diese Zeile aus:

Sudo chmod -R 777 "/home/{youruser}/.config/sublime-text-2/Installed Packages/"

und versuchen Sie erneut, die Paketsteuerung zu installieren.

24
SoldierCorp

Die einfachste Methode besteht darin, mit Sudo-Privalenzen einfach nur erhabenen Text auszuführen.

Ich öffne gerade ein Terminal mit ctrl+alt+t

stellen Sie sicher, dass Sie der Eigentümer des Verzeichnisses sind und nicht root mit

Sudo chown -R {youruser}:{youruser}  "/home/{youruser}/.config/sublime-text-2"

Sudo sublime

Danach öffnen Sie die erhabene Textkonsole mit ctrl+` und betreten

import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print 'Please restart Sublime Text to finish installation'

Nach der Erstinstallation können Sie den erhabenen Text normal ausführen.

18
Goddard

Ich glaube nicht, dass chmod -R 777ing die beste Lösung für dieses Problem ist. Zugegeben, damit können Sie das Paket installieren, aber ich denke nicht, dass jemand die Gewohnheit haben sollte, nur die Floodgates für Berechtigungen zu öffnen, wenn der Schreibzugriff verweigert wird. In diesem Fall ist es wirklich keine große Sache. Ich glaube nicht, dass der Ordner für Ihre Pakete mit erhabenen Texten eine hohe Priorität hat, aber dennoch könnte es später Probleme bereiten, jedem Schreibzugriff zu gewähren, insbesondere wenn der Endbenutzer ein neuer * nix ist Benutzer und weiß nicht, warum sie Berechtigungen ändern.

(Nur als Anmerkung: Ich führe sublime-text-3 aus, aber das sollte keine Rolle spielen, da dies eine Berechtigungsfrage und keine Frage von sublime-text ist.)

In meinem Fall hatte ich zwei Probleme.

  1. Sublime-Text wurde im richtigen Verzeichnis installiert, gehörte aber root.

    Die erste und naheliegende Lösung war Sudo chown -R username:username /home/username/.config/sublime-text-3. Dies gab mir die Kontrolle über das Verzeichnis zurück.

  2. Die Berechtigungen für meine Installation wurden irgendwie auf etwas Wonky gesetzt. (Irgendwann muss ich sie falsch eingestellt haben. Was das gewesen wäre oder wann mir der Sinn gekommen wäre, aber ich war bekannt dafür, dumme Dinge zu tun, während ich in der letzten Woche unter Schlafmangel litt)

    Dies zu beheben ist ebenfalls einfach. chmod -R 755 /home/username/.config/sublime-text-3/. Damit können Sie in das Verzeichnis schreiben, aber nicht andere Personen, die noch nicht alle bereit sein sollten, dürfen dort schreiben. Sofern Sie nicht absichtlich jedem Schreibzugriff auf ein Verzeichnis gewähren möchten, sollten Sie höchstens 775 angeben, damit andere Benutzer in derselben Gruppe in dieses Verzeichnis schreiben können.

Wie ich bereits sagte, wird dies nicht unbedingt ein Problem sein, wenn ein Benutzer auf Ihrem System in den Ordner "sublime-text packages" schreiben kann. Ich sehe keine wirklichen Probleme damit an sich, aber die Gewohnheit, etwas vollständig beschreibbar zu machen, könnte zu einem Fehler führen, der Ihr System für Schwachstellen öffnet, wenn Sie die Konsequenzen Ihrer Handlungen nicht kennen.

Weitere Referenz: http://www.linux.com/learn/tutorials/309527-understanding-linux-file-permissions

8

Am einfachsten wäre es, den Ordner "Erhabener Text" beschreibbar zu machen:

Sudo chmod -R 777 "/home/{youruser}/.config/sublime-text-2/

oder für erhabenen Text 3:

Sudo chmod -R 777 "/home/{youruser}/.config/sublime-text-3/

Versuchen Sie dann erneut, die Paketsteuerung zu installieren.

1
TechyTimo

Stellen Sie außerdem sicher, dass Sie nicht in einem Proxy-Netzwerk sind. Ich konnte Package Control erst installieren, nachdem ich zu einem Nicht-Proxy-Netzwerk gewechselt war.

1

Versuchen Sie nach der Installation von sublime text: Sudo /usr/bin/subl

Dies funktionierte für sublime Text 3 unter Ubuntu 12.04

0
eloone