저는 Windows 사용자이자 Ubuntu 및 DigitalOcean 초보자입니다. 다음 단계를 완료했습니다.
https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-12-04
그리고 나는 겪고 있어요
하지만 에서는 실패하고 있습니다 pip install django
.
OSError: [Errno 13] Permission denied: '/opt/myenv/build'
역 추적:
(myenv)jeffy@originaldjangster:~$ pip install django
Downloading/unpacking django
Cleaning up...
Exception:
Traceback (most recent call last):
File "/opt/myenv/local/lib/python2.7/site-packages/pip/basecommand.py", line 1 22, in main
status = self.run(options, args)
File "/opt/myenv/local/lib/python2.7/site-packages/pip/commands/install.py", l ine 278, in run
requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundl e=self.bundle)
File "/opt/myenv/local/lib/python2.7/site-packages/pip/req.py", line 1153, in prepare_files
location = req_to_install.build_location(self.build_dir, not self.is_downloa d)
File "/opt/myenv/local/lib/python2.7/site-packages/pip/req.py", line 218, in b uild_location
_make_build_dir(build_dir)
File "/opt/myenv/local/lib/python2.7/site-packages/pip/req.py", line 1527, in _make_build_dir
os.makedirs(build_dir)
File "/opt/myenv/lib/python2.7/os.py", line 157, in makedirs
mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/opt/myenv/build'
Storing debug log for failure in /home/jeffy/.pip/pip.log
디버그 로그:
jeffy@originaldjangster:~$ more /home/jeffy/.pip/pip.log
------------------------------------------------------------
/opt/myenv/bin/pip run on Tue Aug 5 14:45:38 2014
Downloading/unpacking django
Cleaning up...
Exception:
Traceback (most recent call last):
File "/opt/myenv/local/lib/python2.7/site-packages/pip/basecommand.py", line 122, in main
status = self.run(options, args)
File "/opt/myenv/local/lib/python2.7/site-packages/pip/commands/install.py", line 278, in run
requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
File "/opt/myenv/local/lib/python2.7/site-packages/pip/req.py", line 1153, in prepare_files
location = req_to_install.build_location(self.build_dir, not self.is_download)
File "/opt/myenv/local/lib/python2.7/site-packages/pip/req.py", line 218, in build_location
_make_build_dir(build_dir)
File "/opt/myenv/local/lib/python2.7/site-packages/pip/req.py", line 1527, in _make_build_dir
os.makedirs(build_dir)
File "/opt/myenv/lib/python2.7/os.py", line 157, in makedirs
mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/opt/myenv/build'
jeffy@originaldjangster:~$
영상:
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL:ALL) ALL
jeffy ALL=(ALL:ALL) ALL
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
# See sudoers(5) for more information on "#include" directives:
#includedir /etc/sudoers.d
문제 단계를 건너뛰고 까지 성공적으로 진행했는데 pip install gunicorn
, 이때 동일한 오류가 발생했습니다.
OSError: [Errno 13] Permission denied: '/opt/myenv/build'
참고: 지시에 따라 활성화된 virtualenv 내에서 이 작업을 수행하고 있습니다.
내가 도대체 뭘 잘못하고있는 겁니까? 도와 주셔서 감사합니다.
위의 내용이 나의 주요 문제입니다. 추가적으로 아래 사항도 답변이 쉬우시면 그렇게 해주세요. 위의 내용을 파악하자마자 취해야 할 단계는 다음과 같습니다.
또한 Python 2.7.6에서 Python 3.4.1(또는 사용 가능한 가장 높은 Ubuntu 호환 릴리스)로 업그레이드하는 방법도 알아야 합니다. Python은 이미 설치되어 있었습니다. 저는 설치하지 않았습니다.
3.4.1만 갖고 싶습니다. 나는 2.7과 3.4를 나란히 놓고 싶지 않습니다.
jeffy@originaldjangster:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.1 LTS
Release: 14.04
Codename: trusty
jeffy@originaldjangster:~$ python --version
Python 2.7.6
답변1
디지털 오션 지원:
따라서 사용자가 visudo에서 모든 명령을 실행할 수 있도록 설정되어 있는지 여부에 관계없이 모든 명령에 "sudo"를 추가해야 합니다.
Python의 경우 버전 2.7은 간단히 제거할 수 없습니다. Python 버전 3.xx를 사용하려면 python3 명령을 사용해야 합니다.
나:
그랬던 것 같습니다. "설치 방법" 가이드
https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-django-with-postgres-nginx-and-gunicorn
"pip" 명령 앞에 "sudo" 접두사가 없고 그래야 하는 것처럼 보입니다. 3.4도 이미 설치되어 있는 것 같습니다. 훌륭한.
업데이트
위의 내용으로는 충분하지 않은 것으로 나타났습니다. ipython을 설치하지만 설치하지 않습니다.virtualenv에서-- 디렉토리가 전혀 ipython
생성되지 않았습니다. /opt/jenv/bin
이렇게 설치하면 어차피 내 환경에서는 IPython을 시작하면 Python 3.4가 아닌 Python 2.7을 사용하게 된다. (시작할 때 말하는 내용입니다).
해결책은 virtualenv를 활성화한 다음 다음을 사용하여 설치하는 것입니다.virtualenv의씨:
sudo /opt/jenv/bin/pip install ipython
(이 없으면 작동하지 않는다는 점을 sudo
상기시켜 주십시오. 질문을 참조하십시오.) IPython은 이제 bin 디렉토리에 올바르게 설치되고 시작되면 Python 3.4를 사용하고 있다고 말합니다(virtualenv가 로 생성된 경우 -p /usr/bin/python3.4
).
것 같다이 지침변경해야합니다.