মূল অ্যাক্সেস ছাড়াই পাইথন মডিউলগুলি কীভাবে ইনস্টল করবেন?


220

আমি কয়েকটি বিশ্ববিদ্যালয়ের ক্লাস নিচ্ছি এবং আমাকে একটি 'শিক্ষামূলক অ্যাকাউন্ট' দেওয়া হয়েছে, এটি একটি স্কুল অ্যাকাউন্ট যা আমি কাজটি করতে চাই। আমি আমার কম্পিউটারের নিবিড় নিবিড় নম্পি, ম্যাটপ্লটলিব, সেই মেশিনে স্কিপি কোডটি চালাতে চাই, তবে আমি এই মডিউলগুলি ইনস্টল করতে পারি না কারণ আমি কোনও সিস্টেম প্রশাসক নই।

আমি কীভাবে ইনস্টলেশন করতে পারি?


14
স্থানীয়ভাবে ইনস্টল করার জন্য আপনি যে প্যাকেজটি ইনস্টল করছেন সেটির জন্য আপনি setup.py এ --user বা --prefix দিতে পারেন। দেখুন পাইথন মডিউল জন্য alertnative ইনস্টলেশন
arunkumar

উত্তর:


306

বেশিরভাগ পরিস্থিতিতে সর্বোত্তম সমাধান হ'ল তথাকথিত "ব্যবহারকারী সাইট" অবস্থানের উপর নির্ভর করে ( বিশদটির জন্য পিইপি দেখুন) চালিয়ে:

pip install --user package_name

নীচে আমার আসল উত্তরের আরও একটি "ম্যানুয়াল" উপায় রয়েছে, উপরের সমাধানটি যদি আপনার পক্ষে কাজ করে তবে আপনাকে এটি পড়ার দরকার নেই।


ইজি_ইনস্টল দিয়ে আপনি এটি করতে পারেন:

easy_install --prefix=$HOME/local package_name

যা ইনস্টল করা হবে

$HOME/local/lib/pythonX.Y/site-packages

('স্থানীয়' ফোল্ডারটি একটি সাধারণ নাম যা অনেকে ব্যবহার করেন তবে অবশ্যই আপনি যে কোনও ফোল্ডারে লেখার অনুমতি পেয়েছেন তা নির্দিষ্ট করতে পারেন)।

আপনাকে ম্যানুয়ালি তৈরি করতে হবে

$HOME/local/lib/pythonX.Y/site-packages

এবং এটি আপনার PYTHONPATHপরিবেশ পরিবর্তনশীলতে যুক্ত করুন (অন্যথায় easy_install অভিযোগ করবে - XY এর সঠিক মান খুঁজে পেতে একবারে উপরের কমান্ডটি চালাও)।

আপনি যদি ব্যবহার না করে থাকেন তবে easy_installউপসর্গের বিকল্পটি সন্ধান করুন, বেশিরভাগ ইনস্টল স্ক্রিপ্ট আপনাকে একটি নির্দিষ্ট করতে দেয়।

পিপ দিয়ে আপনি ব্যবহার করতে পারেন:

pip install --install-option="--prefix=$HOME/local" package_name

1
অজগর যদি না থাকে pipএবং easy_installউপলব্ধ না হয় তবে কী হবে ?
গিরার্ডি

ইনস্টলেশন ঠিকঠাক হয়ে গেল (পাইপ পদ্ধতি), তবে প্যাকেজ_নাম আমদানি করা কাজ করছে না। আমার কি কিছু কনফিগারেশন পরিবর্তন / যুক্ত করতে হবে? এছাড়াও ইনস্টলেশনটি কপি করা হয়েছিল (ফোল্ডার অনুসারে)?
ইডোদা

2
//, @AnotherDayAnotherRob, এটি একটি ভাল প্রশ্নের মতো মনে হচ্ছে ।
নাথান বাসানিজ

2
উত্তরটি আপডেট করার এবং --userনির্দেশকে শীর্ষে রাখার জন্য এটি বোধগম্য হতে পারে :) :)
ভ্যাসিলিনোভিকভ

1
@ গিরার্ডি যদি আপনি এসআরসি থেকে স্থানীয় দির / মাইপাইথন / তে পাইথন ইনস্টল করেন তবে প্রথমে এই স্থানে পাইপ ইনস্টল করা কার্যকর হবে: উইজেট - নন-চেক-সার্টিফিকেট বুটস্ট্র্যাপ.পিপ্পা.আইও / বিজেট-পিপিপিপি -ও - | / মাই_পাইথন / বিন / পাইথন - তারপরে আপনি পিপ + উপসর্গ সহ অন্যান্য মডিউলগুলি ইনস্টল করতে পারেন
টেং_উইনকুয়ান

51

অ্যাক্সেস বা ইনস্টল করার অনুমতি নেই easy_install?

তারপরে, আপনি একটি অজগর তৈরি করতে পারেন virtualenv( https://pypi.python.org/pypi/virtualenv ) এবং এই ভার্চুয়াল পরিবেশ থেকে প্যাকেজ ইনস্টল করতে পারেন।

শেলের 4 টি কমান্ড কার্যকর করা যথেষ্ট হবে (XXX এর জন্য 16.1.0 এর মতো বর্তমান প্রকাশ সন্নিবেশ করুন):

$ curl --location --output virtualenv-X.X.X.tar.gz https://github.com/pypa/virtualenv/tarball/X.X.X
$ tar xvfz virtualenv-X.X.X.tar.gz
$ python pypa-virtualenv-YYYYYY/src/virtualenv.py my_new_env
$ . my_new_env/bin/activate
(my_new_env)$ pip install package_name

উত্স এবং আরও তথ্য: https://virtualenv.pypa.io/en/latest/installation/


1
pipইনস্টলড নেই এমন সিস্টেমে এই উত্তরটি আমার পক্ষে কার্যকর ছিল ।
ড্যান স্টোভেল

আমি আমার স্থানীয় পাইথন ইনস্টলেশনের জন্য একটি বৈকল্পিক চেষ্টা করেছি। কার্ল - সাইলেন্ট - শো-ত্রুটি - 5 টি বুটস্ট্র্যাপ.পিপ্পা.আইও /get-pip.py | ~ / পাইথন-২.7.৮ / অজগর
নীরভ

3
উত্সটি সরানো হয়েছে এবং উপরের বাক্সটি কার্যকর হয় না বলে মনে হচ্ছে। অনুরূপ https://virtualenv.pypa.io/en/latest/installation/কাজের ক্ষেত্রে একই নির্দেশাবলী :)
আন্দ্রেস ডেক

13

রুট অ্যাক্সেস ছাড়াই আপনি নিজের হোম ডিরেক্টরিতে পাইথন প্যাকেজ ইনস্টল করতে ইজি_সিনস্টল চালাতে পারেন। সাইট ব্যবহার করে এটি করার একটি স্ট্যান্ডার্ড উপায় রয়েছে US USER_BASE যা $ HOME / .Local বা OME HOM / Library / পাইথন / 2.7 / বিনের মতো কোনও কিছুর সাথে ডিফল্ট এবং পাইথনপ্যাথে ডিফল্টরূপে অন্তর্ভুক্ত থাকে

এটি করতে, আপনার হোম ডিরেক্টরিতে একটি .pydistutils.cfg তৈরি করুন:

cat > $HOME/.pydistutils.cfg <<EOF
[install]
user=1
EOF

এখন আপনি রুট সুবিধাগুলি ছাড়াই ইজি_ ইনস্টল চালাতে পারেন:

easy_install boto

বিকল্পভাবে, এটি আপনাকে রুট অ্যাক্সেস ছাড়াই পাইপ চালাতে দেয়:

pip install boto

এটি আমার পক্ষে কাজ করে।

ওয়েসলি তানাকার ব্লগ থেকে উত্স: http://wtanaka.com/node/8095


1
এটি আমার জন্য লিনাক্স সার্ভারে রুট অ্যাক্সেস ছাড়াই ইনস্টল করার জন্য কাজ করেছিল। আপনাকে ধন্যবাদ তবে কেন এটি কাজ করেছে আমার কোনও ধারণা নেই। কোনও দেহ কি ইঙ্গিত দিতে পারে?
চথুরাগ

9

যদি আপনাকে একটি ডিসটুইলস setup.pyস্ক্রিপ্ট ব্যবহার করতে হয় তবে ইনস্টলেশন গন্তব্যকে বাধ্য করার জন্য কিছু কমান্ডলাইন বিকল্প রয়েছে। Http://docs.python.org/install/index.html#alternate-installation দেখুন । যদি এই সমস্যাটির পুনরাবৃত্তি ঘটে তবে আপনি একটি ডিস্টিল কনফিগারেশন ফাইল সেটআপ করতে পারেন, http://docs.python.org/install/index.html#inst-config-files দেখুন

পাইথনপথ ভেরিয়েবল সেট করা টিহোস পোস্টে বর্ণিত।


1
অনেক ধন্যবাদ. আমি সফলভাবে lxmlগ্রন্থাগারটি ইনস্টল করেছিpython <lxml_distrib_dir>/setup.py install --home=<dir>
সার্জ এস

6

গুরুত্বপূর্ণ প্রশ্ন। আমি যে সার্ভারটি ব্যবহার করি (উবুন্টু 12.04) easy_install3তবে তা ছিল না pip3। এইভাবে আমি আমার হোম ফোল্ডারে পিপ এবং তারপরে অন্যান্য প্যাকেজগুলি ইনস্টল করেছি

  1. উবুন্টু প্যাকেজ ইনস্টল করতে অ্যাডমিনকে জিজ্ঞাসা করলেন python3-setuptools

  2. ইনস্টল পাইপ

এটার মত:

 easy_install3 --prefix=$HOME/.local pip
 mkdir -p $HOME/.local/lib/python3.2/site-packages
 easy_install3 --prefix=$HOME/.local pip
  1. পিপ (এবং অন্যান্য পাইথন অ্যাপ্লিকেশনগুলিতে যোগ করুন)

এটার মত:

PATH="$HOME/.local/bin:$PATH"
echo PATH="$HOME/.local/bin:$PATH" > $HOME/.profile
  1. পাইথন প্যাকেজ ইনস্টল করুন

এটার মত

pip3 install --user httpie

# test httpie package
http httpbin.org

4

আমি জুজু ব্যবহার করি যা মূলত আপনার $ হোম / .জু ডিরেক্টরিতে সত্যই একটি ছোট্ট লিনাক্স বিতরণ করতে পারে (কেবলমাত্র প্যাকেজ ম্যানেজার সহ)।

এটি হোম ডিরেক্টরিতে আপনার কাস্টম সিস্টেমটিকে প্রোটের মাধ্যমে অ্যাক্সেসযোগ্য করতে দেয় এবং অতএব, আপনি কোনও অধিকার ছাড়াই কোনও প্যাকেজ ইনস্টল করতে পারেন। এটি সমস্ত বড় লিনাক্স বিতরণে সঠিকভাবে চলবে, একমাত্র সীমাবদ্ধতা হ'ল ন্যূনতম রিক্যামেন্ডেড সংস্করণ ২.6.৩২ সহ লিনাক্স কার্নেলে জুজু চালাতে পারে।

উদাহরণস্বরূপ, পাইপ ইনস্টল করতে জুজু ইনস্টল করার পরে কেবল নিম্নলিখিত টাইপ করুন:

$>juju -f
(juju)$> pacman -S python-pip
(juju)> pip


1

স্থানীয়ভাবে virtualenv ইনস্টল করুন ( নির্দেশাবলীর উত্স ):

গুরুত্বপূর্ণ: XXX এর জন্য বর্তমান প্রকাশ (যেমন 16.1.0 ) সন্নিবেশ করান । নিষ্কাশিত ফাইলের নাম পরীক্ষা করে YYYYY এর জন্য এটি sertোকান

$ curl -L -o virtualenv.tar.gz https://github.com/pypa/virtualenv/tarball/X.X.X
$ tar xfz virtualenv.tar.gz
$ python pypa-virtualenv-YYYYY/src/virtualenv.py env

আপনার ভার্চুয়াল পাইথন পরিবেশে আপনার প্রয়োজনীয় যে কোনও প্যাকেজ ব্যবহার বা ইনস্টল করার আগে :sourceenv

$ source env/bin/activate

নতুন পাইথন প্যাকেজ ইনস্টল করতে (নমপির মতো), ব্যবহার করুন:

(env)$ pip install <package>

এটি মূলত ট্র্রোজের নির্দেশাবলীর একটি আপডেট সংস্করণ । তার নির্দেশাবলী পুরানো। আমার সম্পাদনা প্রত্যাখ্যান করা হয়েছিল। সে কারণে আমি এটি একটি নতুন নির্দেশ হিসাবে পোস্ট করেছি।
নিক্লাস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.