সমস্ত ইনস্টল করা প্যাকেজ তালিকাভুক্ত কিভাবে


1883

আমি সমস্ত ইনস্টল করা প্যাকেজগুলির একটি তালিকা একটি পাঠ্য ফাইলে আউটপুট করতে চাই যাতে আমি এটি পর্যালোচনা করতে পারি এবং অন্য সিস্টেমে বাল্ক-ইনস্টল করতে পারি। আমি এই কিভাবে করব?


7
এটি ইতিমধ্যে এখানে উত্তর ছিল ।
সাইমন কুইগলি

2
বাহ, উত্তরগুলির মধ্য দিয়ে যাওয়া
এগুলি

2
এই জাতীয় পাঠ্য ফাইল থেকে আমি কীভাবে একটি নতুন সিস্টেমে বাল্ক ইনস্টলেশন করব?
এলিজিয়াম

2
@ মাডিভাদ এই প্যাকেজ পরিচালকদের একবার জীবনকে সহজ করার কথা ভাবা হয়েছিল ...
রেনা নাইফেনিগার

উত্তর:


2134

উবুন্টু 14.04 এবং উপরে

aptউবুন্টু 14.04 এবং তার উপরে টুল এই খুব সহজ করে তোলে।

apt list --installed

পুরানো সংস্করণ

স্থানীয়ভাবে ইনস্টল হওয়া প্যাকেজগুলির তালিকা পেতে আপনার টার্মিনালে এটি করুন:

dpkg --get-selections | grep -v deinstall

( -vট্যাগটি "উল্টে" গ্রাফিকগুলি মিলে যায় না এমন লাইনগুলি ফেরত দিতে)

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

dpkg --get-selections | grep postgres

packagesআপনার ডেস্কটপে ডাকা একটি পাঠ্য ফাইলে সেই তালিকাটি সংরক্ষণ করতে আপনার টার্মিনালে এটি করুন:

dpkg --get-selections | grep -v deinstall > ~/Desktop/packages

বিকল্পভাবে, সহজভাবে ব্যবহার করুন

dpkg -l

(আপনাকে সুপারিশার হিসাবে এই কমান্ডগুলির কোনও চালানোর দরকার নেই, সুতরাং sudoএখানে বা অন্য কোনও প্রয়োজনীয় রূপগুলি প্রয়োজনীয় নয়)


37
তারপরে, নতুন কম্পিউটারে ইনস্টল করার সময় cat ~/Desktop/packages > sudo dpkg --set-selections && sudo apt-get dselect upgrade উত্সটি করুন
কোয়ানহেড

13
ডিপিকেজির সিনট্যাক্সটি ২০০ since সাল থেকে সামান্য পরিবর্তিত হতে পারে কারণ @ ক্যানহেড, আদেশটি আমার পক্ষে কাজ করে নি। sudo dpkg --set-selections < ~/Desktop/packages && sudo apt-get -u dselect-upgradeকৌতুক করে
জেমস

218
দ্রষ্টব্য যে এটি কোন প্যাকেজগুলি ব্যবহারকারী দ্বারা সুস্পষ্টভাবে ইনস্টল করা হয়েছিল এবং কোনটি নির্ভরতা হিসাবে ইনস্টল করা হয়েছিল তা ট্র্যাক করে না। এর অর্থ হ'ল আপনি যদি অন্য কোনও মেশিনে আপনার সেটআপটি পুনরায় তৈরি করতে এই পদ্ধতিটি ব্যবহার করেন তবে আপনি যখন কোনও প্রদত্ত প্যাকেজটি সরিয়ে ফেলেন তখন অ্যাপটি অযৌক্তিক নির্ভরতা অপসারণ করতে সক্ষম হবে না।
intuited

73
এটি অত্যন্ত দুঃখজনক এবং আশ্চর্যজনক যে @ মন্তব্যের মন্তব্য সম্প্রদায়টি আরও ভাল করে বোঝেনি। নতুন উবুন্টু সংস্করণে কেবল পুরানো প্যাকেজগুলি পুনরায় লোড করা ভাল ধারণা (?) নয় এমন পরামর্শ দেওয়ার আগে আরও "উচ্চতর রেটযুক্ত" অবদানকারীরা কি আরও বেশি চিন্তাভাবনা বন্ধ করবেন? সমস্ত dpkg বিকল্পের সাথে আমি এখনও দেখতে পাচ্ছি না যে কোনও ব্যবহারকারীর দ্বারা 'এক্সট্রেসিভলি' ইনস্টল করা প্যাকেজগুলি বের করে যাতে এই তালিকাটি পুনরায় লোড করা যায় এবং এর নির্ভরতা ইনস্টল করার অনুমতি দেওয়া যেতে পারে; আমি এটি জানতে পছন্দ করব - দয়া করে তথ্যটি ভাগ করুন। ইতিমধ্যে, আপনাকে পুনরায় ইনস্টল করার জন্য প্যাকেজগুলির সত্যিকারের প্রয়োজনের একটি তালিকা তৈরি করুন এবং এটি চালান
রিক্যালসিন

62
আমরা সকলেই জানি যে লিনাক্স ফটোগ্রাফিক মেমরি ছাড়াই লোকেদের বৈষম্যমূলক করে তবে গুরুত্ব সহকারে, এতে কী হবে apt list installed। কোনও দিন আমাদের "সহজ জিনিসগুলি সহজ রাখুন" নীতিটি নিয়মতান্ত্রিকভাবে ব্যর্থ হওয়া বন্ধ করা উচিত।

413

স্পষ্টভাবে ইনস্টল করা প্যাকেজগুলি পেতে (কেবল নির্ভরতা হিসাবে ইনস্টল করা হয়নি), আপনি চালাতে পারেন

aptitude search '~i!~M'

এটিতে একটি সংক্ষিপ্ত বিবরণও অন্তর্ভুক্ত থাকবে, যা আপনি চাইতে পারেন। যদি না হয় তবে বিকল্পটিও যুক্ত করুন -F '%p', যেমন কার্তিক ৮87 দ্বারা উল্লিখিত।


তবুও অন্য বিকল্পটি ফাইলটিকে অনুলিপি করা বলে মনে হচ্ছে /var/lib/apt/extended_statesযা এই ফর্ম্যাটে একটি পাঠ্য ফাইল ডাটাবেস:

Package: grub-common
Architecture: amd64
Auto-Installed: 0

Package: linux-headers-2.6.35-22-generic
Architecture: amd64
Auto-Installed: 1

Auto-Installed: 0 ইঙ্গিত দেয় যে প্যাকেজটি স্পষ্টভাবে ইনস্টল করা হয়েছিল এবং এটি কেবল নির্ভরতা নয়।


52
এটি সঠিক উত্তর হওয়া উচিত। নির্ভরতা তালিকা কেন?
স্ট্যাভ্রোস করোকিঠাকিস

13
এই উচিত জবাব, কিন্তু ব্যবহার প্রবণতা একটু অবিশ্বস্ত Multiarch জন্যই বর্তমানে (পথে সংশোধন করা হয়েছে), দুর্ভাগ্যবশত। কেবলমাত্র স্পষ্টভাবে ইনস্টল হওয়া প্যাকেজগুলির তালিকা এবং এটি করার একটি উপায় নির্দেশ করার জন্য এখনও +1 (এটি বর্তমানে 11.10+ তে কাজ করবে না)।
gertvdijk

4
নিখুঁত (কিছুক্ষণ আগে) এর জন্য "ফিক্স রিলিজ করা হয়েছে" :)
gertvdijk

11
এটি উবুন্টু 13.10 এ ম্যানুয়ালি ইনস্টল করা প্যাকেজগুলি নয়, সমস্ত প্যাকেজ তালিকাভুক্ত করে।
ইমন নেরবোন

5
একই ফলাফল অর্জন করার উপায় আছে apt-getকি?
জাভিয়ের আরিয়াস

203

অ্যাপটি কমান্ড দ্বারা ইচ্ছাকৃতভাবে ইনস্টল করা সমস্ত প্যাকেজগুলি (নির্ভরতা হিসাবে নয়) তালিকাভুক্ত করতে নিম্নলিখিত চালনা করুন:

(zcat $(ls -tr /var/log/apt/history.log*.gz); cat /var/log/apt/history.log) 2>/dev/null |
  egrep '^(Start-Date:|Commandline:)' |
  grep -v aptdaemon |
  egrep '^Commandline:'

এটি প্রথমে তালিকাভুক্ত পুরানো কমান্ড সহ বিপরীত সময় ভিত্তিক ভিউ সরবরাহ করে:

Commandline: apt-get install k3b
Commandline: apt-get install jhead
...

ইনস্টলেশন ডেটা সিএনপটিক ব্যবহারও দেখায়, তবে বিশদ বিবরণ ছাড়াই (ইনস্টলেশন তারিখের সাথে একই):

(zcat $(ls -tr /var/log/apt/history.log*.gz); cat /var/log/apt/history.log) 2>/dev/null |
  egrep '^(Start-Date:|Commandline:)' |
  grep -v aptdaemon |
  egrep -B1 '^Commandline:'

নিম্নলিখিত প্রদান:

Start-Date: 2012-09-23  14:02:14
Commandline: apt-get install gparted
Start-Date: 2012-09-23  15:02:51
Commandline: apt-get install sysstat
...

3
বা (zgrep এবং আপডেট বার্তাগুলি অপসারণ সহ):zgrep -hE '^(Start-Date:|Commandline:)' $(ls -tr /var/log/apt/history.log*.gz ) | egrep -v 'aptdaemon|upgrade' | egrep -B1 '^Commandline:'
belacqua

3
এই পদ্ধতির মিস প্যাকেজগুলি ইনস্টল করা কি dpkg??
ড্রিভিকো

5
উপরের সাধারণ উত্তরগুলি সাধারণ ব্যবহারকারীর পক্ষে ভাল। এই পদ্ধতিটি মেশিনে করা সমস্ত কাস্টমাইজেশনকে ব্যাকট্র্যাক করার জন্য সেরা, এটি বেস চিত্র থেকে কী সরিয়ে নেওয়া বা যুক্ত করা হয়েছিল তাও দেখায়, এটি এটি সম্পাদন করার ক্রমটিতে তাদের তালিকাভুক্ত করে এবং আপনাকে মনে রাখতে সাহায্য করে যে এগুলি আবার অন্য সিস্টেমে যুক্ত করার সঠিক ক্রম।
অলগ্যামার

3
@ ড্রেভিকো আপনি সঠিক, এটি dpkg দিয়ে ইনস্টল হওয়া প্যাকেজগুলির তালিকা করে না
স্টিভ বুজনস

3
সংগঠিত রাখার জন্য এটি বেশ সুবিধাজনক
জেরেমিফেলিক্স

191

বর্তমানে ইনস্টল করা প্যাকেজগুলির একটি ব্যাকআপ তৈরি করুন:

dpkg --get-selections > list.txt

তারপরে (অন্য সিস্টেমে) সেই তালিকা থেকে ইনস্টলেশন পুনরুদ্ধার করুন:

dpkg --clear-selections
sudo dpkg --set-selections < list.txt

বাসি প্যাকেজগুলি থেকে মুক্তি পেতে:

sudo apt-get autoremove

ব্যাকআপ সময়ের মতো ইনস্টল করার জন্য (যেমন সেট করা প্যাকেজগুলি ইনস্টল করা dpkg --set-selections):

sudo apt-get dselect-upgrade

5
অন্য মেশিনে পুনরুদ্ধার সম্পর্কে দুর্দান্ত পরামর্শ। +1 টি।
ড্রয় নোকস

15
2 টি ভিন্ন উবুন্টু 12.04 মেশিনের মধ্যে স্থানান্তরিত হওয়া এই পদ্ধতিটি আমার সিস্টেমকে ভেঙে দিয়েছে। এটি কিছুক্ষণ সময় নিয়েছে যতক্ষণ না আমি বুঝতে পেরেছিলাম যে কোনওরকম ubuntu-desktopআনইনস্টল হয়ে গেছে - সম্ভবত কোনও dpkg কমান্ডের কারণে। সাবধানতা অবলম্বন করুন, ক্ষতিটি সারতে আমার কয়েক ঘন্টা সময় লেগেছে!
কার্ল ফ্রিস্ক

1
এবং কখনও কখনও সিস্টেম একটি অ্যাপ্লিকেশন আপডেট করে যা আপনি বিশেষত চান যে সিস্টেমটি এটি কখনও স্পর্শ না করে, কমান্ডের শেষে এটি ফায়ার করে sudo apt-mark hold name-your-package । এটি বর্তমান সংস্করণে আপগ্রেড করা থেকে আপাত-প্রাপ্তিকে আটকাবে যা আপডেট করার প্রক্রিয়াটির জন্য ডিফল্ট।
ফারন

77
apt-mark showmanual

ম্যান পেজ স্টেট:

ম্যানুয়ালি ইনস্টল করা প্যাকেজগুলির একটি তালিকা মুদ্রণ করবে

সুতরাং, কেবলমাত্র এই প্যাকেজগুলি ইনস্টল হওয়ার কারণে অন্তর্ভুক্ত সমস্ত নির্ভরতা ছাড়াই স্পষ্টত ইনস্টল হওয়া প্যাকেজগুলির একটি তালিকা দেওয়া উচিত (যদিও এতে প্যাকেজগুলি ডিফল্ট প্রাথমিক ইনস্টলের অংশ ছিল) অন্তর্ভুক্ত।

ফলাফলটিকে একটি পাঠ্য ফাইলে আউটপুট করতে:

apt-mark showmanual > list-manually-installed.txt

ডেবিয়ান "অ্যাপটি-মার্ক শোম্যানুয়াল" তে "স্কিজে" কাজ করে না তবে "হুইজি"
ওয়াদিহ এম।

11
অন্যান্য উত্তরগুলির মতো, apt-mark showmanualসত্যই না। এটি স্বয়ংক্রিয়ভাবে ইনস্টল হওয়া প্যাকেজগুলির তালিকাসমূহ, সম্ভবত বেস ইনস্টলের অংশ lists
mivk

8
ভাল প্রশ্নটি ইনস্টলড প্যাকেজগুলির জন্য ছিল এবং এটি সমস্ত ইনস্টল করা প্যাকেজগুলি স্বয়ংক্রিয়ভাবে ইনস্টল করা নির্ভরতা বিয়োগ করে। এটিতে প্রাথমিক প্যাকেজগুলি প্রাথমিক ইনস্টলের অংশ হিসাবে অন্তর্ভুক্ত থাকে। আমার ধারণা আপনি ডিফল্ট ইনস্টলগুলির একটি তালিকা পেতে একটি তাজা ইনস্টল এ এটি চালাতে পারেন এবং তারপরে পার্থক্যটি দেখতে এটি থেকে বিয়োগ করুন।
টিম টিসডাল

5
কেউ নিজে ইনস্টল করা প্যাকেজ তালিকা এই বিকল্প উল্লেখ: apt list --manual-installed
পাবলো এ

41

dpkg-query(পরিবর্তে dpkg --get-selections, যা ইনস্টল না হওয়া কিছু প্যাকেজ তালিকাবদ্ধ করে):

dpkg-query -W -f='${PackageSpec} ${Status}\n' | grep installed |  sort -u | cut -f1 -d \ > installed-pkgs

বা:

dpkg -l | grep ^ii | sed 's_  _\t_g' | cut -f 2 > installed-pkgs

# for pkg in `cat installed-pkgs`; do apt-get install -y $pkg; doneদ্বিতীয় সিস্টেমে টাইপ করা আমি এটি তৈরি করেছি যাতে এটি প্যাকেজগুলি ইনস্টল করে।
ব্যবহারকারী9869932

1
@ জুলিয়ানোমেরা: apt-get install -y $(< installed-pkgs)এটি তৈরি করবে যাতে একবারে দ্রুতগতিতে রান আসে এবং একবারে সমস্ত নির্ভরতার যত্ন নেয়।
জামাদগনি

@ জুলিয়ানোমেরা ... আমি ভুল হয়ে থাকলে আমাকে সংশোধন করতে হবে তবে ইনস্টল করার আগে নির্ভরতার সাথে একটি অ্যাপ্লিকেশন তৈরি করা সাধারণত হবে sudo apt-get build-dep name-package; sudo apt-get install name-package; ?
ফারন

39

সমস্ত ইনস্টল করা প্যাকেজ তালিকাবদ্ধ করতে,

dpkg -l |awk '/^[hi]i/{print $2}' > 1.txt

অথবা

aptitude search -F '%p' '~i' > 1.txt

অথবা

dpkg --get-selections > 1.txt

দ্রষ্টব্য:
আপনি ফলাফলটি আপনার হোম ফোল্ডারে 1.txt ফাইল পাবেন বা আপনি নিজের পথ নির্দিষ্ট করতে পারেন।


35

আপনি আপনার ইনস্টল করা প্যাকেজের বর্তমান অবস্থা সংরক্ষণ করতে সিন্যাপটিক ব্যবহার করতে পারেন। সিনাপটিক-এ, "ফাইল / সেভ মার্কিংস" নির্বাচন করুন, রাষ্ট্রটি সংরক্ষণের জন্য ফাইলটির নাম লিখুন এবং "পুরো রাষ্ট্রটি সংরক্ষণ করুন, কেবল পরিবর্তনগুলিই নয়" বাক্সটি পরীক্ষা করে দেখুন।

এ থেকে সংরক্ষণ করা ফাইলটি সিন্যাপটিকের "ফাইল / পঠন চিহ্ন" ব্যবহার করে একটি নতুন মেশিনে লোড করা যায়।


34

আমি ব্লুপ্রিন্ট ব্যবহার করার পরামর্শ দিচ্ছি । যদিও এটি সার্ভারগুলির জন্য ডিজাইন করা হয়েছে, এটি ডেস্কটপগুলি থেকেও ব্যবহার করা যেতে পারে। এটি একটি শেল স্ক্রিপ্ট / শেফ / পুতুল তৈরি করবে যা আপনি আপনার সমস্ত প্যাকেজ পুনরায় ইনস্টল করতে ব্যবহার করতে পারেন।


আমি একটি সম্পূর্ণ আয়না চেষ্টা করছি না, তবে কেবল কনফিগার ফাইলগুলি গ্রহণ করার ঘটনাটি দুর্দান্ত। আমি এই মুহুর্তের জন্য এমন একটি সরঞ্জাম খুঁজছিলাম, আপনাকে অনেক ধন্যবাদ!
tbolender

33

আপনি এখন 12.04-এ প্যাকেজগুলি পুনরায় ইনস্টল করতে চান, তাই না?

যদি তা হয় তবে এটি খুব সহজ। আপনার একটি "উবুন্টু একক সাইন অন অ্যাকাউন্ট" দরকার হবে। (পুনরায় ইনস্টল করার আগে এটি তৈরি করুন যাতে আপনার সিস্টেম সিঙ্ক হয়))

  1. সফ্টওয়্যার সেন্টারে যান এবং ফাইল মেনুতে "কম্পিউটারের মধ্যে সিঙ্ক করুন ..." বিকল্পটি সন্ধান করুন।

  2. আপনি এটিতে ক্লিক করলে আপনি দেখতে পাবেন আপনার কম্পিউটারটি নিবন্ধিত এবং আপনার কম্পিউটারে সমস্ত অ্যাপ্লিকেশনগুলির একটি তালিকা।

  3. আপনি যখন তাজা ইনস্টল করবেন, তখন সেই কম্পিউটারটি একটি নতুন কম্পিউটার হিসাবে বিবেচিত হবে।

  4. আপনাকে কেবল আপনার উবুন্টু অ্যাকাউন্টে সাইন ইন করতে হবে এবং আপনার পূর্ববর্তী কম্পিউটারটি প্রদর্শিত হবে।

  5. এটিতে ক্লিক করুন; আপনি সমস্ত অ্যাপ্লিকেশনগুলির একটি তালিকা পাবেন। আপনি যে অ্যাপটি ইনস্টল করতে চান তাতে "ইনস্টল" নির্বাচন করুন Select


আমি প্রতিবার উবুন্টু ওয়ান সার্ভার থেকে বিশাল ডাউনলোড থেকে রোধ করতে নতুন কম্পিউটারে আমার কম্পিউটারের জন্য একই নামটি সেট করেছি। আপনি কি মনে করেন এটি আমার জন্য কাজ করে?
অ্যালেন

32

অপটিক (দুটি কমান্ড লাইন এবং জিইউআই) নামে একটি সরঞ্জাম রয়েছে যা আপনাকে সমস্ত ইনস্টল করা প্যাকেজগুলির তালিকা দেখতে সহায়তা করতে পারে, সেগুলির মধ্যে কয়েকটি নির্বাচন / অপছন্দ করতে, একটি ব্যাকআপ তালিকা তৈরি করতে এবং তারপরে একই প্যাকেজের সেটটি পুনরুদ্ধার করতে পারে অন্য সিস্টেম।

স্থাপন করা:

sudo add-apt-repository -y ppa:teejee2008/ppa
sudo apt-get update
sudo apt-get install aptik

আরও তথ্য: https://teejeetech.in/aptik/

এখানে চিত্র বর্ণনা লিখুন

স্ক্রিনশটে যেমন দেখা যায়, অ্যাপটিক আপনাকে পিপিএগুলি ব্যাকআপ ও পুনরুদ্ধার করতে দেয় যা অবশ্যই ইনস্টল হওয়া কিছু প্যাকেজ ইনস্টল করার প্রয়োজন হবে।


আপনি যদি জিইউআই চান, আপনার apt-get install aptik-gtkপাশাপাশি ইনস্টল করতে হবে
মাদুকা জয়লথ

30

Apt-ক্লোন । এই প্যাকেজটি অ্যাপ্লিকেশন ভিত্তিক সিস্টেমে প্যাকেজগুলি ক্লোন / পুনরুদ্ধার করতে ব্যবহার করা যেতে পারে।

  • এটি প্যাকেজগুলি, সোর্স.লিস্ট, কীরিং এবং স্বয়ংক্রিয়ভাবে ইনস্টল থাকা অবস্থায় সংরক্ষণ / পুনরুদ্ধার করবে।
  • এটি dpkg-repack ব্যবহার করে ডাউনলোডযোগ্য প্যাকেজগুলি আর সংরক্ষণ / পুনরুদ্ধার করতে পারে।

উৎস: man apt-clone

এপিটি-ক্লোন ubiquityআপগ্রেড প্রক্রিয়ার জন্য (উবুন্টু ইনস্টলার) দ্বারা ব্যবহৃত হয় । এটি dpkg --get-selectionsসমাধানের চেয়ে অনেক ভাল কারণ:

  1. এটি সমস্ত সংগ্রহস্থলের তথ্য সংরক্ষণ করে।
  2. এটি স্বয়ংক্রিয়ভাবে কী প্যাকেজ ইনস্টল করা হয়েছিল তা ট্র্যাক করে।
  3. এটি স্থানীয়ভাবে ইনস্টল করা ডিইবি ফাইলগুলি পুনরায় সরিয়ে ফেলতে দেয়।

কিভাবে ব্যবহার করে

  1. ইনস্টল করুন

    sudo apt-get install apt-clone
    
  2. ব্যাকআপ রাখ

    sudo apt-clone clone path-to/apt-clone-state-ubuntu-$(lsb_release -sr)-$(date +%F).tar.gz
    
  3. ব্যাকআপ পুনরুদ্ধার

    sudo apt-clone restore path-to/apt-clone-state-ubuntu.tar.gz
    

    নতুন প্রকাশে পুনরুদ্ধার করুন:

    sudo apt-clone restore-new-distro path-to/apt-clone-state-ubuntu.tar.gz $(lsb_release -sc)
    

এটি সহজ জিজেপড টার ফাইল তৈরি করে যা অন্যান্য মেশিনে পুনরুদ্ধার করার আগে সহজেই সম্পাদনা ও পর্যালোচনা করা যেতে পারে। এখানে এর কাঠামোর উদাহরণ:

/
├── etc
│   └── apt
│       ├── preferences.d
│       ├── sources.list
│       ├── sources.list.d
│       │   ├── anton_-ubuntu-dnscrypt-vivid.list
│       │   ├── maarten-baert-ubuntu-simplescreenrecorder-vivid.list
│       │   └── megasync.list
│       ├── trusted.gpg
│       └── trusted.gpg.d
│           ├── anton__ubuntu_dnscrypt.gpg
│           ├── anton__ubuntu_dnscrypt.gpg~
│           ├── maarten-baert_ubuntu_simplescreenrecorder.gpg
│           └── maarten-baert_ubuntu_simplescreenrecorder.gpg~
└── var
    └── lib
        └── apt-clone
            ├── extended_states
            ├── installed.pkgs
            └── uname

26

আছে ইউনিক্স StackExchange উপর একটি মহান ব্যাখ্যা বর্ণনা করে যে কিভাবে নির্ভরতা যেমন ইনস্টল করা প্যাকেজ তালিকা প্রবণতা ব্যবহার করতে এবং কীভাবে আপনার উবুন্টু মুক্তির জন্য ডিফল্ট প্যাকেজ তালিকা সঙ্গে সেই তালিকাটি তুলনা।

ডেস্কটপ সংস্করণগুলি 12.04 এবং নতুনের জন্য ম্যানিফেস্ট ফাইলটি পেতে, এই সাইটটি দেখুন , আপনার মুক্তি চয়ন করুন এবং সিডি চিত্রের নীচে ফাইল বিভাগে স্ক্রোল করুন। আপনি "উবুন্টু-12.04.4-ডেস্কটপ-এমডি 64 + ম্যাক.মেনিফেস্ট" এর মতো কিছু পাবেন যা আপনার আর্কিটেকচারের সাথে মিলে যায়।

সার্ভার সংস্করণগুলির জন্য আপনাকে আইএসও থেকে ম্যানিফেস্ট ফাইলটি সংগ্রহ করতে হবে যা মূল সিস্টেমটি ইনস্টল করতে ব্যবহৃত হয়েছিল। একটি ভিপিএস বা ক্লাউড সার্ভারের জন্য, আপনার সরবরাহকারী ছবিগুলি উপলভ্য করতে পারে বা আপনার তাদের সাথে যোগাযোগের প্রয়োজন হতে পারে।

নতুন সার্ভারে ইনস্টল করার জন্য সংশোধনী সহ রেফারেন্সড পোস্ট থেকে কোডটি ব্যবহার করে এখানে একটি উদাহরণ।

পুরানো সার্ভার (অন্য পোস্টের কোড, আউটপুট ফাইলটিতে সংরক্ষণ করা হয়েছে):

aptitude search '~i !~M' -F '%p' --disable-columns | sort -u > currently-installed.list
wget -qO - http://mirror.pnl.gov/releases/precise/ubuntu-12.04.3-desktop-amd64.manifest \
  | cut -f1 | sort -u > default-installed.list
comm -23 currently-installed.list default-installed.list > user-installed.list

নতুন সার্ভারে, scp ব্যবহার করে ফাইলটি অনুলিপি করুন, তারপরে প্রতিটি লাইনে 'ইনস্টল' যুক্ত করতে সেড ব্যবহার করুন (-i একটি ইনলাইন-প্রতিস্থাপন সম্পাদন করে)। তারপরে আপনি তালিকাটি 'dpkg --set-Seferences' এ ইনপুট হিসাবে ব্যবহার করতে পারেন এবং apt-get দিয়ে প্যাকেজগুলি ইনস্টল করতে পারেন:

scp user@oldserver:user-installed.list .
sed -i 's/$/\tinstall/' user-installed.list
sudo dpkg --set-selections < user-installed.list
sudo apt-get dselect-upgrade

এই কাজটি শুরুর আগে, আমি শুরুতে উল্লিখিত পোস্টের সমস্ত অংশ পড়ার এবং বোঝার পরামর্শ দিই এবং তারপরে অনুসন্ধানের নিদর্শনগুলির বিশদগুলির জন্য প্রবণতা রেফারেন্স গাইডের সাথে পরামর্শ করব ।


25

আপনি aptলগের নীচে /var/log/apt/এবং dpkgলগের নিচে দেখতে পারেন/var/log/

এবং আপনি কেবল একটি আদেশ দিয়ে ইনস্টল করা প্যাকেজগুলির তালিকা পেতে পারেন:

dpkg -l | grep '^ii '

23

আমি অবাক হয়েছি ঠিক এই উদ্দেশ্যেapt-cache তৈরি করা কমান্ডটি উপরে বর্ণিত হয়নি ...

apt-cache pkgnames

আরও তথ্যের জন্য, চালান apt-cache --help:

** এপটি-ক্যাশে তথ্য অনুসন্ধানের জন্য ব্যবহৃত একটি নিম্ন-স্তরের সরঞ্জাম
এপিটি-র বাইনারি ক্যাশে ফাইলগুলি থেকে

আদেশগুলি:
   জেনচাচ - প্যাকেজ এবং উত্স ক্যাশে উভয়ই তৈরি করুন
   showpkg - একটি প্যাকেজের জন্য কিছু সাধারণ তথ্য প্রদর্শন করুন
   showrc - উত্স রেকর্ড প্রদর্শন করুন
   পরিসংখ্যান - কিছু প্রাথমিক পরিসংখ্যান দেখান Show
   ডাম্প - সম্পূর্ণ ফাইলটি একটি ক্ষত আকারে প্রদর্শন করুন
   ডাম্পভেল - স্টডআউটে একটি উপলভ্য ফাইল মুদ্রণ করুন
   আনমেট - আনমেট নির্ভরতা দেখান
   অনুসন্ধান - একটি রেজেক্স প্যাটার্নের জন্য প্যাকেজ তালিকাটি অনুসন্ধান করুন
   প্রদর্শন - প্যাকেজটির জন্য একটি পঠনযোগ্য রেকর্ড প্রদর্শন করুন
   নির্ভর করে - একটি প্যাকেজের জন্য কাঁচা নির্ভরতার তথ্য দেখান
   rd depends - একটি প্যাকেজের জন্য বিপরীত নির্ভরতা তথ্য দেখান
   pkgnames - সিস্টেমে সমস্ত প্যাকেজের নাম তালিকাভুক্ত করুন
   ডট্টি - গ্রাফভিজের জন্য প্যাকেজ গ্রাফ তৈরি করে
   xvcg - xvcg এর জন্য প্যাকেজ গ্রাফ তৈরি করুন
   নীতি - নীতি সেটিংস দেখান

বিকল্প:
  - এই সাহায্য পাঠ্য।
  -p =? প্যাকেজ ক্যাশে।
  -s =? উত্স ক্যাশে।
  -Q অগ্রগতি সূচক অক্ষম করুন।
  -i আনমেট কমান্ডের জন্য শুধুমাত্র গুরুত্বপূর্ণ ডিপগুলি দেখান।
  -c =? এই কনফিগারেশন ফাইলটি পড়ুন
  -o =? একটি নির্বিচার কনফিগারেশন বিকল্প সেট করুন, যেমন -o dir :: cache = / tmp
আরও তথ্যের জন্য অ্যাপটি-ক্যাশে (8) এবং apt.conf (5) ম্যানুয়াল পৃষ্ঠা দেখুন।
**

5
TLDR; অবশেষে আমি এটি পেয়েছি যে apt --installed listসেরা ফলাফল দেয় (উপরের উত্তরের উত্তর হিসাবে প্রস্তাবিত Although যদিও apt-cache pkgnamesপ্রথম নজরে কৌতুকটি করা মনে হচ্ছে, এটি "সিস্টেমের সমস্ত প্যাকেজ" তালিকাভুক্ত করে (উপরের সহায়তার পাঠ্য অনুসারে), যার মধ্যে রয়েছে এমন প্যাকেজগুলিও অন্তর্ভুক্ত রয়েছে যা অ্যাপটি সম্পর্কে জানে । কিন্তু আসলে ইনস্টল করা হয় না সেখানে একটা ব্যাপার --installedবিকল্প কিন্তু এটা দিয়ে কাজ বলে মনে হচ্ছে না pkgnames
sxc731

2
apt-cache pkgnames | wc -l55909প্যাকেজ দেয় (সিস্টেমটি জানে), যেখানে aptitude search '~i!~M' | wc -lদেয় 2160(প্যাকেজগুলি স্পষ্টভাবে ইনস্টল করা হয়, নির্ভরতা ছাড়াই)।
নিক্ষেপ করুন


18

নীচের কমান্ডটি সমস্ত ইনস্টল করা প্যাকেজ তালিকাভুক্ত করবে,

grep ' installed ' /var/log/dpkg.log /var/log/dpkg.log.1 | awk '{print $5}' | sort -u

.1 সেখানে বোঝায় যে লগটি ঘোরানো হয়েছিল, যদি সে ক্ষেত্রে হয় তবে /var/log/dpkg.log*সমস্ত ঘোরানো লগগুলি পেতে গ্রেপ করা ভাল ।
স্টিভ বুজনস

17

এই সম্প্রদায় উইকিটিকে সাহায্য করুন - আপ টু ডেট সমাধান যুক্ত করুন।


dpkg, xargs, এবং apt-get

এই কমান্ডটি ইনস্টল হওয়া প্যাকেজগুলি সহ একটি পাঠ্য ফাইল তৈরি করতে হবে:

dpkg -l | awk  '{print $2}' > package_list.txt

তালিকাভুক্ত প্যাকেজগুলির বাল্ক ইনস্টলেশন সম্পন্ন করতে আপনাকে 'প্যাকেজ_লিস্ট.টেক্সট' সম্পাদনা করতে হবে। একটি পাঠ্য সম্পাদক ব্যবহার করে ফাইলের শীর্ষে অদ্ভুত লাইনগুলি সরান। তারপরে আপনি এই আদেশটি তৈরি ফাইল থেকে প্যাকেজ ইনস্টল করতে ব্যবহার করতে পারেন:

xargs < package_list.txt apt-get install -y

অ্যাপট-ক্যাশে, এক্সার্গস, এবং এপেট-গেট

আপনি যদি তালিকাটি ব্যবহার করে সমস্ত বর্তমান প্যাকেজ ইনস্টল করতে চান তবে এই পদ্ধতিটি ব্যবহার করুন ( যার মধ্যে স্বয়ংক্রিয়ভাবে ইনস্টল হওয়া ইত্যাদি)।

'অ্যাপটি-ক্যাশে পিকনেমেস' এর প্রতিক্রিয়াটিকে একটি ফাইলে আউটপুট করুন আমরা কেবল "প্যাকেজ_লিস্ট.টেক্সট" নাম দেব। আপনি এটি দিয়ে এটি সম্পাদন করতে পারেন:

apt-cache pkgnames > package_list.txt

তারপরে আপনি যখন "package_list.txt" থেকে প্যাকেজ ইনস্টল করতে চান আপনি এই কমান্ডটি ব্যবহার করবেন:

xargs < package_list.txt apt-get install -y

উপযুক্ত চিহ্ন, xargs, এবং apt-get

আমরা কমান্ডটি apt-mark showmanualউবুন্টুতে ম্যানুয়ালি বা প্রাথমিকভাবে ইনস্টল করা প্যাকেজগুলির একটি তালিকা দিতে ব্যবহার করতে পারি । আমরা কোনও ফাইলকে আউটপুট দিতে চাই আমরা কেবল "প্যাকেজ-তালিকা.টিএসটিএক্স" বলব। এটি সম্পাদন করতে এই আদেশটি ব্যবহার করুন:

apt-mark showmanual > package-list.txt

"Package_list.txt" ফাইলটি থেকে প্যাকেজ ইনস্টল করতে আমরা যে কমান্ডটি ব্যবহার করব তা নীচে।

xargs < package_list.txt apt-get install -y

অপটিক মাইগ্রেশন ইউটিলিটি

উবুন্টু-ভিত্তিক বিতরণগুলি আপগ্রেড / পুনরায় ইনস্টল করার পরে সফ্টওয়্যার প্যাকেজগুলির পুনরায় ইনস্টলেশন সহজতর করার জন্য ইউটিলিটি।
[ লঞ্চপ্যাড | অপটিক ]

অপটিকের তথ্যের জন্য, এর অফিসিয়াল পৃষ্ঠাটি দেখার চেষ্টা করুন এবং একটি স্ক্রিনশটের জন্য এখানে ক্লিক করুন বা এই বিভাগটির শেষে দেখুন।

অ্যাপটিক ইনস্টল করা সহজ। এই পদক্ষেপগুলি অনুসরণ করুন:

  1. এর সাথে পিপিএ যুক্ত করুন:
    sudo add-apt-repository -y ppa:teejee2008/ppa

  2. নীচের কমান্ডটি সহ আপডেট করুন
    sudo apt-get update

  3. অ্যাপটিক ব্যবহার করে ইনস্টল করুন :
    sudo apt-get install aptik

অপটিক মাইগ্রেশন ইউটিলিটি v16.5.2



1
apt-mark showmanualঅন্যদের মধ্যে আউটপুটটিতে বাশ, ,ক্য এবং জর্গ অন্তর্ভুক্ত রয়েছে। তাদের কি সেখানে থাকার কথা?
wjandrea

@ ওয়েজান্দ্রেয়া 'অ্যাপ্ট-মার্ক শোম্যানুয়াল' এর আউটপুটটিতে আমার উত্পন্ন তালিকায় বাশ ও ইউনিটিও অন্তর্ভুক্ত রয়েছে। কমান্ডটি ম্যানুয়ালি ইনস্টল করা এবং শুরুতে ডাব্লু / উবুন্টু ইনস্টল করার কারণে এটি স্বাভাবিক হওয়া উচিত।
ডেভিড আপনার বন্ধু

16

নামের ফাইলটিতে ইনস্টল করা প্যাকেজগুলির একটি তালিকা সংরক্ষণ করতে installed_packages.txt, চালান:

dpkg-query --list >> installed_packages.txt

3

আমি মনে করি apt list --installedবা পিছনে dpkg-query --listডাকা ফাইলটি /var/lib/dpkg/statusযেখানে প্যাকেজগুলির সমস্ত তথ্য দাড়ি রয়েছে সেগুলি নোট করা বা বাস্তবে ব্যবহার করা আকর্ষণীয় ।

সুতরাং আপনি যদি প্যাকেজগুলির কেবলমাত্র সুপার এক্সটেন্ডেড তালিকাকেই মোকাবেলা করতে চান cat /var/lib/dpkg/status

দ্রষ্টব্য: /var/lib/dpkg/statusফাইলটি পরিবর্তন করবেন না ।


3

এপিটি প্যাকেজ ছাড়াও অনেকগুলি জিইউআই প্যাকেজ আজকাল স্ন্যাপ হিসাবে বিতরণ করা হয় ।

যদি আপনার প্যাকেজটি খুঁজে পাওয়া যায় না apt list --installed, তবে চেষ্টা করুন snap list:

$ snap list

Name                  Version                     Rev   Tracking  Publisher       Notes
gimp                  2.10.10                     165   stable    snapcrafters    -
gnome-calculator      3.32.1                      406   stable/…  canonical✓      -
keepassxc             2.4.1                       267   stable    keepassxreboot  -
...

/snap/binPATH এ যুক্ত করাও একটি ভাল ধারণা যাতে আপনি এগুলি টার্মিনাল থেকে শুরু করতে পারেন (নন-রুট ব্যবহারকারীদের জন্য স্বয়ংক্রিয়ভাবে সম্পন্ন হয়)।


1

প্যাকেজ dctrl-toolsপ্রদান grep-statusপ্যাকেজ হিসাবে আপনার সিস্টেমে ইনস্টল হিসাবে চিহ্নিত তালিকাটি পেতে টুল:

sudo apt install dctrl-tools

ব্যবহার:

grep-status -FStatus -sPackage -n   "install ok installed"

দেখা : man dctrl-tools


1

https://www.rosehosting.com/blog/list-all-installed-packages-with-apt-on-ubuntu/ :

উবুন্টুতে ইনস্টল করা সফ্টওয়্যার প্যাকেজগুলি তালিকাভুক্ত করুন

আপনার মেশিনে ইনস্টল করা সফ্টওয়্যার প্যাকেজগুলি তালিকাভুক্ত করতে আপনি নিম্নলিখিত কমান্ডটি ব্যবহার করতে পারেন:

sudo apt list --installed

কমান্ডের আউটপুটটি নিম্নলিখিত প্যাকেজের সাথে খুব সমান হবে, বর্তমানে কোন প্যাকেজ ইনস্টল করা হয়েছে তার উপর নির্ভর করে:

Listing...
acl/xenial,now 2.2.52-3 amd64 [installed]
adduser/xenial,xenial,now 3.113+nmu3ubuntu4 all [installed]
apache2/xenial-updates,xenial-security,now 2.4.18-2ubuntu3.1 amd64 [installed]
apache2-bin/xenial-updates,xenial-security,now 2.4.18-2ubuntu3.1 amd64 [installed,automatic]
apache2-data/xenial-updates,xenial-updates,xenial-security,xenial-security,now 2.4.18-2ubuntu3.1 all [installed,automatic]
apache2-doc/xenial-updates,xenial-updates,xenial-security,xenial-security,now 2.4.18-2ubuntu3.1 all [installed]
apache2-utils/xenial-updates,xenial-security,now 2.4.18-2ubuntu3.1 amd64 [installed]
apparmor/xenial-updates,now 2.10.95-0ubuntu2.5 amd64 [installed,automatic]
apt/xenial-updates,now 1.2.19 amd64 [installed]
apt-utils/xenial-updates,now 1.2.19 amd64 [installed]
...

2. কম প্রোগ্রাম ব্যবহার করুন

পুরো আউটপুটটি সহজেই পড়তে আপনি lessপ্রোগ্রামটি ব্যবহার করতে পারেন ।

sudo apt list --installed | less

৩. জিআরইপি কমান্ডটি ব্যবহার করুন

আপনি grepপ্রোগ্রামটি ব্যবহার করে আউটপুটটির মাধ্যমে একটি নির্দিষ্ট প্যাকেজ সন্ধান করতে পারেন ।

sudo apt list --installed | grep -i apache

4. অ্যাপাচি অন্তর্ভুক্ত সমস্ত প্যাকেজ তালিকা

উপরের কমান্ডের আউটপুট সমস্ত প্যাকেজ তালিকাভুক্ত করবে যা apacheতাদের নাম অন্তর্ভুক্ত করে।

apache2/xenial-updates,xenial-security,now 2.4.18-2ubuntu3.1 amd64 [installed]
apache2-bin/xenial-updates,xenial-security,now 2.4.18-2ubuntu3.1 amd64 [installed,automatic]
apache2-data/xenial-updates,xenial-updates,xenial-security,xenial-security,now 2.4.18-2ubuntu3.1 all [installed,automatic]
apache2-doc/xenial-updates,xenial-updates,xenial-security,xenial-security,now 2.4.18-2ubuntu3.1 all [installed]
apache2-utils/xenial-updates,xenial-security,now 2.4.18-2ubuntu3.1 amd64 [installed]
libapache2-mod-php/xenial,xenial,now 1:7.0+35ubuntu6 all [installed,automatic]
libapache2-mod-php7.0/xenial-updates,now 7.0.13-0ubuntu0.16.04.1 amd64 [installed,automatic]
libapache2-mod-security2/xenial,now 2.9.0-1 amd64 [installed]
libapache2-modsecurity/xenial,xenial,now 2.9.0-1 all [installed]

অ্যাপটি প্যাকেজের নামগুলি মেলাতে প্যাটার্নগুলি সমর্থন করে এবং ইনস্টলড (--installed)প্যাকেজগুলি, আপগ্রেডযোগ্য (--upgradeable) প্যাকেজগুলি বা সমস্ত উপলব্ধ (--all-versions)প্যাকেজ সংস্করণগুলি তালিকাভুক্ত করতে পারে ।

5. ডিপিকেজি প্রোগ্রামটি ব্যবহার করুন

আরেকটি বিকল্প যে আপনি আপনার ইনস্টল সফটওয়্যার প্যাকেজ তালিকা ব্যবহার করতে পারেন উবুন্টু ভিপিএস হয় dpkgকমান্ড।

sudo dpkg -l

কমান্ডের আউটপুট আপনাকে প্যাকেজের নাম, সংস্করণ, আর্কিটেকচার এবং প্যাকেজ সম্পর্কে সংক্ষিপ্ত বিবরণ সম্পর্কিত তথ্য সরবরাহ করবে। অবশ্যই, আপনি grepনির্দিষ্ট প্যাকেজটি অনুসন্ধান করতে আবার প্রোগ্রামটি ব্যবহার করতে পারেন ।

sudo dpkg -l | grep -i apache

আউটপুট নীচের মত দেখতে হবে:

ii  apache2                       2.4.18-2ubuntu3.1                     amd64        Apache HTTP Server
ii  apache2-bin                   2.4.18-2ubuntu3.1                     amd64        Apache HTTP Server (modules and other binary files)
ii  apache2-data                  2.4.18-2ubuntu3.1                     all          Apache HTTP Server (common files)
ii  apache2-doc                   2.4.18-2ubuntu3.1                     all          Apache HTTP Server (on-site documentation)
ii  apache2-utils                 2.4.18-2ubuntu3.1                     amd64        Apache HTTP Server (utility programs for web servers)
rc  apache2.2-common              2.2.22-6ubuntu5.1                     amd64        Apache HTTP Server common files
ii  libapache2-mod-php            1:7.0+35ubuntu6                       all          server-side, HTML-embedded scripting language (Apache 2 module) (default)
rc  libapache2-mod-php5           5.5.9+dfsg-1ubuntu4.16                amd64        server-side, HTML-embedded scripting language (Apache 2 module)
ii  libapache2-mod-php7.0         7.0.13-0ubuntu0.16.04.1               amd64        server-side, HTML-embedded scripting language (Apache 2 module)
ii  libapache2-mod-security2      2.9.0-1                               amd64        Tighten web applications security for Apache
ii  libapache2-modsecurity        2.9.0-1                               all          Dummy transitional package
ii  libapr1:amd64                 1.5.2-3                               amd64        Apache Portable Runtime Library
ii  libaprutil1:amd64             1.5.4-1build1                         amd64        Apache Portable Runtime Utility Library
ii  libaprutil1-dbd-sqlite3:amd64 1.5.4-1build1                         amd64        Apache Portable Runtime Utility Library - SQLite3 Driver
ii  libaprutil1-ldap:amd64        1.5.4-1build1                         amd64        Apache Portable Runtime Utility Library - LDAP Driver
.

এই টিউটোরিয়ালটির প্রতিযোগিতার সাথে আপনি উবুন্টুতে ইনস্টলড প্যাকেজগুলি কীভাবে তালিকাভুক্ত করবেন তা সফলভাবে শিখেছি।


0

এটি করার অনেক উপায় আছে। আপনি যদি আমার মতো CentOS ব্যবহার করছেন তবে আপনি এগুলি ব্যবহার করতে পারেন: ১ yum list installedrpm -qa

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