उपयोगकर्ता स्थापित एप्लिकेशन (पैकेज नहीं) कैसे सूचीबद्ध करें?


28

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

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

मैंने इसी तरह के दर्जनों सवाल पढ़े हैं और जवाब पोस्ट करने वाले लोग आमतौर पर ओपी प्रश्न योग्यता के करीब भी नहीं पहुंचते हैं। कृपया ध्यान दें कि मेरे प्रश्न में 'उपयोगकर्ता स्थापित' शामिल है।

उत्तर: यह वर्तमान में उबंटू लिनक्स में संभव नहीं है। (हालांकि निकटतम के रूप में tijybba का जवाब चुनना)

जवाबों:


30

आप वास्तव में Ubuntu सॉफ्टवेयर सेंटर का उपयोग कर सकते हैं , जैसा कि यहां स्क्रीनशॉट में दिखाया गया है:

उबंटू सॉफ्टवेयर सेंटर: "इंस्टॉल किया गया" -मेनू

इसके अलावा आप इसे सिनैप्टिक बॉटम लिस्ट चयनों में देख सकते हैं।

आपके द्वारा cd /etc/apt/sources.list.d/ && cat *.listआपके सिस्टम में सभी रिपॉजिटरी की सूची मिल जाएगी।

आप बैकअप और अपनी रिपॉजिटरी को अपडेट करने के लिए Y PPA मैनेजर भी कर सकते हैं ।


दूसरी विधि

[चूंकि इस पद्धति में सभी पैकेजों को स्थापित करना शामिल है, लेकिन अगर हमें लगता है कि नव स्थापित ओएस में पहले से ही 90% पैकेज होंगे, तो यह वर्तमान लोगों को अनदेखा करेगा और नए मैन्युअल रूप से जोड़े गए लोगों को स्थापित करेगा, जो केवल आपके मैन्युअल रूप से इंस्टॉल किए गए एप्लिकेशन होंगे]

यह विधि यहाँ से

sudo dpkg --get-selections > installed-applications.txt

यह होम फ़ोल्डर में txt फ़ाइल में इंस्टॉल किए गए एप्लिकेशन की एक सूची उत्पन्न करेगा।

उन्हीं अनुप्रयोगों को स्थापित करने के लिए इस फ़ाइल का उपयोग करने के लिए जो आपको करने होंगे (लेकिन इससे पहले कृपया सभी तृतीय पक्ष रिपॉजिटरी को भी जोड़ दें जैसा कि पुराने में मौजूद था)

sudo dpkg --set-selections < installed-applications.txt
sudo apt-get -y update
sudo apt-get dselect-upgrade

यह भी गुई रास्ते से संभव है

sudo add-apt-repository ppa:webupd8team/mintbackup && sudo apt-get update
sudo apt-get install mintbackup

यहाँ छवि विवरण दर्ज करें

मुझे लगता है कि छवि लगभग स्वयं बोलती है, आपके चयन का बैकअप लेती है, फिर नई स्थापना में इसे पुनर्स्थापित करती है।


PPA नहीं जोड़ सकते: 'ppa: ~ webupd8team / ubuntu / mintbackup'। '~ Webupd8team' नाम की टीम का कोई PPA नहीं है जिसका नाम 'ubuntu / mintbackup' है
alhelal

dpkg: चेतावनी: पैकेज स्थिति में उपलब्ध नहीं है और न ही उपलब्ध डेटाबेस में १५hark४: वायरशर्क और सभी अनुप्रयोगों के लिए।
अल्हेलल

11

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

उदाहरण के लिए:

$ # Save the current list of manually installed packages
$ apt-mark showmanual | sort > original-package-list

# ...time passes...

$ # Compare the old list with the current list
$ # (this will output a list of packages that have been installed by the user since the last command)
$ apt-mark showmanual | sort | comm -13 - original-package-list

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

या बस स्थापित किए गए सभी पैकेजों की सूची देखने के लिए, चलाएं dpkg-query -W -f'${PackageSpec}\n'


2

केवल रूट उबंटू के तहत पैकेजों को स्थापित कर सकता है, जो उपयोगकर्ता कर सकता है वह सिर्फ 1 है, सुडोलर्स केवल समान अधिकार वाले उपयोगकर्ता हैं।

हालाँकि आप लॉग देख कर बहुत सी जानकारी प्राप्त कर सकते हैं, आप देख सकते हैं

apt लॉग /var/log/apt/ dpkg लॉग इन के तहत लॉग इन करें/var/log/

और आप सिर्फ एक आदेश के साथ स्थापित संकुल की सूची प्राप्त कर सकते हैं:

dpkg -l | grep ii

आप मेरे प्रश्न को वैसे भी पुनः प्राप्त कर सकते हैं जब तक आप चाहते हैं कि मूल अर्थ बना रहे। यदि इसे 'sudoers इंस्टॉल किए गए एप्लिकेशन' कहा जाता है, तो ऐसा हो :) स्वाभाविक रूप से मैं अपने प्रश्न को 'सिस्टम इंस्टॉलेशन के बाद इंस्टॉल किए गए एप्लिकेशन को कैसे सूचीबद्ध करूं' के बारे में बता सकता हूं। "और आप स्थापित पैकेजों की सूची प्राप्त कर सकते हैं" - किस उद्देश्य के लिए?
बुकिक

+1 / var / log / apt के लिए। यदि आपने एप्ट-गेट के साथ सब कुछ स्थापित किया है, तो इस लॉग में 'कमांड लाइन:' की खोज आपको मैन्युअल रूप से इंस्टॉल किए गए सामान की एक अच्छी सूची प्रदान करती है।
drevicko

1

वास्तव में, आपके प्रश्न के अनुसार मैं देख रहा हूं कि यह निम्नलिखित कमांड आपको dpkg -l की आवश्यकता है grep ii। इसने हर स्थापित पैकेज को सूचीबद्ध किया जैसा कि यह मेरे लिए होना चाहिए। अब यह उपयोगकर्ता A या उपयोगकर्ता B नहीं कहता है लेकिन फिर यह एक सीमा है जो कि sudo की नहीं बल्कि सॉफ़्टवेयर केंद्र लॉग्स की है। EVEN sudo का उपयोग करने वाले उपयोगकर्ता को sudo कहा जाता है, इसलिए आप अभी भी कोई भी ऐप लॉग कर सकते हैं, जिसने sudo को कमांड चलाने के लिए कहा है। अब निश्चित रूप से आप इसे आसानी से प्राप्त कर सकते हैं, क्योंकि sudo का हिस्सा किसी भी उपयोगकर्ता के रूप में लॉगिन करने की क्षमता है [जिसकी sudo तक पहुँच है] यदि आप उनका पासवर्ड जानते हैं, तो उसे हैक करें, या यदि आपके पास सिस्टम पर वे अधिकार हैं, तो उसे बदल दें।

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

मुझे लगता है कि आप अपने लिए पूछ रहे हैं कि आपने सिस्टम स्थापित करने के बाद कौन से पैकेज स्थापित किए हैं ताकि आप या तो सेटअप को साफ कर सकें या एक नई मशीन को सेटअप कर सकें। यहाँ उत्तर पहले से ही बैकअप को बहाल करते हैं / पुनर्स्थापित करते हैं इसलिए हम इसे छोड़ देंगे।

चूंकि कोई आसान सीधा आगे का तरीका नहीं है जिससे यह पता लगाया जा सके कि किस उपयोगकर्ता ने पैकेज की स्थापना को एक बेहतर तरीका बताया है, ताकि कमांड को ऊपर और दूसरे उपयोगकर्ता द्वारा सभी स्थापित पैकेजों को सूचीबद्ध करने के लिए उपयोग किया जा सके और Google के लिए एक ब्राउज़र विंडो खुले और चलाने के लिए Google ने यह पता लगाने के लिए कि आपके सिस्टम को चालू रखने के लिए कौन से पैकेज आवश्यक हैं और कौन से नहीं हैं।

यहाँ छोड़ें अधिकांश फुलाना छोड़ें और सीधे उत्तर पर जाएं ...

आप अपने sudoers लॉग की समीक्षा करने के लिए भी देख सकते हैं कि किसने मुझे एक उदाहरण रेखा देने के लिए स्थापित किया था

May 15 11:26:30 <COMPUTERNAME> sudo:   <user who called sudo> : TTY=unknown ; PWD=/home/pariah (pwd file or auth method used to verify user) ; USER=root (User they were running as) ; COMMAND=/usr/bin/thunar (the command they ran)

तो यह इस समय मुझे बताता है और इस उपयोगकर्ता ने एक सूडो के लिए कॉल किया [वास्तव में इस मामले में gksu btw का उपयोग किया गया था], क्या उपयोगकर्ता sudo के पास उन्हें अनुमति के रूप में और बड़ी एक कमांड है जो उन्होंने चलाया!

अब अगर आप सुपो लॉग [/var/log/auth.log] के भीतर apt-get या समान के लिए grep करने वाले थे और पुराने लोगों के पास .0 .1 आदि होंगे जो अंत में संलग्न होंगे।

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

/var/log/apt/history.log और पुराने लॉग .gz संपीड़ित अभिलेखागार में हैं

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

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

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