شبکه-اینترنت، سخت افزار-زیرساخت

عضو سازمان نظام صنفی و مشاور در حوزه شبکه-اینترنت، سخت افزار-زیرساخت

شبکه-اینترنت، سخت افزار-زیرساخت

عضو سازمان نظام صنفی و مشاور در حوزه شبکه-اینترنت، سخت افزار-زیرساخت

نحوه نصب python 2.7 و یا 3.3 بر روی CentOS

برای انجام آموزشهای مربوط به پردازش فوق سریع (High Performance Computing) طبق توصیه های متن درسی از یک لینوکس UBUNTU استفاده شده بود، منتهی بنا به دلایلی از کار با لینوکس فوق راضی نبودم، مهمترین مشکل آن عدم راحتی کار در terminal آن در مقایسه با CentOS که بیشتر از 5 سال است با نسخه های متعدد آن کار میکنم.


لذا برای آماده کردن یک سرور از نسخه 6.3 CentOS افتاده کردم.

همانطور که مطلع هستید، CentOS بر مبنای توزیع REDHAT ساخته شده است ( در اصل همان REDHAT است) بهمین دلیل تمرکز آن بیشتر بر امن بودن برنامه ها نسبت به آخرین ورژن بودن آنها است.


بر روی این توزیع، ورژن Python 2.6 می باشد که توصیه کلاس حداقل ورژن 2.7 است و برای این توزیع بسته RPM وجود نداشت یا من به آن دسترسی پیدا نکردم.


به همین دلیل از Source برنامه استفاده کردم.


نحوه کمپایل و تنظیمات آن به صورت زیر است.


Download and install Python 2.7.3

# wget http://python.org/ftp/python/2.7.3/Python-2.7.3.tar.bz2
# tar xf Python-2.7.3.tar.bz2
# cd Python-2.7.3
# ./configure --prefix=/usr/local # make && mak
ealtinstall

Download and install Python 3.3.0

# wget http://python.org/ftp/python/3.3.0/Python-3.3.0.tar.bz2
# tar xf Python-3.3.0.tar.bz2
# cd Python-3.3.0
# ./configure --prefix=/usr/local # make && mak
ealtinstall


استفاده از altinstall به جای install در نصب بالا الزامی است، به دلیل اینکه بعد از نصب برنامه از روی source بر روی سیستم دو ورژن مختلف از python خواهید داشت که این تداخل این دو ورژن مسئله ساز بوده و درست کردن آن دشوار است.

بعد از نصب برای python 2.7 در مسیر /usr/local/bin/python2.7/ و برای python 3.3 در مسیر /usr/local/bin/python3.3/ برنامه ها نصب خواهند شد در حالیکه همزمان در مسیر /usr/bin/python2.6/  و /usr/bin/python/ ورژن های قدیمی نصب می باشند.


Distribute یک چارچوب برای نصب برنامه های از Python Package Index فراهم میکند. هر مفسر Python به نسخه نصب شده Distribute خودش دارد.

برای هر یک از نسخه هایی که در بالا نصب کرده اید، می باید دستورات زیر را انجام دهید.

برای Python2.7

Download and install Distribute for Python 2.7

# wget http://pypi.python.org/packages/source/d/distribute/distribute-0.6.35.tar.gz
# tar xf distribute-0.6.35.tar.gz
# cd distribute-0.6.35
# python2.7 setup.py install

این کار اسکریپت /usr/local/bin/easy_install-2.7 را می سازد که برای نصب برنامه های Python از آن استفاده میکنیم. این اسکریپت برنامه ها را در مسیر  /usr/local/lib/python2.7/site-packages/  دانلود میکند
 و برای Python3.3

Download and install Distribute for Python 3.3

# wget http://pypi.python.org/packages/source/d/distribute/distribute-0.6.35.tar.gz
# tar xf distribute-0.6.35.tar.gz
# cd distribute-0.6.35
# python3.3 setup.py install

این کار اسکریپت /usr/local/bin/easy_install-3.3 را می سازد که برای نصب برنامه های Python از آن استفاده میکنیم. این اسکریپت برنامه ها را در مسیر  /usr/local/lib/python3.3/site-packages/  دانلود میکند.

اسکریپت easy-install برای نصب پکیج های مناسب python کاربرد دارد.

و نهایتا

کار با چندین نسخه از python دشوار و در اسکریپت نویسی به دلیل متفاوت بودن نگارش بعضی از دستورات در python خطا به وجود خواهد آورد.

کلا در لینوکس استفاده از برنامه ها توسط متغیرهای محیطی کنترل میشود. برای سناریوی ما راه حل ساده تری وجود دارد ما از Virtual Python Environment builder یا به سهولت virtualenv استفاده خواهیم کرد که این امکان را به ما میدهد تا Python را در یک محیط محصور شده (Sandbox-like environment) استفاده کنیم، این به خصوص برای حالتی که چندین پروژه هر کدام با وابستگی ها و نسخه های خودش باشد مناسب است.

Install and use virtualenv for Python 2.7

# easy_install-2.7 virtualenv
# virtualenv-2.7 --distribute someproject
New python executable in someproject/bin/python2.7
Also creating executable in someproject/bin/python
lling pip................done. # source somep
Installing distribute...................done.
Inst
aroject/bin/activate
(someproject)# python --version
Python 2.7.3
(someproject)#

Install and use virtualenv for Python 3.3

# easy_install-3.3 virtualenv
# virtualenv-3.3 --distribute otherproject
New python executable in otherproject/bin/python3.3
Also creating executable in otherproject/bin/python
ling pip................done. # source otherp
Installing distribute...................done.
Insta
lroject/bin/activate
(otherproject)# python --version
Python 3.3.0
(otherproject)#

مرجع: http://toomuchdata.com/2012/06/25/how-to-install-python-2-7-3-on-centos-6-2/
همانطور که اشاره شد، موارد فوق بر روی CentOS6.3 تست و انجام شده است.
نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد