কোন অতিরিক্ত প্যাকেজগুলি সরানো হচ্ছে তা নিজেই যাচাই করার কোনও উপায় আছে?


8

উদাহরণস্বরূপ, ধরা যাক আমি "libopenshot11" সরানোর চেষ্টা করি, আমি পেয়েছি:

The following packages will be REMOVED:
  libopenshot11 openshot-qt python3-openshot

প্রথমে অপ্ট সরিয়ে না চালিয়ে আমি এটি কীভাবে খুঁজে পাব?


apt-get অপসারণ libopenshot11 -s
গ্রোভেলপ্লেক্স

উত্তর:


11

পাইথন এপিটি এপিআই এই জন্য একটি সংক্ষিপ্ত স্ক্রিপ্ট লিখতে ব্যবহার করা যেতে পারে:

#! /usr/bin/python3
import sys
from apt import cache

c = cache.Cache()
for pkg in sys.argv[1:]:
    c[pkg].mark_delete()   

print('\n'.join(pkg.name for pkg in c.get_changes() if pkg.marked_delete))

উদাহরণ:

$ apt-get remove -s bash | grep Remv  
Remv winusb [1.0.11+saucy1]
Remv gdm [3.18.3-0ubuntu2]
Remv gdm3 [3.18.3-0ubuntu2]
Remv bash [4.3-14ubuntu1.2] [inxi:amd64 lightdm:amd64 bash-completion:amd64 ]
Remv bash-completion [1:2.1-4.2ubuntu1.1] [inxi:amd64 lightdm:amd64 ]
Remv inxi [2.2.35-0ubuntu1] [lightdm:amd64 ]
Remv lightdm [1.18.3-0ubuntu1.1]

$ apt-cache rdepends bash --installed | sed '1,2d' | sort -u
  bash-completion
    bash:i386
  gdm3
  inxi
  lightdm
  winusb

$ ./check.py bash                                             
inxi
winusb
gdm
gdm3
bash
lightdm
bash-completion

অজগর সমাধান খুব পরিষ্কার। ধন্যবাদ!
সিকার

19

আপনি --simulateবা -sবিকল্পটি ব্যবহার করতে পারেন , যা আপনাকে দেখায় যে এপিটি যখন আপনি কোনও আদেশ না করে কোনও আদেশ না চালিয়ে যা করবেন, উদাহরণস্বরূপ ...

$ sudo apt remove -s file
Reading package lists... Done
Building dependency tree        
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libfile-stripnondeterminism-perl libltdl-dev libmail-sendmail-perl libsys-hostname-long-perl po-debconf
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED
  cracklib-runtime debhelper dh-autoreconf dh-strip-nondeterminism file gdebi gdebi-core libtool lintian ubuntu-standard
0 to upgrade, 0 to newly install, 10 to remove and 0 not to upgrade.
Remv cracklib-runtime [2.9.2-3]
Remv dh-autoreconf [13] [debhelper:amd64 ]
Remv debhelper [10.2.2ubuntu1] [dh-strip-nondeterminism:amd64 ]
Remv dh-strip-nondeterminism [0.032-1]
Remv gdebi [0.9.5.7+nmu1]
Remv gdebi-core [0.9.5.7+nmu1]
Remv ubuntu-standard [1.379]
Remv file [1:5.29-3] [lintian:amd64 libtool:amd64 ]
Remv libtool [2.4.6-2] [lintian:amd64 ]
Remv lintian [2.5.50.1]

আমরা দেখতে পাচ্ছি যে fileপ্যাকেজটি অপসারণ করা খুব খারাপ ধারণা হবে ...


কে পোস্ট করেছেন সবার আগে, আপনি নাকি আলবান?
NoOneIsre

@ ননআইনি কয়েক সেকেন্ডের মধ্যে আমাকে এখানে পান: /
জান্না

ঠিক আছে, আমি আপনার উভয় উত্তরকে উজ্জীবিত করেছি কারণ আপনার ব্যবহারের বিশদ রয়েছে এবং তাঁর (আমার ধারণা) ম্যান পৃষ্ঠাটি রয়েছে তবে আমি মনে করি যে দুটি উত্তর মিলিয়ে গৃহীত উত্তরগুলির চেয়ে উত্তম।
NoOneIs এখানে

@ ননইনিহলে এখানে যদি আলবান পোস্ট না করত তবে আমি আমার উত্তরটিতে ম্যান পৃষ্ঠার বিবরণ যুক্ত করতে পারতাম। আমি মনে করি যে এই সহজ সমাধানটি গৃহীতদের চেয়ে লোকেরা কী ব্যবহার করবে এমনটা সম্ভবত বেশি, তবে ওপি'র বিচক্ষণতা গ্রহণ করা এবং মুরুর উত্তর হ'ল উন্নত শ্রেণি :)
জান্ন্না

1
এই প্যাকেজগুলির বেশিরভাগই আসলে গুরুত্বপূর্ণ নয়, যদিও আমি এমন একটি পরিস্থিতিতে পৌঁছেছি যেখানে উবুন্টু-স্ট্যান্ডার্ড অপসারণের ফলে পরবর্তী স্বাবলম্ব বাদাম হয়ে যায়।
এলোমেলো 832

13

-sঅথবা --simulateবিকল্প ব্যবহার করা হয় সিমুলেট আসলে চলমান ছাড়া কোনো এপিটি কাজ।

সরকারী ব্যবস্থা থেকে :

 -s, --simulate, --just-print, --dry-run, --recon, --no-act
       No action; perform a simulation of events that would occur based on
       the current system state but do not actually change the system.
       Locking will be disabled (Debug::NoLocking) so the system state
       could change while apt-get is running. Simulations can also be
       executed by non-root users which might not have read access to all
       apt configuration distorting the simulation. A notice expressing
       this warning is also shown by default for non-root users
       (APT::Get::Show-User-Simulation-Note). Configuration Item:
       APT::Get::Simulate.
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.