विंडोज और जीएनयू / लिनक्स के बीच एक बड़ा अंतर है। विंडोज पर यह आम है, कि प्रत्येक प्रोग्राम एक साथ सभी पुस्तकालयों पर निर्भर करता है जो एक अलग फ़ोल्डर में स्थापित है। यह अक्सर कई बार स्थापित पुस्तकालयों की वजह से व्यर्थ डिस्क स्थान की ओर जाता है, प्रत्येक प्रोग्राम के लिए जो उनका उपयोग करता है।
लिनक्स पर, फाइलसिस्टम पदानुक्रम मानक (FHS) के बाद प्रोग्राम इंस्टॉल किए जाते हैं । इसका मतलब यह है कि, जिन पुस्तकालयों पर कार्यक्रम निर्भर करते हैं, वे सभी एक सामान्य समर्पित स्थान पर स्थापित किए जाते हैं, ताकि वे आम तौर पर केवल एक बार स्थापित हों, चाहे वे कितने भी कार्यक्रमों का उपयोग करें। इसके अलावा, प्रोग्राम इस तरह से बनाए जाते हैं, कि वे सभी एक निश्चित पुस्तकालय के एक ही संस्करण का उपयोग करते हैं। यह डिस्क स्थान (और रनटाइम पर RAM) को बचाता है, लेकिन इसकी खामी है, कि कोई व्यक्ति अलग-अलग विभाजन या हार्ड डिस्क पर प्रोग्राम को स्वतंत्र रूप से स्थापित नहीं कर सकता है, कम से कम संपादन सिस्टम कॉन्फ़िगरेशन फ़ाइलों के बिना नहीं है (उदाहरण के लिए /etc/ld.so.conf.d विभिन्न पुस्तकालय फ़ोल्डरों को शामिल करने के लिए)।
चूंकि डेबियन पैकेज सिस्टम एफएचएस को ध्यान में रखते हुए लागू किया गया था, इसलिए जहां तक मुझे पता है, डेबियन पैकेज को एक फ़ोल्डर से अलग करने के लिए कोई आसान तरीका नहीं है जिसे वे अलग-अलग करने के लिए इरादा थे और उन्हें मैन्युअल रूप से स्थानांतरित किए बिना काम करना है। और बाद में फ़ाइलों का संपादन। यह है, क्योंकि संकलन समय पर पथों को अक्सर हार्डकोड किया जाता है। इसलिए भले ही आप एक अलग फ़ोल्डर में पैकेज स्थापित करते हैं, उदाहरण के dpkg --instdir=folder/ package.deb
लिए कमांड लाइन पर उपयोग करके , प्रोग्राम अभी भी '/ etc' में इसके कॉन्फ़िगरेशन की तलाश करेगा, न कि 'फ़ोल्डर / etc', लेकिन साथ में भेजे गए कॉन्फिग फाइल्स पाठ्यक्रम का पैकेज 'फ़ोल्डर / आदि' में स्थापित किया गया था ... कार्यक्रम को मेनू में नहीं जोड़ा जाएगा, क्योंकि मेनू फाइलें '/ usr / साझा अनुप्रयोगों' में होनी चाहिए, न कि फ़ोल्डर / usr / share / में अनुप्रयोग।
आप निश्चित रूप से अपने स्रोत कोड से एक प्रोग्राम को मैन्युअल रूप से कॉन्फ़िगर और संकलित कर सकते हैं, ताकि यह द्विआधारी और डेटा भागों को स्थापित करने के लिए जहाँ भी आप चाहें, जबकि एफएचएस अनुरूप स्थानों पर कॉन्फ़िगरेशन फ़ाइलें स्थापित कर सकते हैं, लेकिन यह कुछ ऐसा है जिसके लिए मैं केवल सिफारिश करूंगा उन्नत उपयोगकर्ता। यदि आप स्रोत से संकलन करने जा रहे हैं, तो चेकवॉच पर एक नज़र डालें , एक उपकरण जो स्वचालित रूप से डेबियन पैकेज बनाता है।
एक अन्य विकल्प, जो linuxfromscratch पर सुझाव दिया गया था , पैकेज को एक उपयुक्त स्थान पर अनपैक करना और फिर संबंधित FHS स्थानों में सभी स्थापित फ़ाइलों के लिए प्रतीकात्मक लिंक बनाना है।
चूँकि टिप्पणियों में आप गेम का जिक्र कर रहे थे: उबंटू सॉफ्टवेयर सेंटर के माध्यम से नहीं खरीदे जाने वाले कई गेम इंस्टॉलर के रूप में आते हैं, और फिर इन्हें किसी भी फ़ोल्डर में स्थापित किया जा सकता है, आमतौर पर आपके होम डायरेक्टरी का सबफ़ोल्डर। विंडोज गेम, जो कि वाइन का उपयोग करके चलाया जा रहा है, जिसे आप चाहते हैं किसी भी निर्देशिका में भी स्थापित किया जा सकता है। वाइन के लिए WINEPREFIX नामक एक पर्यावरण चर मौजूद है जिसके साथ आप अपने स्वयं के वर्चुअल C: ड्राइव सहित कई स्वतंत्र WINE फ़ोल्डर्स सेट कर सकते हैं। अधिक जानकारी के लिए वाइन मैन पेज पढ़ें।
भले ही गेम / प्रोग्राम डेबियन पैकेज के रूप में आते हैं, आप पैकेज सामग्री को अपने पसंदीदा संग्रह प्रबंधक में देख सकते हैं। यदि खेल / ऑप्ट में स्थापित होने जा रहा है, तो आप आमतौर पर इसे एक अलग फ़ोल्डर में सुरक्षित रूप से स्थापित कर सकते हैं, क्योंकि / ऑप्ट अक्सर FHS का पालन नहीं करने वाले कार्यक्रमों के लिए इंस्टॉलेशन स्थान के रूप में उपयोग किया जाता है।