एक अलग hdd के लिए आवेदन कैसे स्थापित करें?


10

मैं खिड़कियों के साथ बहुत अच्छा था, अब मैं एक पूर्ण बेवकूफ की तरह महसूस कर रहा हूं।

मेरे पास उबंटू के लिए एक एसएसडी है और मैं अपने अधिकांश कार्यक्रमों को एक अलग एचडीडी में स्थापित करना चाहता हूं लेकिन मुझे कोई सुराग नहीं है कि कैसे।
सभी खोजों को मैंने केवल दोहरे-बूट इंस्टॉलेशन के साथ बदलने की कोशिश की है।

  • (RESOLVED ->) मुझे "/ etc /" का पता लगाने में भी परेशानी हो रही है। विशेष रूप से, Conky को संशोधित करने के लिए।
    इस शब्द को खोजना केवल उदाहरणों को बदलता है जहां लोग आपको इस फ़ाइल तक पहुंचने के लिए कह रहे हैं, न कि इसे कैसे प्राप्त करें।

1
इस पर एक नज़र डालें , यह आपको शुरू कर देगा।
मिच

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

मैंने माउंट और fstab टैग जोड़े; आप ऐसा कर सकते हैं जिसे आप विशेष रूप से विभाजन या ड्राइव पर माउंट करने के लिए विशेष रूप से विशेष फाइलसिस्टम सेट करके वर्णन कर रहे हैं।
belacqua

@belacqua क्या इसके अलावा कोई और तरीका है? मैं किसी अन्य ड्राइव पर केवल विशेष फ़ाइल सिस्टम नहीं चाहता, मैं विशेष कार्यक्रमों के सभी फ़ाइल सिस्टम चाहता हूं। इस तरह मैं उन्हें अपने सिस्टम से कितना सघन कर सकता हूं, मेरे SSD पर पूरी तरह से गेम / वर्चुअलबॉक्स / आदि होने और पूरी तरह से HDDs में से एक पर libreoffice / थंडरबर्ड जैसी चीजें।
plaguedoctor

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

जवाबों:


22

विंडोज और जीएनयू / लिनक्स के बीच एक बड़ा अंतर है। विंडोज पर यह आम है, कि प्रत्येक प्रोग्राम एक साथ सभी पुस्तकालयों पर निर्भर करता है जो एक अलग फ़ोल्डर में स्थापित है। यह अक्सर कई बार स्थापित पुस्तकालयों की वजह से व्यर्थ डिस्क स्थान की ओर जाता है, प्रत्येक प्रोग्राम के लिए जो उनका उपयोग करता है।

लिनक्स पर, फाइलसिस्टम पदानुक्रम मानक (FHS) के बाद प्रोग्राम इंस्टॉल किए जाते हैं । इसका मतलब यह है कि, जिन पुस्तकालयों पर कार्यक्रम निर्भर करते हैं, वे सभी एक सामान्य समर्पित स्थान पर स्थापित किए जाते हैं, ताकि वे आम तौर पर केवल एक बार स्थापित हों, चाहे वे कितने भी कार्यक्रमों का उपयोग करें। इसके अलावा, प्रोग्राम इस तरह से बनाए जाते हैं, कि वे सभी एक निश्चित पुस्तकालय के एक ही संस्करण का उपयोग करते हैं। यह डिस्क स्थान (और रनटाइम पर RAM) को बचाता है, लेकिन इसकी खामी है, कि कोई व्यक्ति अलग-अलग विभाजन या हार्ड डिस्क पर प्रोग्राम को स्वतंत्र रूप से स्थापित नहीं कर सकता है, कम से कम संपादन सिस्टम कॉन्फ़िगरेशन फ़ाइलों के बिना नहीं है (उदाहरण के लिए /etc/ld.so.conf.d विभिन्न पुस्तकालय फ़ोल्डरों को शामिल करने के लिए)।

चूंकि डेबियन पैकेज सिस्टम एफएचएस को ध्यान में रखते हुए लागू किया गया था, इसलिए जहां तक ​​मुझे पता है, डेबियन पैकेज को एक फ़ोल्डर से अलग करने के लिए कोई आसान तरीका नहीं है जिसे वे अलग-अलग करने के लिए इरादा थे और उन्हें मैन्युअल रूप से स्थानांतरित किए बिना काम करना है। और बाद में फ़ाइलों का संपादन। यह है, क्योंकि संकलन समय पर पथों को अक्सर हार्डकोड किया जाता है। इसलिए भले ही आप एक अलग फ़ोल्डर में पैकेज स्थापित करते हैं, उदाहरण के dpkg --instdir=folder/ package.debलिए कमांड लाइन पर उपयोग करके , प्रोग्राम अभी भी '/ etc' में इसके कॉन्फ़िगरेशन की तलाश करेगा, न कि 'फ़ोल्डर / etc', लेकिन साथ में भेजे गए कॉन्फिग फाइल्स पाठ्यक्रम का पैकेज 'फ़ोल्डर / आदि' में स्थापित किया गया था ... कार्यक्रम को मेनू में नहीं जोड़ा जाएगा, क्योंकि मेनू फाइलें '/ usr / साझा अनुप्रयोगों' में होनी चाहिए, न कि फ़ोल्डर / usr / share / में अनुप्रयोग।

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

एक अन्य विकल्प, जो linuxfromscratch पर सुझाव दिया गया था , पैकेज को एक उपयुक्त स्थान पर अनपैक करना और फिर संबंधित FHS स्थानों में सभी स्थापित फ़ाइलों के लिए प्रतीकात्मक लिंक बनाना है।

चूँकि टिप्पणियों में आप गेम का जिक्र कर रहे थे: उबंटू सॉफ्टवेयर सेंटर के माध्यम से नहीं खरीदे जाने वाले कई गेम इंस्टॉलर के रूप में आते हैं, और फिर इन्हें किसी भी फ़ोल्डर में स्थापित किया जा सकता है, आमतौर पर आपके होम डायरेक्टरी का सबफ़ोल्डर। विंडोज गेम, जो कि वाइन का उपयोग करके चलाया जा रहा है, जिसे आप चाहते हैं किसी भी निर्देशिका में भी स्थापित किया जा सकता है। वाइन के लिए WINEPREFIX नामक एक पर्यावरण चर मौजूद है जिसके साथ आप अपने स्वयं के वर्चुअल C: ड्राइव सहित कई स्वतंत्र WINE फ़ोल्डर्स सेट कर सकते हैं। अधिक जानकारी के लिए वाइन मैन पेज पढ़ें।

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



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

1
मैं परेशान नहीं होता। बस माउंट / आदि / कहीं और। यह ssd से डिस्क लोड का 90% लेता है।
रिनजविंड

5

टी एल; डॉ

  1. बाहरी USB डिस्क को उबंटू के संस्करण के साथ बूट करें जिसे आपने अभी स्थापित किया है और मैं मान रहा हूं कि /dev/sdaआपका SSD है और /dev/sdbआपका HDD है।

  2. आपके द्वारा स्थापित किए जाने वाले सभी एप्लिकेशनों को शामिल करने के लिए अपने HDD पर एक पार्टीशन बनाएँ ( मान लें कि 64 GB) gparted का उपयोग कर रहा हूँ और मैं यह मान रहा हूँ कि यह तीसरा विभाजन होगा जो आप अपने HDD पर बना रहे हैं ( /dev/sbd3)

  3. निम्नलिखित कमांड निष्पादित करें:

    mkdir /media/apps
    mount /dev/sdb3 /media/apps
    mkdir /media/apps/usr
    cp --preserve=all --recursive /opt /media/apps
    cp --preserve=all --recursive /usr/bin /media/apps/usr
    
  4. sudo nanofstabपर /dev/sda1/etc/बाद निम्नलिखित सही शामिल करने के लिए /प्रवेश (रूट निर्देशिका)

    /dev/sdb3  /media/apps          ext4   errors=remount-ro  0   0 
    /opt       /media/apps/opt      none   defaults,bind      0   0
    /usr/bin   /media/apps/usr/bin  none   defaults,bind      0   0
    
  5. रिबूट और परीक्षण

लंबा संस्करण:

यूनिक्स / लिनक्स / उबंटू को एक डेस्कटॉप के साथ एक सर्वर ओएस के रूप में कल्पना की गई थी, जबकि विंडोज को डेस्कटॉप ओएस होने की कल्पना की गई थी और सर्वर बाद में आया।

तो लिनक्स फाइलसिस्टम पदानुक्रम मानक आपको असीमित मात्रा में ड्राइव / विभाजन को कहीं भी रखने की अनुमति देता है और उपयोगकर्ता के लिए पूरी पारदर्शिता के साथ उन्हें सही ड्राइव या विभाजन के साथ बांध देता है जबकि विंडोज ओएस अधिकतम 24 सुलभ ड्राइव / तक सीमित है विभाजन (के C:माध्यम Z:से A:और B:फ्लॉपी डिस्क के लिए आरक्षित हैं)

अधिकांश आवेदनों आप अपने आप में स्थापित करने के स्थापित /opt/और /usr/binइसलिए उबंटू सामान्य रूप से स्थापित करने और उसके बाद का उपयोग चरणों मैं कहाँ assuing कर रहा हूँ नीचे, /dev/sdaअपने एसएसडी है, /dev/sdbअपने HDD है और /dev/sddअपने USB स्टिक है:

  1. आपके द्वारा अभी-अभी स्थापित किए गए उबंटू के संस्करण के साथ बाहरी यूएसबी डिस्क को बूट करें।
  2. आपके द्वारा स्थापित किए जाने वाले सभी एप्लिकेशनों को शामिल करने के लिए अपने HDD पर एक पार्टीशन बनाएँ ( मान लें कि 64 GB) gparted का उपयोग कर रहा हूँ और मैं यह मान रहा हूँ कि यह तीसरा विभाजन होगा जो आप अपने HDD पर बना रहे हैं ( /dev/sbd3)
  3. एक अस्थायी निर्देशिका में उस विभाजन को माउंट करें:

    mkdir /media/apps
    mount /dev/sdb3 /media/apps
    
  4. मौजूदा /optऔर /usr/binवहां कॉपी करें :

    mkdir /media/apps/usr
    cp --preserve=all --recursive /opt /media/apps
    cp --preserve=all --recursive /usr/bin /media/apps/usr
    
  5. sudo nanofstabपर /dev/sda1/etc/बाद निम्नलिखित सही शामिल करने के लिए /प्रवेश (रूट निर्देशिका)

    /dev/sdb3  /media/apps          ext4   errors=remount-ro  0   0 
    /opt       /media/apps/opt      none   defaults,bind      0   0
    /usr/bin   /media/apps/usr/bin  none   defaults,bind      0   0
    
  6. रिबूट और परीक्षण

  7. यदि सब कुछ सही ढंग से काम करता है, तो USB स्टिक को फिर से रिबूट करें और सब कुछ हटा दें /dev/sda1/optऔर /dev/sda1/usr/binडिस्क स्थान को पुनः प्राप्त करने के लिए अभी भी अप्रचलित निर्देशिकाओं का उपयोग पहले से कहीं और किया गया है।

चेतावनी: अंतिम आदेश भी एक HW विफलता के कारण बढ़ते नहीं होने की संभावना के मामले में आपके सिस्टम को क्रैश कर सकता है/dev/sbd3


विंडोज के पास वास्तव में गैर-रूट पथ पर ड्राइव को माउंट करने के लिए एक ही समर्थन है, अब लगभग एक दशक तक। और उन ड्राइव लेटर्स को प्रति उपयोगकर्ता मैप किया जा सकता है, इसलिए H: \ per-user होम डायरेक्टरी हो सकता है। कोई बड़ी आश्चर्य की बात नहीं: विंडोज एनटी लाइन वीएमएस से प्रेरित है, बहुत अधिक बहु-उपयोगकर्ता प्रणाली है। न ही यूनिक्स की कल्पना एक सर्वर ओएस के रूप में की गई थी: एटीएंडटी ने फोन स्विच किए। और UNIX विशेष रूप से अपनी प्रेरणा से अलग है बहु-उपयोगकर्ता पहले से कम बहु-उपयोगकर्ता उन्मुख होने में - बस एक फोन स्विच में इसके लिए कोई आवश्यकता नहीं थी।
एमएसल्टर्स

@MSalters वाह, एटी एंड टी फोन स्विच बिट का पता नहीं था ... मुझे वीएमएस / एनटी भाग याद है और उस एम $ ने डीईसी के प्रिंसिपल इंजीनियर, और ओएस / 2 भाग को भी काम पर रखा है, लेकिन इससे पहले , यह एक एकल था। उपयोगकर्ता पूर्व-खाली मल्टी-टास्किंग डेस्कटॉप शेल। > :-) अपडेट किया गया!
फाबबी

1
विंडोज गैर-अक्षर ड्राइव ( 1:, !:आदि) का भी समर्थन करता है , जैसा कि डॉस के कुछ संस्करणों (अन्य पात्रों, [:आदि के साथ) ने किया था। विंडोज 24 विभाजन तक सीमित नहीं है (वॉल्यूम माउंट बिंदु देखें)। विंडोज के शुरुआती संस्करणों (95 से पहले) ने सहकारी मल्टी-टास्किंग का उपयोग किया, न कि पूर्व-खाली, विंडोज प्रक्रियाओं के बीच; केवल डॉस वीएम पूर्व-खाली बहु-कार्य (बढ़ाया मोड में) थे।
स्टीफन किट

1
मैं UNIX ग्रुप में AT & T में काम करता था। यह एक फोन स्विच के रूप में जीवन शुरू नहीं किया था।
स्टीववेग

@MSalters यूनिक्स को फोन स्विच के साथ कुछ भी नहीं लगता है, इसके अलावा जिम्मेदार कंपनी ने दोनों को विकसित किया है; और ऐसा लगता है कि जिस समय नाम गढ़ा गया था, उसके आसपास बहुत पहले से ही मल्टी-यूजर था। एसई आरसी पर यह जवाब देखें ।
पीटर -

2

मैंने अपने Chrome बुक के लिए जो समाधान उपयोग किया है, वह पैकेजों को स्थापित नहीं करना है, बल्कि उनके .tar.gz समकक्ष को डाउनलोड करना है।

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.