मैं इंटरनेट (ऑफ़लाइन) के बिना सॉफ़्टवेयर या पैकेज कैसे स्थापित कर सकता हूं?


257

मेरा एक दोस्त है जिसे एक कंप्यूटर मिला है जो इंटरनेट से जुड़ा नहीं है। क्या सॉफ्टवेयर ऑफ़लाइन को आसानी से स्थापित करने का कोई तरीका है?


1
निम्नलिखित लिंक भी आपके लिए दिलचस्प हो सकता है। askubuntu.com/questions/86358/…
स्टार्कस

जवाबों:


129

Keryx की जाँच करें ; यह एक ऑफ़लाइन भंडार प्रबंधक है।

यह कैसे काम करता है? यह आपको अपने फ्लैश ड्राइव पर अपडेट और नए प्रोग्राम (निर्भरता के साथ) डाउनलोड करने देता है ।

इसका इंटरफ़ेस सिनैप्टिक के समान है, लेकिन यह एक पेनड्राइव से काम करता है (इसे इंस्टॉलेशन की आवश्यकता नहीं है)। दुर्भाग्य से, GUI को wxwidgets की आवश्यकता होती है, जो उबंटू पर प्रीइंस्टॉल्ड नहीं होते हैं (वे यहां से क्रॉस-प्लेटफॉर्म और यहां से Ubuntu रिपॉजिटरी हैं )। यह केवल उबंटू प्रणाली में सॉफ़्टवेयर स्थापित कर सकता है, लेकिन आप किसी भी लिनक्स, विंडोज या ओएस एक्स में अपडेट या नए पैकेज डाउनलोड कर सकते हैं।

यहां आप एक ट्यूटोरियल पा सकते हैं ।

एक अन्य विस्तृत चरण-दर-चरण ट्यूटोरियल इस उत्तर में है

लॉन्चपैड डाउनलोड करने योग्य फ़ाइलों को भी होस्ट करता है

एक स्क्रीनशॉट:

screenshoot


12
keryx अब विकास के अधीन नहीं है, अगर आप उबंटू के नए संस्करण पर यह कोशिश कर रहे हैं, तो निर्भरता की परेशानी से खुद को बचाने के लिए पोर्टेबल संस्करण का उपयोग करें।
एलेक्स आर

1
मैं अभी भी keryxसमस्याओं के बिना उपयोग करता हूं , हालांकि इसे स्पष्ट रूप से आगे के विकास और सुधार की आवश्यकता है।
कार्नेंडिल


क्या होगा अगर अन्य ऑफ़लाइन कंप्यूटर में gcc, g ++ नहीं है? यह एक ताजा स्थापित ubuntu है। मैं wxwidgets कैसे स्थापित कर सकता हूं? Wxwidgets के बिना, यह लापता मॉड्यूल के बारे में शिकायत करता है ...
एक प्रस्ताव

3
मैंने अभी Keryx ( 0.92.5 ) का नया संस्करण जारी किया है , जो कुछ चिंताओं को हल कर सकता है। संकलित संस्करण में wxWidgets जैसी निर्भरता होनी चाहिए और आपको बिना किसी समस्या के विंडोज पर चलने की अनुमति देनी चाहिए।
माइकल क्रेंशव

57

एक त्वरित हैक

एक त्वरित हैक आपके इंस्टॉल के लिए आपके द्वारा डाउनलोड किए गए सभी पैकेजों को उसकी मशीन पर कॉपी करना है ( विस्तृत निर्देश यहां )। .Deb फ़ाइलों को संगृहीत किया जाता है /var/cache/apt/archives, फिर दूसरे कंप्यूटर लॉन्च में Synaptic और सेलेक्ट करें File -> Add Package Downloadedऔर खोजें कि क्या आप फ़ाइलों को डालते हैं और खोलते हैं, सभी को स्वीकार करते हैं (या कमांड का उपयोग करके टर्मिनल से इंस्टॉल करें sudo dpkg -i DEB_PACKAGE_NAME)।

नोट:
यह मानता है कि सीधे स्थापित करने के बाद पैकेज को हटाने के लिए आपका पैकेज प्रबंधक सेटअप नहीं है। यह भी मानता है कि आप उबंटू (10.10, 12.04, आदि) और आर्किटेक्चर संस्करण (32 बी या 64 बी) का एक ही संस्करण चला रहे हैं ।


एक डीवीडी रिपॉजिटरी

यदि आप नवीनतम बग फिक्स और सुरक्षा पैच उपलब्ध चाहते हैं, तो इस ट्यूटोरियल पर एक नज़र डालें , जो आपके स्वयं के डीवीडी रिपॉजिटरी को कवर करता है।


2
यदि आप इसे नहीं चला सकते हैं तो sudo apt-get updateयह बहुत अच्छा काम नहीं करेगा, फिर भी एक नया सिस्टम सेट करते समय एक अच्छा समय बचाने वाला :)
GM-Script-Writer-62850

सहमत, बस दो कंप्यूटरों को 13.04 से 13.10 में अपग्रेड किया। पहले वाले को /var/cache/apt/archives~ 1.8Gb डाउनलोड करना था, दूसरे की सामग्री को कॉपी करके इसे केवल ~ 250Mb डाउनलोड किया गया। फिर भी, आपको इंस्टॉल चलाने के लिए कनेक्शन की आवश्यकता है।
मैक्सिमे आर।

apt-get updateयदि आप कॉपी करते हैं तो इसकी आवश्यकता नहीं है /var/lib/apt/lists- इस निर्देशिका में रिपॉजिटरी जानकारी शामिल है जिसे डाउनलोड किया गया है apt-get update
इग्निस

मैंने अपना .debओवर अपने से कॉपी usbकिया /var/cache/apt/archives। दूसरे कंप्यूटर पर मैंने केवल usb ड्राइव को खोला और डबल क्लिक किया .debजिसने उबंटू GUI लॉन्च किया Software Updater। आसान पेज़ी।
जैक्सनक्रा

@ jr0cket: क्या इस फ़ोल्डर में पैकेज से बचने का कोई तरीका है /var/cache/apt/archivesजो पहले से ही (इनबिल्ट) है, जब इनस्टॉल किया जाता है?
जस्टिन

42

एक USB रिपॉजिटरी

यदि आपके पास एक सभ्य आकार की यूएसबी स्टिक है - लगभग 4-8Gb (या बाहरी हार्ड ड्राइव) मानकर आप उबंटू रिपॉजिटरी की एक कस्टम कॉपी स्थापित कर सकते हैं और कॉन्फ़िगर कर सकते हैं कि स्थानीय रिपॉजिटरी के रूप में AptGet / Offline / Repository में help.ubuntu .com।

वास्तविक पैकेज फ़ाइलें (.deb फ़ाइलें) प्राप्त करने के लिए, मैं उपयोग करने का सुझाव देता हूं apt-mirror

apt-mirrorपैकेज आप जो पूर्ण भंडार के 30GB से कम होना चाहिए एक कस्टम दर्पण बनाने में मदद करेंगे। पैकेज स्थापित करें:

sudo apt-get install apt-mirror

और इसकी कॉन्फ़िगरेशन फ़ाइल को संपादित करें

gksudo gedit /etc/apt-mirror/mirror.list

या Ubuntu 14.04 के बाद से

gksudo gedit /etc/apt/mirror.list

केवल उन रिपॉजिटरी वर्गों को शामिल करें जिन्हें आप चाहते हैं। यहां एक सरल उदाहरण है जो सभी 4 वर्गों (मुख्य, प्रतिबंधित, ब्रह्मांड और मल्टीवर्स) से बाइनरी .deb फ़ाइलों की प्रतिलिपि बनाता है और साथ ही नवीनतम बग फिक्स करता है।

# apt-mirror configuration file
##
## The default configuration options (uncomment and change to override)
##
#
set base_path    /tmp/ubuntumirror
#

## Repositories to copy from - 

## use a mirror so you don't overload the main server!!!

# Lucid binaries - no source files
deb http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu lucid-updates main restricted universe multiverse


## Clean up older .deb files no longer in the archive
clean http://archive.ubuntu.com/ubuntu

यह निर्देशित है कि आपको स्रोत के बिना सभी 4 वर्गों के लिए लगभग 15Gb स्थान की आवश्यकता होगी।

मैंने सभी .deb फ़ाइलों के लिए पथ डाल दिया है /tmp, सुनिश्चित करें कि आपके पास पर्याप्त स्थान है, ताकि आपकी हार्ड ड्राइव न भरे (यदि आपका हार्ड ड्राइव नहीं भरता है और आपके कंप्यूटर को जमा देता है, /tmpतो उसे रिबूट के साथ साफ़ किया जाना चाहिए)।

यदि आप मुख्य फाइलें चाहते हैं, तो कॉन्फ़िगरेशन फ़ाइल से प्रतिबंधित, ब्रह्मांड और मल्टीवर्स नाम हटा दें।

यदि आप एक अलग आर्किटेक्चर का उपयोग कर रहे हैं (आपके पास 64 बिट है, लेकिन आपके मित्र के पास 32 बिट है) तो शीशे की शुरुआत में निम्नलिखित जोड़ें। कॉन्फ़िगरेशन फ़ाइल:

set defaultarch i386

एक बार जब आप चाहते हैं कि आपके पास apt-mirrorकॉन्फ़िगरेशन है, तो दौड़ें apt-mirrorऔर जाएं कुछ मज़ेदार या बदलते रहें क्योंकि रिपॉजिटरी (आपके कनेक्शन और आपके द्वारा उपयोग किए जा रहे उबंटू दर्पण के आधार पर) को प्राप्त करने में घंटों या दिन लगेंगे।

एक बार जब आपके पास .deb फाइलें हों, तो फ़ाइलों को अपने USB मेमोरी स्टिक (या बाहरी हार्ड ड्राइव) पर कॉपी करें और पहले बताए गए लेख के अनुसार स्थानीय रिपॉजिटरी सेट करें।

अपने दोस्त के पास ले जाने से पहले यह काम करता है!



जब मैंने sudo apt-get install apt-mirrorUbuntu 16.10 (Yakkety Yak), डेस्कटॉप संस्करण / Rufus / USB स्टिक / ट्रायल मोड पर सीधे कोशिश की , तो मैंने " E: Unable to locate package apt-mirror" कहा। इंटरनेट से कनेक्शन था, द्वारा सत्यापित ping
पीटर मॉर्टेंसन

रनिंग sudo apt-get updateने इसे ठीक नहीं किया।
पीटर मॉर्टेंसन

32

मैं इसे करने के लिए "--print-uris" विकल्प के साथ apt-get का उपयोग करता हूं। मैं "-qq" भी जोड़ता हूं ताकि यह शांत हो।

कुछ फ़ाइल नाम (3% 2a जैसा कुछ) में जोड़े गए अतिरिक्त वर्णों को निकालने के लिए और फ़ाइलों के url, फ़ाइल नाम और md5sum प्राप्त करने के लिए sed का उपयोग करें। फ़ाइलों को डाउनलोड करने के लिए wget का उपयोग करें। फ़ाइलों को ठीक से डाउनलोड किया गया है या नहीं यह जांचने के लिए md5sum का उपयोग करें।

लिनक्स या मैक ओएस के लिए एक शेल स्क्रिप्ट बनाने के लिए आप इसका उपयोग कर सकते हैं। कमांड को .sh में कमांड (.cmd) और स्क्रिप्ट को निष्पादित करने की अनुमति जोड़ने के लिए "chmod a + x (फ़ाइल नाम) करें या Windows कमांड बैच फ़ाइल , और सुनिश्चित करने के लिए एक MD5Sum फ़ाइल फ़ाइलों को सही ढंग से डाउनलोड कर रहे हैं।

आदेश

स्क्रिप्ट बनाएँ:

sudo apt-get <<<apt-get command and options>>> --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > script.cmd

उदाहरण:

sudo apt-get install anjuta --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install-anjuta.cmd
sudo apt-get upgrade --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > upgrade.cmd
sudo apt-get dist-upgrade --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > dist-upgrade.cmd

Md5sum फ़ाइल बनाएँ:

sudo apt-get <<<apt-get command and options>>> --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt

उदाहरण:

sudo apt-get install anjuta --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt
sudo apt-get upgrade --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt
sudo apt-get dist-upgrade --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt

यदि आप फ़ाइलों को डाउनलोड करने के लिए उस ऑपरेटिंग सिस्टम का उपयोग कर रहे हैं तो आपको विंडोज के लिए md5sum की आवश्यकता है।


रिपॉजिटरी लिस्टिंग डाउनलोड करने के लिए स्क्रिप्ट बनाएं:

sudo apt-get update --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) :/wget -c \1 -O \2.bz2/p" > update.cmd

MD5 Sums की जाँच करना

Md5sum की जाँच करने के लिए आप इन्हें लिपियों के सिरों में जोड़ सकते हैं:

लिनक्स:

md5sum --quiet -c md5sum.txt

Windows (पुराने md5sum का उपयोग करता है, - समर्थन नहीं करता है):

md5sum -c md5sum.txt

स्क्रिप्ट में स्वचालित रूप से जोड़ने के लिए:

echo -e "md5sum -c md5sum.txt\npause" >> script.cmd

सूची फ़ाइलों को स्थापित करना (अपडेट कमांड)

इन आदेशों को लक्ष्य कंप्यूटर पर चलाएँ।

भंडार सूची फ़ाइलों को निकालने के लिए आपको bunzip2 का उपयोग करने की आवश्यकता है:

bunzip2 *.bz2

फिर सूची फ़ोल्डर में कॉपी करें (वर्तमान फ़ोल्डर में केवल सूची फ़ाइलें हैं):

sudo cp * /var/lib/apt/lists/

ऊपर संयुक्त (वर्तमान फ़ोल्डर में अन्य फ़ाइलें हो सकती हैं):

for listfile in `ls *.bz2`; do bunzip2 $listfile; sudo cp ${listfile%.bz2} /var/lib/apt/lists/; done

तेज़ डाउनलोड

यदि आप फ़ाइलों को तेज़ी से डाउनलोड करना चाहते हैं, तो एक्सल का उपयोग करके देखें।

बदलें wget -c ... -O ...के साथ axel ... -o ...

फ़ोल्डर पदानुक्रम (विंडोज़ का उपयोग करके फ़ाइलें डाउनलोड करना)

मैं आमतौर पर इस तरह एक फ़ोल्डर बनाता हूं:

  • apt-get /
    • bin /
      • msys-1.0.dll
      • msys-intl-8.dll
      • wget.exe
      • msys-iconv-2.dll
      • md5sum.exe
      • libeay32.dll
      • libintl3.dll
      • libssl32.dll
      • libiconv2.dll
    • अपडेट करें/
      • update.cmd
      • md5sum.txt
    • इंस्टॉल करें I/
      • स्थापित-foo.cmd
      • स्थापित-bar.cmd
      • upgrade.cmd
      • md5sum.txt

फिर wgetऊपर की रेखाओं में ..\\bin\\wget.exe, md5sumसे ..\\bin\\md5sum.exe, आदि में बदलें ।

यह * .deb फ़ाइलों को अलग करेगा और फ़ाइलों को विभिन्न फ़ोल्डरों में सूचीबद्ध करेगा।

अपने सिस्टम को अपडेट करना

  1. उबंटू का उपयोग करने वाले कंप्यूटर को लक्षित करने के लिए बूट
  2. अद्यतन के लिए एक स्क्रिप्ट बनाएँ
  3. इंटरनेट कनेक्शन वाले कंप्यूटर पर बूट करें
  4. Run.sh (Linux या Mac OS के लिए) या update.cmd (Windows) चलाएं
  5. कंप्यूटर को लक्षित करने के लिए वापस जाएँ
  6. सूची फ़ाइलों को स्थापित करें
  7. अपग्रेड / डिस्ट-अपग्रेड के लिए स्क्रिप्ट बनाएं (अंत में md5sum कमांड जोड़ें)
  8. इंटरनेट कनेक्शन के साथ कंप्यूटर पर वापस जाएं
  9. Run.sh/dist-upgrad.sh (Linux या Mac OS) या अपग्रेड। Cmd / dist-upgrade.cmd (Windows) चलाएं
  10. कंप्यूटर को लक्षित करने के लिए वापस जाएँ
  11. कैश के लिए * .deb फ़ाइलों की प्रतिलिपि बनाएँ: sudo cp *.deb /var/cache/apt/archives/
  12. भागो: sudo apt-get upgradeयाsudo apt-get dist-upgrade

Windows के लिए निष्पादनयोग्य डाउनलोड करें

विंडोज के लिए भूल जाओ: http://gnuwin32.sourceforge.net/packages/wget.htm

विंडोज के लिए md5sum: http://gnuwin32.sourceforge.net/packages/coreutils.htm या http://www.etree.org/cgi-bin/counter.cgi/software/md5sum.exe

तुम भी MinGW , जो मैं उपयोग कर रहे हैं से का उपयोग कर सकते हैं। आपको केवल wget.exe, md5sum.exe और आवश्यक साझा लाइब्रेरी की आवश्यकता है। "फ़ोल्डर पदानुक्रम" अनुभाग देखें।

टिप्पणियाँ

  • मुझे पूरी तरह से यकीन नहीं है कि ऊपर की सभी चीजें काम करेंगी, क्योंकि मैंने उन्हें अब एक महीने तक इस्तेमाल नहीं किया है। विशेष रूप से अपडेट कमांड, जिसे मैंने आज इसके कुछ हिस्सों का परीक्षण नहीं किया है।
  • आदेशों के परिणामों को आसानी से देखने के लिए, यदि विंडोज का उपयोग कर रहे हैं, तो स्क्रिप्ट के अंत में एक "पॉज़" पंक्ति जोड़ें।
  • यदि आप इन आदेशों का अक्सर उपयोग कर रहे हैं तो मैं पैकेज को अपडेट, अपग्रेड और इंस्टॉल करने के लिए शेल स्क्रिप्ट बनाने की सलाह देता हूं।

3
क्या आप इसके लिए एक साधारण गुइया बना सकते हैं :)
टैकींस

इसके लिए खिड़कियों का उपयोग करना बहुत ही अजीब लगता है ...
एलेक्स आर

1
यह लिनक्स पर भी लागू होता है (जो वास्तव में बेहतर है क्योंकि आपको md5sum और wget स्थापित करने की आवश्यकता नहीं है)। विंडोज हिस्सा उन लोगों के लिए है जिनके पास इंटरनेट कनेक्शन के साथ लिनक्स कंप्यूटर नहीं है, इसलिए आप इसे इंटरनेट कैफे या किसी दोस्त के कंप्यूटर में उपयोग कर सकते हैं जिसमें केवल विंडोज है।
अरनेल ए। बोरजा

-qqविकल्प सभी आउटपुट को दबाने के लिए प्रकट होता है apt-get update। मुझे लगता है कि आप वास्तव में इस विकल्प को नहीं चाहते हैं।
रुस्लान

29

आपको पहले इंटरनेट कनेक्शन के साथ एक पीसी प्राप्त करने की आवश्यकता है, जहां आप आवश्यक .deb फ़ाइलों को डाउनलोड कर सकते हैं। एक बार जब आप सभी फ़ाइलों को डाउनलोड कर लेते हैं, तो अब आप एक सीडी / डीवीडी रोम या आईएसओ फाइल बना सकते हैं, जिसका उपयोग आप अपने ऑफ़लाइन पीसी में डाउनलोड किए गए सॉफ़्टवेयर को स्थापित करने के लिए कर सकते हैं।

एक साफ स्थापित या वीएम के साथ शुरू करें।
sudo apt-get install aptoncd

उन पैकेजों को स्थापित करें जिन्हें आप एक पीसी पर चाहते हैं
sudo apt-get install gbrainy

Aptoncd पर
यहां छवि विवरण दर्ज करें
क्लिक करें क्रिएट
यहां छवि विवरण दर्ज करें
क्लिक बर्न और विकल्प सेट करें फिर
यहां छवि विवरण दर्ज करें
इसे जलाएं या इसे सहेजें पर क्लिक करें
यहां छवि विवरण दर्ज करें

ध्यान दें कि aptoncd केवल वर्तमान apt-cache में चीजों का बैकअप लेती है।
यही कारण है कि हमने एक स्वच्छ वीएम / नई स्थापना के साथ शुरुआत की और यह सब एक रन में किया।


sooo, क्या आप कह रहे हैं कि अगर मैं एक vm बनाऊं और मेरे द्वारा वांछित सभी ऐप्स इंस्टॉल करें, तो इस प्रोग्राम को चलाएं, सीडी / डीवीडी को ऑफलाइन पीसी में ले जाएं। और यह उस पर सभी एप्लिकेशन इंस्टॉल करेगा?
एलेक्स

2
जब तक आप एक ही आधार प्रणाली मीडिया का उपयोग करते हैं, हाँ। यदि आप एक कार्यालय की तैनाती कर रहे हैं, और आप कुछ जोड़ने के लिए एक त्वरित और सरल तरीका चाहते हैं, तो यह बहुत उपयोगी हो जाता है। यदि आप create-meta package का उपयोग करते हैं, तो हाँ
RobotHumans

छवि से पुनर्स्थापित करने के लिए हॉल को स्थापित करने की आवश्यकता होती है, लेकिन इसे हटा दिया गया है और अब तक मुझे समझ में नहीं आया है।
फ्लैशरनर

वहाँ ज्वलंत के लिए एक निर्माण है code.launchpad.net/~ubuntu-branches/ubuntu/vivid/hal/vivid
RobotHumans

22

ऑफलाइन रिपोजिटरी

ऑफ़लाइन रिपॉजिटरी बनाने का तरीका यहाँ बताया गया है : आपको सिर्फ आर्काइव.बंटू.कॉम से उपयुक्त फाइलें डाउनलोड करनी हैं । वैकल्पिक रूप से, आप उपयोग कर सकते हैं apt-medium

EDIT: *.debविभिन्न स्थानीय प्रविष्टियों में फ़ाइलों के स्थानीय स्तर पर आधारित एक और दृष्टिकोण का वर्णन किया गया है ( यहां और यहां देखें )। सारथ चंद्रा का सारांश इस प्रकार है:

  1. सुगम बनाने (रूट द्वारा कम से कम)

    sudo mkdir /var/my-local-repo
    
  2. इस निर्देशिका में सभी डिबेट फ़ाइलों को कॉपी करें।

  3. निर्देशिका को एक बनाएं

    sudo bash -c 'dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz'
    

    या

    sudo dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz
    
  4. स्रोतों में स्थानीय रेपो जोड़ें

    echo "deb file:/var/my-local-repo ./" > /tmp/my-local.list
    sudo mv /tmp/my-local.list /etc/apt/sources.list.d/my-local.list
    sudo apt-get update
    

20

चरण 1: एक फ़ाइल में डाउनलोड URL प्राप्त करें:

निम्नलिखित आदेशों को एक स्थान से अलग करते हुए, आवश्यक लोगों के साथ पैकेज-नामों को प्रतिस्थापित करें।

apt-get -y install --print-uris package-name | cut -d\' -f2 | grep http:// > apturls

चरण 2: इस फ़ाइल (apturls) को उस मशीन पर कॉपी करें जिसमें इंटरनेट की उच्च गति है, और संकुल को डाउनलोड करने के लिए निम्नलिखित कमांड को निष्पादित करें:

wget -i path-to-apturls-file 

चरण 3: अब उन डाउनलोड किए गए पैकेजों को अपनी मशीन पर प्राप्त करें, और उनका उपयोग करके इंस्टॉल करें:

cd path-to-the-downloaded-packages-directory

sudo dpkg -i *.deb

किया हुआ!


क्या --print-urisप्रिंट भी निर्भरताएँ हैं जो पहले से ही सिस्टम में स्थापित हैं?
यूरिक

19

आप क्यूब का उपयोग कर सकते हैं । यह एक पोर्टेबल पैकेज मैनेजर है जो आपको एक और इंटरनेट से जुड़े कंप्यूटर पर पैकेज डाउनलोड करने देता है, और उन्हें आपके मूल लिनक्स कंप्यूटर में ऑफ़लाइन स्थापित करता है।

डाउनलोडिंग ऐप्स (विंडोज पर)

एप्लिकेशन इंस्टॉल करना (लिनक्स पर)

आप इसे क्यूब की वेबसाइट पर डाउनलोड कर सकते हैं ।


क्या यह .deb या .exe है?

2
कोई .deb फ़ाइल नहीं है क्योंकि यह स्टैंडअलोन, पोर्टेबल है और इसे स्थापित किए बिना निष्पादित किया जा सकता है (बस क्यूब-सामान्य फ़ाइल चलाएं)। Cube.exe भी विंडोज़ उपयोगकर्ताओं के लिए शामिल किया गया है।
कैमिक्री

1
इसके बारे में अधिक लोगों को जानने की जरूरत है। मैं तुमसे प्यार करता हूँ।
Howderek

मुझे इस एप्लिकेशन को 7 परम 32 बिट जीतने पर चलाते समय त्रुटि हो रही है। चित्र: i.stack.imgur.com/XW3wt.jpg त्रुटि संदेश: समस्या हस्ताक्षर: समस्या घटना का नाम: CLR20r3 समस्या हस्ताक्षर 01: cube.exe समस्या हस्ताक्षर 02: 1.0.9.3 समस्या हस्ताक्षर 03: 54.2d0258 समस्या हस्ताक्षर 04: glib-sharp समस्या हस्ताक्षर 05: 2.12.0.0 समस्या हस्ताक्षर 06: 517edc4c समस्या हस्ताक्षर 07: 1b4 समस्या हस्ताक्षर 08: 17 समस्या हस्ताक्षर 09: System.DllNotFoundException OS संस्करण: 6.1.7600.2.0.2.2.1.1 स्थान पता: 16393
संदीप

हैलो और घन का उपयोग करने के लिए धन्यवाद। दुर्भाग्य से, आपके द्वारा उपयोग किया जा रहा क्यूब का संस्करण अब बनाए नहीं रखा गया है। कृपया नए और स्थिर एक, क्यूब सर्वर का उपयोग करें: launchpad.net/cube-server। ऊपर दिया गया अद्यतन उत्तर देखें।
कैमिक्री

17

सिनैप्टिक में आप उन पैकेजों का चयन कर सकते हैं जिन्हें आप इंस्टॉल करना चाहते हैं और पहले मेनू के तहत एक स्क्रिप्ट उत्पन्न करने का विकल्प है जिसे आप दूसरी मशीन पर ले जा सकते हैं और वहां चला सकते हैं। यह स्क्रिप्ट (यानी "डाउनलोड करें") सभी पैकेज आपके द्वारा निर्दिष्ट है कि आप चाहते थे (और उनके निर्भरता), जो आपको लगता है कि एक कंप्यूटर पर चलाने के "wget" होगा करता है इंटरनेट का उपयोग कर सकते है।

एक बार चलाने के बाद आपके पास डिस्कनेक्ट किए गए कंप्यूटर द्वारा आवश्यक सभी पैकेज फाइलें होंगी। उन्हें CD / USB स्टिक पर ले जाएं और उनके द्वारा इंस्टॉल करें sudo dpkg -i *.deb


इस प्रक्रिया को करने के लिए एक अच्छी चाल है, लेकिन 2 कंप्यूटर? hmmmm
सुहैब

@ सुहैब - यकीन नहीं है कि आप 'दो कंप्यूटर' के बिना किसी भी माप में आपकी ज़रूरत के पैकेज को कैसे डाउनलोड करेंगे ... पैकेज पाने के लिए आपको एक 'ऑनलाइन' मशीन की ज़रूरत है जिसे आप किसी तरह अपनी ऑफ़लाइन मशीन को भेज देंगे (भले ही यह एक हो वीएम या एक डॉक कंटेनर एक अलग होस्ट ओएस पर चल रहा है, या कुछ बाहरी मीडिया पर मैनुअल curl/ wgetकॉपियों का एक गुच्छा ...
सिंड्रेज़

15

आप उपयोग कर सकते हैं apt-offlineया apt-offline-gui
पूर्व-आवश्यकताएं : इंटरनेट कनेक्शन के साथ एक मित्र की प्रणाली। आपके दोनों सिस्टम में apt-offline स्थापित है।

ऑफ़लाइन स्थापना 3 सरल चरणों में प्राप्त की जाती है।

चरण 1 :
घर पर डिस्कनेक्ट किए गए डेबियन बॉक्स पर एक हस्ताक्षर फ़ाइल उत्पन्न करें
apt-offline set /tmp/apt-offline.sig
उपरोक्त आदेश अपने डेटाबेस को अपडेट करने के बारे में उपयुक्त से आवश्यक सभी जानकारी उत्पन्न करेगा।

चरण 2 :
पूर्व में उत्पन्न हस्ताक्षर फ़ाइल के आधार पर डेटा डाउनलोड करें
apt-offline get C:\apt-offline.sig --threads 5
। उपरोक्त आदेश हस्ताक्षर फ़ाइल में उल्लिखित डेटा डाउनलोड करेगा। डाउनलोड को गति देने के लिए (जो कि कई उपयुक्त रिपोजिटरी से हो सकता है), इस उदाहरण में हम 5 डाउनलोड थ्रेड्स को स्पॉन करते हैं।
एक बार पूरा हो जाने के बाद, आप डेटा (एक आर्काइव फ़ाइल, यदि आप --bundle विकल्प का उपयोग करते हैं) को वापस हटाने योग्य माध्यम में कॉपी कर सकते हैं और इसे अपने ऑफ़लाइन होस्ट पर वापस कॉपी कर सकते हैं।

चरण 3 :
एक बार जब आप होम डेबियन मशीन पर वापस आ जाते हैं, तो आप डेटा को हटाने योग्य माध्यम से apt-offline तक खिलाते हैं:
apt-offline install /media/USB/apt-offline.zip
यह आपके डिस्कनेक्ट किए गए मशीन पर APT डेटाबेस को मूल रूप से अपडेट करेगा।

Apt-offline का उपयोग विंडोज सिस्टम में भी किया जा सकता है। मेरी राय में, apt-offlineऑफ़लाइन स्थापना के लिए सबसे अच्छा विकल्प है।

स्रोत


दो अवलोकन: सबसे पहले, पहले से स्थापित या तैयार-टू-इंस्टॉल पैकेज "विफल" के लिए एक हस्ताक्षर उत्पन्न करना इस अर्थ में कि .sig फ़ाइल खाली है। यह थोड़ा विवादास्पद है लेकिन स्पष्ट रूप से सामान्य है। दूसरा, उपयुक्त और उपयुक्त-ऑफ़लाइन कार्य सही ढंग से तभी होता है जब / var / lib / apt / सूचियों को ठीक से बीज दिया गया हो। यह एक उचित मात्रा में काम है यदि लक्ष्य और मेजबान मशीनों में अलग-अलग आर्किटेक्चर हैं।
उरिखीदुर

क्या स्रोत और लक्ष्य पीसी दोनों को उबंटू के समान संस्करण की आवश्यकता है?
ट्यूलेंस कोर्डोवा

Apt-offline को ऑफलाइन मशीन में कैसे स्थापित करें?
सामी ekसिमेकली

10

ऊपर सूचीबद्ध कई अच्छे, प्रभावी उत्तर हैं। हालांकि, यह वह तंत्र है जिसका मैं व्यक्तिगत रूप से उपयोग करता हूं - एप्ट-फुटपरिव । मैं इसे यहाँ प्रलेखित कर रहा हूँ, यदि भविष्य में मुझे इसकी आवश्यकता हो तो। शायद यह आपके लिए उपयोगी हो।

पुरालेख स्नैपशॉट बनाना

  • उबंटू का एक उदाहरण बनाएं जो लक्ष्य वातावरण की बारीकी से नकल करता है
    • उदाहरण के लिए, अमेज़ॅन में एक उबंटू 12.04 64-बिट उदाहरण
  • एक साफ पैकेज पर्यावरण के साथ शुरू करो
    • sudo apt-get clean
  • पैकेज सूचियों को अपडेट करें
    • sudo apt-get update
  • उपलब्ध सभी पैकेज अपडेट डाउनलोड करें
    • sudo apt-get dist-upgrade --download-only
  • सभी प्रासंगिक पैकेज और निर्भरताएँ डाउनलोड करें
    • sudo apt-get install --download-only byobu run-one bikeshed dotdee powernap
  • उपयुक्त- ftparchive सुविधा को स्थापित करें
    • sudo apt-get install apt-utils
  • पैकेज मैनिफ़ेस्ट बनाएँ
    • (cd /var/cache/apt/archives/ && sudo apt-ftparchive packages . ) | sudo tee /var/cache/apt/archives/Packages
  • पैकेजों का एक संग्रह बनाएँ
    • sudo tar cvf snapshot.tar -C /var/cache/apt archives/

ऑफ़लाइन लक्ष्य प्रणाली पर पुरालेख स्नैपशॉट का उपयोग करना

  • कुछ तंत्र के माध्यम से, आपको स्रोत से लक्ष्य प्रणाली तक स्नैपशॉट प्राप्त करना होगा। शायद एक यूएसबी स्टिक पर, या अन्यथा।
  • लक्ष्य प्रणाली पर संग्रह निकालें (इस मामले में, / घर / ubuntu में)
    • tar xvf snapshot.tar
  • स्थानीय, ऑफ़लाइन स्रोत को /etc/apt/sources.list में जोड़ें
    • echo "deb file:/home/ubuntu/archives /" | sudo tee -a /etc/apt/sources.list
  • पैकेज सूची अपडेट करें
    • sudo apt-get update
  • संकुल को इच्छानुसार स्थापित करें
    • sudo apt-get install byobu run-one bikeshed dotdee powernap

4

ऑफ़लाइन स्थापना के लिए आपको संकुल की आवश्यकता होगी। यदि आप एक डेबियन प्रणाली का उपयोग कर रहे हैं

  • .debफ़ाइल एक्सटेंशन के साथ पैकेज फ़ाइल प्राप्त करें और dpkg -i package_nameइसे स्थापित करने के लिए उपयोग करें
  • .tar.gzया .tar.bz2फ़ाइल एक्सटेंशन के साथ स्रोत टारबॉल प्राप्त करें , फिर उन्हें निकालें और उनके साथ इंस्टॉल करें:

    tar -zxvf your_pack.tar.gz` or tar `-jxvf your_pack.tar.bz2
    make
    sudo make install
    make clean        (optional, and may prevent uninstallation)
    

आपको निर्भरता की समस्या हो सकती है। आपको सफल ऑफ़लाइन स्थापना के लिए पहले उन सभी को स्थापित करने की आवश्यकता है।


2

हाँ। आप डीवीडी आईएसओ डाउनलोड कर सकते हैं, इसे डीवीडी पर जला सकते हैं और डीवीडी से सॉफ्टवेयर इंस्टॉल कर सकते हैं। यहां देखें कि सीडी और डीवीडी को ऑनलाइन संग्रह के समान पैकेज प्रबंधकों को स्रोत के रूप में दिया जा सकता है।


2

पहली बात जो आप एक ऑफलाइन पैकेज इंस्टॉलेशन से पहले कर सकते थे वह है रिपॉजिटरी / रिपॉजिटरी को अपडेट करना जो आपको चाहिए आपको अपडेटेड मेन रिपॉजिटरी (मुफ्त और आधिकारिक रूप से समर्थित सॉफ़्टवेयर के लिए) की तरह सुनिश्चित करना चाहिए ।

जिन अनुप्रयोगों को आप इंस्टॉल करना चाह रहे हैं वे कुछ अन्य रिपॉजिटरी में हो सकते हैं जैसे यूनिवर्स (स्वतंत्र लेकिन कोई आधिकारिक समर्थन नहीं), या प्रतिबंधित (गैर-मुक्त, आधिकारिक रूप से समर्थित), या मल्टीवर्स (गैर-मुक्त, कोई आधिकारिक समर्थन नहीं) रिपॉजिटरी । तो आप इनमें से एक या अधिक भी चाहते हो सकता है।

तो प्रक्रिया में पहला कदम एक अद्यतन ऑफ़लाइन भंडार का निर्माण करना है; फिर "डाउनलोड-डाउनलोड" सूची तैयार करें और उन्हें डाउनलोड करें, और अंत में इंसेटलेशन। यहां बताया गया है कि यह कैसे किया जाता है: स्रोत

  1. Url दर्ज करें: http://archive.ubuntu.com/ubuntu/dists/ suiteCodename जहां suiteCodename उचित रूप से substituded किया जाना चाहिए कहते हैं कि सटीक [या Ubuntu 12.04 (सटीक छिपकली) के लिए utopic उबंटू 14.10 (utopic यूनिकॉर्न) के लिए] ताकि आप चाहते हैं कि अब http://archive.ubuntu.com/ubuntu/dists/precise/ या आपके पास मौजूद किसी अन्य विशिष्ट स्थान पर हों।

  2. अपने आर्किटेक्चर (यानी सामग्री- i386.gz , आपके लिए आर्किटेक्चर i386 है) के लिए फाइलें रिलीज , रिलीज.जीपीजी और कंटेंट - ???? जीजी फाइल डाउनलोड करें । एक निर्देशिका / फ़ोल्डर में इन तीन फाइलों को अपने सूटकोड के नाम पर रखें ( सटीक पैंगोलिन के लिए सटीक)।

  3. आगे आपको प्रत्येक रिपॉजिटरी में से प्रत्येक के लिए निम्नलिखित करना होगा ( मुख्य, ब्रह्मांड, प्रतिबंधित, मल्टीवर्स ) जो आप चाहते हैं।

    ए। लक्ष्य रिपॉजिटरी डायरेक्टरी जैसे उदाहरण पर जाएं। मुख्य और फिर वास्तुकला निर्देशिका के लिए। बाइनरी-i386 ताकि आप http://archive.ubuntu.com/ubuntu/dists/suiteCodename/repositoryName/binary-????/ पर होंगे

    ख। सामग्री को डाउनलोड करें Package.bz2, Package.gz, जारी करें और रिपॉजिटरीनाम जैसे नाम वाली निर्देशिका में उन्हें सहेजें। मुख्य और इस निर्देशिका को पहले से बनाए गए सुइटकोड निर्देशिका में रखें।

    सी। एक बार दोहराएँ। और बी। प्रत्येक रिपॉजिटरी के लिए जो आप चाहते हैं।

  4. अंत में आपके पास कुछ इस तरह की संरचना होनी चाहिए:

     precise
     ├── Contents-i386.gz
     ├── main
     │   └── binary-i386
     │       ├── Packages.bz2
     │       ├── Packages.gz
     │       └── Release.txt
     ├── Release.gpg
     ├── Release.txt
     └── universe
         └── binary-i386
             ├── Packages.bz2
             ├── Packages.gz
             └── Release.txt
    

    (अपना सूटकोडनाम = सटीक मानकर, वास्तुकला i386 है, और आपको मुख्य और ब्रह्मांड भंडार की आवश्यकता है)

  5. इसके बाद, अद्यतन किए गए रिपॉजिटरी को डाउनलोड करने के बाद, आप डाउनलोड की गई फ़ाइलों को एक उचित संरचना में व्यवस्थित किया जाएगा (जैसा कि ऊपर दिखाया गया है) लक्ष्य ऑफ़लाइन कंप्यूटर की निर्देशिका में। अपने यूजर होम ( ) या कहीं और में ऑफ़लाइन रिपॉजिटरी / डिस्ट्रेस / सटीकprecise नामक एक फ़ोल्डर में निर्देशिका संरचना को सहेजें ( किसी टर्मिनल में sudo प्रबलता का उपयोग करके या Nautilus फ़ाइल प्रबंधक के साथ शुरू हुआ ; यह भी सुनिश्चित करें कि आपके पास प्रतिलिपि बनाई गई संरचना के लिए सही अनुमति है) । आपकी ऑफ़लाइन रिपॉजिटरी जानकारी तब उपयोग के लिए तैयार होगी।~/offlineRepository/dists/precise/home/offlineRepository/dists/precisegksu nautilus

  6. अपने स्रोत सूची में स्थानीय भंडार जोड़ें । साथ Ubuntu सॉफ्टवेयर केंद्र , के लिए जाना > जोड़ें ... -> सॉफ्टवेयर सूत्रों का कहना है ... - -> अन्य सॉफ्टवेयर संपादित करें :, अपार्ट लाइन के लिए क्षेत्र में और फिर जोड़ने deb file:///home/offlineRepository precise main universeऔर क्लिक करें स्रोत जोड़ें । सुनिश्चित करें कि आपने अपनी निर्देशिका / फ़ाइल संरचना और सूट के रूप में लाइन को संशोधित किया है। फिर पैकेज को फिर से लोड करें या sudo apt-get updateटर्मिनल में चलाएं । snap1

  7. अब अद्यतन के साथ (और शायद नए जोड़े गए रिपॉजिटरी भी), आप पैकेज और निर्भरता के लिए यूआरएल की सूची को डंप कर सकते हैं।

    मैं पिछले askUbuntu पोस्ट में से एक से कोड की निम्नलिखित पंक्ति उधार लेता हूं:

    sudo apt-get install packageName --print-uris | grep -o '\'http.*\' | tr "\'" " " > /tmp/package-list.txt
    

    जैसे। सिनाप्टिक पैकेज मैनेजर स्थापित करने के लिए:

    sudo apt-get install synaptic --print-uris | grep -o '\'http.*\' | tr "\'" " " > /tmp/package-list.txt
    

    (आप इसी तरह से अपडेट लिस्ट भी बना सकते हैं।)

    जनरेट की गई सूची का उपयोग ऑनलाइन कंप्यूटर पर पैकेज और संपूर्ण निर्भरता को डाउनलोड करने के लिए किया जा सकता है। कुछ डाउनलोड प्रबंधकों में बैच डाउनलोड के लिए सूची को डाउनलोड या उपयोग करने के लिए एक स्क्रिप्ट बनाएं। (यह भी ध्यान दें कि जनरेट की गई टेक्स्ट फ़ाइल यूनिक्स / लिनक्स लाइन का उपयोग करती है, और जिसे आप विंडोज में बदलना चाहते हैं।) इसके लिए एक आसान तरीका हुआ करता था जब सिंटेपिक पैकेज मैनेजर उबंटू में एक डिफ़ॉल्ट एप्लिकेशन था।

  8. अंत में लक्ष्य प्रणाली में, आप पैकेज को dpkgकिसी अन्य तरीके से या उपयोग करके स्थापित कर सकते हैं ।

सुरक्षा अद्यतन सहित अद्यतन पैकेज डेटाबेस प्राप्त करना

उपरोक्त स्पष्टीकरण के अलावा निम्नलिखित संरचना, आपको यह विचार देना चाहिए:

/opt/offlineRepoList/
└── dists
    ├── precise
    │   ├── Contents-i386.gz
    │   ├── main
    │   │   └── binary-i386
    │   │       ├── Packages.bz2
    │   │       ├── Packages.gz
    │   │       └── Release.txt
    │   ├── Release.gpg
    │   ├── Release.txt
    │   └── universe
    │       └── binary-i386
    │           ├── Packages.bz2
    │           ├── Packages.gz
    │           └── Release.txt
    ├── precise-security
    │   ├── Contents-i386.gz
    │   ├── main
    │   │   └── binary-i386
    │   │       ├── Packages.bz2
    │   │       ├── Packages.gz
    │   │       └── Release
    │   ├── Release
    │   ├── Release.gpg
    │   └── universe
    │       └── binary-i386
    │           ├── Packages.bz2
    │           ├── Packages.gz
    │           └── Release
    └── precise-updates
        ├── Contents-i386.gz
        ├── main
        │   └── binary-i386
        │       ├── Packages.bz2
        │       ├── Packages.gz
        │       └── Release
        ├── Release
        ├── Release.gpg
        └── universe
            └── binary-i386
                ├── Packages.bz2
                ├── Packages.gz
                └── Release

2

यहां से उत्तर ब्राउज़ करने के बाद: मैं इंटरनेट (ऑफ़लाइन) के बिना सॉफ़्टवेयर या पैकेज कैसे स्थापित कर सकता हूं? , मुझे यह कोड Arnel A. Borja द्वारा सबसे उपयोगी लगा।

sudo apt-get install PACKAGE --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh


वैसे भी, यहाँ कुछ निर्देश पूर्ण newbies के लिए हैं। मुझे उम्मीद है कि आपको वे उपयोगी लगेंगे।

Ubuntu 15.10+ के लिए दूसरों के लिए पूरा डाउनलोड निर्देश:

  1. टर्मिनल खोलें (शॉर्टकट CTRL + ALT + T)
  2. उस फ़ोल्डर पर नेविगेट करें जिसे आप कमांड का उपयोग करके पैकेज को डाउनलोड करना चाहते हैं:

    cd FOLDERNAME
    (उदाहरण: cd Desktop)
    युक्ति: आप उपयोग कर सकते हैं dirफ़ोल्डर्स सूची आदेश।

  3. निर्देशों के ऊपर दिए गए कोड में, पैकेज को उस पैकेज से बदलें, जिसे आप डाउनलोड करना चाहते हैं।
  4. संशोधित कोड को कॉपी और पेस्ट करें (शॉर्टकट CTRL + SHIFT + V) और एंटर दबाएं

    Synaptic Package Manager
    sudo apt-get install synaptic --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh

    को डाउनलोड करने के लिए उदाहरण कोड: VLC प्लेयर डाउनलोड करने के लिए उदाहरण कोड:
    sudo apt-get install vlc --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh

  5. अगर पूछा जाए, तो रूट पासवर्ड टाइप करें और एंटर दबाएं। (पासवर्ड के लिए वर्ण नहीं दिखाते हैं तो घबराएँ नहीं। यह सिर्फ एक सुरक्षा उपाय है।)
  6. "Install.sh" फ़ाइल अब जनरेट होनी चाहिए। आवश्यक सभी निर्भरताएँ स्क्रिप्ट के भीतर शामिल हैं।
  7. अब हमें इस आदेश के साथ स्क्रिप्ट चलाने की आवश्यकता है:
    sh install.sh
  8. फ़ाइलों के डाउनलोड होने की प्रतीक्षा करें
  9. बाद में, आप या तो फ़ोल्डर के भीतर सभी पैकेजों को स्थापित करने के लिए इस कमांड का उपयोग कर सकते हैं:

    sudo dpkg -i *.deb

    या आप संकुल को स्थापित करने के लिए सिनैप्टिक्स जैसे प्रोग्राम का उपयोग कर सकते हैं। (Synaptics: फ़ाइल - डाउनलोड किए गए पैकेज जोड़ें)
    वैकल्पिक रूप से, आप फ़ाइलों को केवल डबल क्लिक कर सकते हैं। वह उबंटू सॉफ्टवेयर सेंटर खोलेगा। सॉफ़्टवेयर केंद्र लोड होने के बाद, इंस्टॉल बटन दबाएं। इसे तब तक दोहराएं जब तक फ़ोल्डर की सभी फाइलें इंस्टॉल न हो जाएं।


2

मेरे पास एक छोटी अजगर स्क्रिप्ट है जिसे विंडोज पर चलाया जा सकता है जो निर्भरता के पेड़ को खोजने के लिए ubuntu पैकेज वेब साइट को पार्स करता है और सभी आवश्यक पैकेजों को डाउनलोड करने के लिए + चेकसम सत्यापन कर रहा है।

यह स्पष्ट रूप से आवश्यकता से अधिक डाउनलोड हो सकता है, लेकिन मेरे लिए सबसे सरल समाधान था।

https://gist.github.com/Zitrax/2bad212a3b0571357e1b

सभी डाउनलोड किए गए पैकेजों को तब स्थापित किया जा सकता है dpkg -i E pkg\*। यह पहले से स्थापित पैकेजों के पुनर्स्थापन से बचता है।

उपयोग:

usage: ubuntu-deps.py [-h] [-a ARCH] [-r RELEASE] [-m MIRROR] [-f FALLBACK] [-d DIRECTORY] dep [dep ...]

Download ubuntu dependencies

positional arguments:
  dep                                  The main/top package

optional arguments:
  -h, --help                           show this help message and exit
  -a ARCH, --arch ARCH                 The architecture to use (default: amd64)
  -r RELEASE, --release RELEASE        Ubuntu release (default: trusty)
  -m MIRROR, --mirror MIRROR           Mirror to use for download (default: http://no.archive.ubuntu.com/)
  -f FALLBACK, --fallback FALLBACK     Mirror to use when main mirror is not found (default:
                                       http://security.ubuntu.com/)
  -d DIRECTORY, --directory DIRECTORY  Target directory (default: pkg)

2

ऐसी प्रणाली के लिए जिसे हमेशा ऑफ़लाइन रखा जाएगा, आमतौर पर कुछ अन्य उत्तरों में प्रस्तुत मजबूत ऑफ़लाइन पैकेज प्रबंधन विधियों में से एक का उपयोग करना सबसे अच्छा है। यह इसलिए है क्योंकि वे पहले से स्थापित पैकेजों को एक समय में केवल एक मुट्ठी भर पैकेजों को स्थापित करने के बजाय, रखने की सुविधा देते हैं।

हालाँकि, अलग-थलग मामलों के लिए, जहाँ आप एक सिस्टम पर जल्दी से पैकेज स्थापित करना चाहते हैं, जिसमें इंटरनेट कनेक्शन नहीं है (और आपके पास उन्हें किसी अन्य मशीन पर डाउनलोड करने और उन्हें लाने की क्षमता है), आप ऐसा कर सकते हैं। मुख्य जटिलता यह निर्धारित कर रही है कि आपको क्या चाहिए, क्योंकि एक पैकेज में अक्सर अन्य पैकेज होते हैं जो इस पर निर्भर करता है, और जिसे इसलिए पहले स्थापित किया जाना चाहिए, या उसी समय, जैसा पैकेज स्थापित किया गया है।

यह उत्तर उबंटू 14.04 में डुप्लिकेट प्रश्न g ++ से प्रेरित है , और g++इसके मूल उदाहरण के रूप में स्थापित करने की आवश्यकता के मामले का उपयोग करता है ।

मैं इस बात पर जोर देता हूं कि इस पद्धति का उपयोग लंबे समय तक किसी चीज के विकल्प के रूप में नहीं किया जाना चाहिए जो कम से कम स्वचालित रूप से निर्धारित करने और आवश्यक सुरक्षा अपडेट स्थापित करने की सुविधा प्रदान करता है। कभी भी नेटवर्क से जुड़ने से किसी हमले की संभावना बहुत कम हो जाती है, लेकिन किसी भी स्रोत से डेटा के माध्यम से कुछ सुरक्षा बग का फायदा उठाया जा सकता है।

हालांकि यह विधि जटिल लग सकती है, आमतौर पर इसमें केवल कुछ मिनट लगते हैं। बड़ी संख्या में निर्भरता वाले पैकेज के लिए, इसमें अधिक समय लग सकता है। बहुत बड़ी संख्या में निर्भरता (जैसे, ubuntu-desktopएक न्यूनतम सिस्टम) पर खींचने वाले रूपक स्थापित करने के लिए, सभी आवश्यक .deb फ़ाइलों को डाउनलोड करने में अधिक समय लग सकता है और यह विधि उपयुक्त होने की संभावना नहीं है।

आवश्यक निर्भरता का निर्धारण

आप यह निर्धारित करने के लिए स्थापना का अनुकरण कर सकते हैं कि पैकेज की निर्भरता को पूरा करने के लिए किन अन्य पैकेजों की आवश्यकता है। -sध्वज को पास करना apt-get( इससे पहले कि आप कोई क्रिया निर्दिष्ट करें) ऐसा करता है।

apt-get -s install g++

मैं छोड़ दिया है sudo, क्योंकि यह सिर्फ एक सिमुलेशन है, इसलिए रूट विशेषाधिकार की जरूरत नहीं है।

यदि आप वास्तव में पैकेज के बजाय सभी सबसे सामान्य उपकरण स्थापित करना चाहते हैं g++, तो आप पसंद कर सकते हैं:

apt-get -s install build-essential

आउटपुट (के लिए g++) कुछ इस तरह दिखेगा:

NOTE: This is only a simulation!
      apt-get needs root privileges for real execution.
      Keep also in mind that locking is deactivated,
      so don't depend on the relevance to the real current situation!
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  g++-4.8 libstdc++-4.8-dev
Suggested packages:
  g++-multilib g++-4.8-multilib gcc-4.8-doc libstdc++6-4.8-dbg
  libstdc++-4.8-doc
The following NEW packages will be installed:
  g++ g++-4.8 libstdc++-4.8-dev
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Inst libstdc++-4.8-dev (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [amd64])
Inst g++-4.8 (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [amd64])
Inst g++ (4:4.8.2-1ubuntu6 Ubuntu:14.04/trusty [amd64])
Conf libstdc++-4.8-dev (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [amd64])
Conf g++-4.8 (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [amd64])
Conf g++ (4:4.8.2-1ubuntu6 Ubuntu:14.04/trusty [amd64])

यह कहना है कि स्थापित करने के लिए g++अपने सिस्टम पर, मैं संकुल की जरूरत है g++, g++-4.8और libstdc++-4.8-dev

एक अनुकार के परिणामों से जाना आमतौर पर एक पैकेज की निर्भरता को देखने से बेहतर होता है (या यह मानते हुए कि आपको जो आवश्यक है वह उपरोक्त के समान है), क्योंकि:

  1. आपके पास पहले से ही कुछ निर्भरताएँ हो सकती हैं।
  2. निर्भरताएँ (यानी, अन्य पैकेज जिन्हें पैकेज को स्थापित करने या काम करने की आवश्यकता होती है) स्वयं निर्भरताएँ हो सकती हैं जिन्हें आपने पहले से स्थापित नहीं किया है।

पैकेज मिल रहे हैं

एक बार जब आप जान जाते हैं कि आपको किन पैकेजों की आवश्यकता है, तो आप उन्हें डाउनलोड कर सकते हैं। मैं इसके लिए लॉन्चपैड का उपयोग करने का सुझाव देता हूं, क्योंकि डाउनलोड एसएसएल-एन्क्रिप्टेड हैं, जो फ़ाइल भ्रष्टाचार को रोकने में मदद करता है।

  • यह दुर्भावनापूर्ण पार्टी द्वारा जानबूझकर हेरफेर के खिलाफ सिर्फ एक सुरक्षा नहीं है; यह आकस्मिक फ़ाइल भ्रष्टाचार को रोकने में भी मदद करता है, जो डाउनलोड की गई फ़ाइलों के लिए एक अधिक सामान्य समस्या है।
  • एक प्रकार से इसे रोका नहीं जाता है: जब कोई फ़ाइल केवल आंशिक रूप से डाउनलोड होती है लेकिन आपको लगता है कि यह समाप्त हो गई है।
  • सामान्य रूप से apt-getया सॉफ्टवेयर सेंटर के साथ एक पैकेज स्थापित करने के लिए HTTPS की आवश्यकता नहीं होती है क्योंकि इसकी हैश को डिजिटली हस्ताक्षरित सूची के खिलाफ सत्यापित किया जाता है। यदि आप इन पैकेजों को अपने पैकेज कैश में डालते हैं और apt-getउन्हें इंस्टॉल करने के लिए उपयोग करते हैं, तो ऐसा होगा।
  • लेकिन अगर आप अंत में मैन्युअल रूप से डाउनलोड किए गए पैकेजों को स्थापित करना चाहते हैं dpkg -i, तो ऐसा नहीं किया जाएगा।

आप https://launchpad.net/ubuntu पर संकुल के अंतर्गत इसका नाम लिखकर और "पैकेज खोजें," पर क्लिक करके खोज सकते हैं। उदाहरण के लिए, खोज आपको gcc-4.8 स्रोत पैकेज पृष्ठ पर लाता है ।g++-4.8

फिर अपने Ubuntu रिलीज के कोडनेम पर स्क्रॉल करें। आप 14.04 रन कर रहे हैं, इसलिए यह भरोसेमंद तहर है। सभी Ubuntu रिलीज़ के लिए कोडनेम रिलीज़ विकी पेज पर सूचीबद्ध हैं । इसके लिए पैकेज डाउनलोड देखने के लिए दाईं ओर इंगित त्रिकोण पर क्लिक करें।

स्क्रीनशॉट जो सही सामने वाला त्रिकोण दिखा रहा है, जिसके साथ कोई भी इसके लिए डाउनलोड देखने के लिए रिलीज़ करता है

कुछ पैकेजों के लिए आप एक से अधिक पॉकेट से डाउनलोड की सूचियों का विस्तार करने में सक्षम हो सकते हैं । आप देख सकते हैं:

  • रिलीज़ , उबंटू रिलीज़ (या रिलीज़ के समय उपलब्ध) के साथ भेजे गए पैकेज का संस्करण;
  • रिलीज के बाद भेज दिया सुरक्षा , सुरक्षा अद्यतन;
  • अद्यतन , रिलीज के बाद किसी भी अद्यतन भेज दिया;
  • प्रस्तावित , अपडेट जो स्थापित करने के लिए उपलब्ध हैं, लेकिन परीक्षण में अभी भी हैं और सामान्य उपयोग के लिए अनुशंसित नहीं हैं;
  • बाद के उबंटू रिलीज में बैकपार्ट्स , सॉफ्टवेयर की उत्पत्ति और पहले रिलीज के लिए पुनर्निर्माण किया गया।

उदाहरण के लिए, 14.04 में फ़ायरफ़ॉक्स के लिए यहां क्या उपलब्ध है:

लॉन्चपैड स्क्रीनशॉट एक ही रिलीज में कई पॉकेट के लिए पैकेज डाउनलोड के विस्तार योग्य चयन दिखा रहा है

आम तौर पर आप सुरक्षा या अपडेट में पैकेज चाहते हैं यदि वे मौजूद हैं, और अन्यथा रिलीज़ में पैकेज ।

एक बार जब आप पैकेज की सूची का विस्तार करते हैं, तो .debअपनी वास्तुकला के लिए फ़ाइल ढूंढें । डीबीएस नाम दिए गए हैं । सबसे आम आर्किटेक्चर हैं:name_version_architecture.deb

  • 64-बिट पीसी / मैक ( amd64दोनों इंटेल और एएमडी प्रोसेसर के लिए कहा जाता है)
  • 32-बिट पीसी / मैक ( i386दोनों के लिए भी कहा जाता है )

उदाहरण के लिए, g++-4.8उबंटू के 64-बिट संस्करण के लिए पैकेज प्राप्त करने के लिए , आप डाउनलोड कर सकते हैं g++-4.8_4.8.4-1ubuntu15_amd64.deb

पैकेजों को स्थापित करना

संकुल आप पुनः प्राप्त कर रहे हैं एक ही संस्करण है कि apt-getकी installकार्रवाई स्वचालित रूप से लिया गया है और स्थापित (यदि आपके सिस्टम नेटवर्क से जुड़े हुए थे) किया है होता है, तो आप में संकुल डाल सकते हैं /var/cache/apt/archivesऔर केवल कि कमांड चलाएँ:

sudo apt-get install g++

यदि यह सिस्टम इंटरनेट से कभी जुड़ा नहीं था , तो संभवतः यह तब होगा जब आपके द्वारा पुनर्प्राप्त सभी पैकेज रिलीज़ पॉकेट से थे । भले ही सिस्टम कभी इंटरनेट से जुड़ा हो या नहीं, यह भी लगभग हमेशा ऐसा ही रहेगा, अगर लॉन्चपैड पर किसी अन्य जेब में कोई पैकेज नहीं दिखाया गया था। (अनिवार्य रूप से एकमात्र स्थिति यह नहीं होगी यदि आपने एक अल्फा या बीटा सिस्टम स्थापित किया है और इसे कभी अपडेट नहीं किया है।)

स्थापित करने के विशिष्ट मामले में g++, मैं उपयोग करूंगा apt-get

उन मामलों में जहां यह काम नहीं करता है या आप इसकी उम्मीद नहीं करते हैं, पैकेजों को अन्यथा खाली फ़ोल्डर में रखकर स्थापित करें और चलाएं:

sudo dpkg -Ri /path/to/folder

या आप संकुल को अलग-अलग नाम दे सकते हैं। यह उदाहरण मानता है कि पैकेज वर्तमान निर्देशिका में हैं (यानी, आपने cdउन्हें निर्देशिका में संपादित किया है):

sudo dpkg -i package1.deb package2.deb ...

जब तक स्थापित किए जा रहे पैकेजों की संख्या बहुत कम है और आप सटीक क्रम जानते हैं जिसमें उन्हें संतुष्ट होने के लिए निर्भरता के लिए स्थापित करने की आवश्यकता होती है, उन विधियों का उपयोग करने के लिए मैन्युअल रूप से प्रत्येक पैकेज को व्यक्तिगत रूप से स्थापित करने की तुलना में काफी अधिक कुशल है।


1

यदि आपके पास इंटरनेट से कोई संबंध नहीं है और किसी के पास नहीं है, जहां आप इंटरनेट से कनेक्ट कर सकते हैं तो एक विकल्प नहीं है जिसका अभी तक उल्लेख नहीं किया गया है: क्या किसी ने नियमित पोस्ट के माध्यम से स्रोत फ़ाइलों को भेजा है।

आप एक डीवीडी के लिए भुगतान करके मेल के माध्यम से पूरे उबंटू ओएस प्राप्त कर सकते हैं। उसी तरह से आप एक डी-लाइन मित्र को आपको डीबी फ़ाइलें या यहां तक ​​कि वीएलसी जैसे पैकेज के लिए स्रोत फ़ाइलों को भेजने के लिए कह सकते हैं। हालांकि यह सभी पैकेज के साथ एक पूर्ण डीवीडी भेजने के लिए इसके लायक हो सकता है। इस तरह से आप इसे उस डीवीडी से इंस्टॉल कर सकते हैं।


0

यह पूरी तरह से विस्तृत जवाब नहीं है, लेकिन उच्च स्तर पर आप यह कर सकते हैं:

  1. वांछित .deb pkgs प्राप्त करें (और उनकी एक सूची बनाएं) (उन पैकेजों को शामिल करें जो वे उस पर निर्भर करते हैं जो पहले से स्थापित नहीं हैं)
  2. एक उपयुक्त संग्रह बनाएं जिसमें उन्हें शामिल किया गया हो
  3. apt संग्रह को एक सीडी या USB पर कॉपी करें
  4. लक्ष्य प्रणाली में सीडी या यूएसबी डालें
  5. स्रोत के रूप में CD या USB apt संग्रह को शामिल करने के लिए लक्ष्य प्रणाली पर apt को कॉन्फ़िगर करें
  6. अपनी सूची से संकुल को स्थापित करें apt-get install (pkgs की सूची) के साथ

0

मैं लाइव सीडी को अनुकूलित करने और उन्हें स्थापित करने का सुझाव देता हूं।

आप http://packages.ubuntu.com/ फ़ाइल नाम पर भी फ़ाइलें डाउनलोड कर सकते हैं , लेकिन फिर आपको निर्भरता पर भी ध्यान देना होगा।


(मूल रूप से यह थोड़ा अलग प्रश्न का उत्तर था जो उस एक के साथ विलीन हो गया।)
जैकब

समय काम की हत्या
totti

0

एक और संभावना है कि रेमस्टर्स का उपयोग करें। यह उपकरण आपको अपने स्वयं के सिस्टम से एक आईएसओ छवि बनाने की अनुमति देता है और एक बूट करने योग्य USB छड़ी बनाने के बाद unetbootin के माध्यम से आप जितने चाहें उतने कंप्यूटरों के लिए एक अनुकूलित सिस्टम स्थापित कर सकते हैं।


लेकिन बाद में उन्हें कैसे अपडेट करें?
एलियाह कगन

0

मेरे पास कुछ सरल सुझाव हैं। आप लाइब्रेरी जा सकते हैं। आप चाहते हैं कि ऑपरेटिंग सिस्टम के लिए कंप्यूटर अनुभाग में देखें, उनमें से कुछ पुस्तकों में उनके अंदर डीवीडी है। इसके अलावा, यदि आप सबसे पुराना ऑपरेटिंग सिस्टम चाहते हैं, तो मैं इस वेबसाइट को फिर से तैयार करूँगा जहाँ आप मामूली शुल्क पर डीवीडी खरीद सकते हैं। www.ubuntu.com/download/desktop।


0

यह प्रश्न थोड़ा पुराना है इसलिए इस समय एक उत्तर निरर्थक हो सकता है, लेकिन शायद आप dpkg-offline का उपयोग करके भी प्रयास कर सकते हैं । Bzr स्थापित करें, फिर:

bzr branch lp:dpkg-offline

वहाँ एक ट्यूटोरियल और एक रीडमी फ़ाइल शामिल है।

मान लें कि आप Ubuntu 14.04 am6464 सिस्टम पर git इंस्टॉल करना चाहते हैं, भले ही आपका सिस्टम उदा 12.04 i386 हो, आप यह कर सकते हैं:

  • ubuntu-14.04-Desktop-amd64.iso छवि डाउनलोड करें
  • Daud dpkg-offline ubuntu-14.04-desktop-amd64.iso git
  • आप एक टारगेट प्राप्त करेंगे जिसे आप लक्ष्य प्रणाली में ले जा सकते हैं, इसमें बीज पैकेज (गिट) और इसकी सभी निर्भरताएँ होंगी। इसमें स्थानीय रिपॉजिटरी को जोड़ने के लिए एक सहायक स्क्रिप्ट भी शामिल है, ताकि आप apt-getअपने पैकेजों को स्थापित करने के लिए उपयोग कर सकें ।

dpkg-ऑफ़लाइन 10.04 के बाद से किसी भी उबंटू डेस्कटॉप संस्करण के साथ काम करेगा (मैंने पुराने संस्करणों के साथ परीक्षण नहीं किया है लेकिन उन्हें भी काम करना चाहिए ), और 12.10 के बाद से किसी भी Ubuntu सर्वर संस्करण के साथ। यह भी मेजबान वास्तुकला की परवाह किए बिना amd64, i386 और armhf छवियों के साथ काम करना चाहिए। दोबारा, मैंने arm64 या powerpc / ppc64el के साथ परीक्षण नहीं किया है, लेकिन वे भी काम कर सकते हैं।

डिस्क्लेमर: मैंने dpkg-offline लिखा है।


यह बहुत अच्छा है, हालांकि मुझे लगता है कि स्क्रिप्ट का उपयोग करने के लिए पूरे डिस्ट्रो को डाउनलोड करना ओवरकिल है, काश यह केवल आवश्यक पैकेजों को निर्दिष्ट करके काम कर सकता है और डिस्ट्रो को लक्षित कर सकता है
जेवियर लोपेज़

0

कुछ संकुल स्थापित usb-stick पर स्थापित हैं। मैंने अनइंस्टॉल कर दिया network-managerऔर इसे फिर से इंस्टॉल करना चाहता हूं ।

इस प्रकार मुझे वह छड़ी मिली जिससे मैंने ऑपरेटिंग सिस्टम स्थापित किया (लुबंटू 17.10)। ये था/dev/sdb

छड़ी को एक पथ पर ( /tmp/mntमेरे मामले में) माउंट करें

mkdir /tmp/mnt
sudo mount /dev/sdb1 /tmp/mnt

फिर, मैं /etc/apt/sources.listकेवल सम्‍मिलित करता हूं

deb file:///tmp/mnt/ main universe

फिर, मैं करता हूं

sudo apt-get update

और मैं स्थापित कर सकता हूं network-manager

नोट: यह ऊपर दिए गए प्रश्न का उत्तर नहीं हो सकता है, लेकिन इस प्रश्न को देखते समय मैंने इसे देखा था।


1
आपको संभवतः बैकअप लेना चाहिए sources.listऔर फिर इसे पुनर्स्थापित भी करना चाहिए ।
चाई टी। रेक्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.