问题描述
我正在使用Ubuntu 12.04。我按照网站上的指示执行了操作,但出现此错误:
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"
我该怎么办才能安装它?
最佳答案
只需打开终端并执行以下行:
sudo chmod -R 777 "/home/{youruser}/.config/sublime-text-2/Installed Packages/"
并尝试再次安装程序包控件。
次佳答案
最简单的方法是简单地使用sudo权限运行崇高的文本。
我只是用ctrl
+ alt
+ t
弹出一个终端
确保您是目录的所有者,而不是root
sudo chown -R {youruser}:{youruser} "/home/{youruser}/.config/sublime-text-2"
sudo sublime
之后,使用ctrl
+ `
打开sublime文本控制台,然后输入
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'
初始安装后,您可以正常运行sublime文本。
第三种答案
我认为chmod -R 777
-ing是解决此问题的最佳方法。当然,它可以让您安装软件包,但我认为任何人都不应养成只要write-access被拒绝都只打开权限闸门的习惯。在这种情况下,这确实没什么大不了的。我不认为您的sublime-text软件包文件夹具有较高的优先级,但是none-the-less进入允许所有人进行写访问的习惯可能会在以后导致问题,尤其是如果最终用户是新的* nix用户并且不知道他们为什么要更改权限。
(仅作说明:我正在运行sublime-text-3,但这没关系,因为这是权限问题,而不是sublime-text本身的问题)
就我而言,我有两个问题。
-
Sublime-Text已安装到正确的目录,但由root拥有。第一个也是显而易见的解决方案是
sudo chown -R username:username /home/username/.config/sublime-text-3
。这将目录的控制权还给了我。 -
我安装的权限以某种方式设置为不稳定。 (在某些时候,我一定做错了一些设置。那本来是可以的,或者是我忽然溜了一下,但是众所周知,我在总决赛周的睡眠不足的时候做些愚蠢的事情)。解决这个问题也很简单。
chmod -R 755 /home/username/.config/sublime-text-3/
。允许您写入目录,但不允许本不应该准备好的其他人写入该目录。除非您有意向所有人授予对目录的写访问权,否则您应该给予的最大权限是775
,它允许同一组中的其他用户写入该目录。
就像我之前说的,如果系统上的任何用户都可以写入sublime-text软件包文件夹,则不一定会成为问题。我本身没有看到任何实际的问题,但是养成完全制作write-able的习惯可能会导致错误,如果您不知道操作的后果,就会使系统面临漏洞。
进一步的参考:http://www.linux.com/learn/tutorials/309527-understanding-linux-file-permissions