আপনি কবে থেকে অপ্ট-গেট অটোরেমওয়ের মাধ্যমে অপ্ট-গেট রিমুভালটি ব্যবহার করবেন?


16

আমি বুঝতে পারি যে apt-get removeপ্যাকেজগুলি সরায় এবং apt-get autoremoveপ্রদত্ত প্যাকেজের জন্য নির্ভরতা পূরণের জন্য ইনস্টল করা প্যাকেজগুলি সরানো হবে। সুতরাং উদাহরণস্বরূপ, যদি আমি লিবারঅফিসটি ইনস্টল করেছি এবং এটি জাভা বলার উপর নির্ভরতা রাখে এবং কমান্ডটি চালানোর সময় এটি ইনস্টলের অংশ হিসাবে ইনস্টল করি apt-get libreoffice, তবে আমি কেন কমান্ডটি apt-get remove libreofficeঅনুসরণ করব apt-get autoremove? আমি কি কেবল কমান্ড চালাতে পারছি না apt-get autoremove libreoffice? কিংবা সমন্বয় apt-get removeএবং apt-get autoremoveএকটি ভিন্ন উদ্দেশ্যে?

উত্তর:


11

আপনি নির্ভরতা ট্র্যাকারকে কতটা বিশ্বাস করেন তার উপর এটি নির্ভর করে। প্রায় সর্বদা সঠিক হলেও, এমন সময় আসে যখন আপনি নির্ভরতা বজায় রাখতে চান, বিশেষত যখন আপনি কোনও বিকাশকারী বা পাওয়ার ব্যবহারকারী ব্যবহারকারী সফটওয়্যার ইনস্টল করেন যা সঞ্চিত্রে নেই।

আপনি যদি সর্বদা অ্যাপট-গেটের মাধ্যমে সফ্টওয়্যার ইনস্টল করেন, ব্যতিক্রম ছাড়াই এবং সমস্ত নির্ভরতা সঠিক হওয়ার বিষয়ে বিশ্বাস করেন (যা তারা সাধারণত) তবে আপনি কিছুটা apt-get autoremoveড্রাইভের জায়গা এবং সম্ভাব্য সুরক্ষা গর্তগুলির একটি হ্রাসযুক্ত এক্সপোজার ব্যবহার করতে এবং অর্জন করতে পারেন এটি এমন প্যাকেজগুলি সরিয়ে দেয় যাগুলির আর প্রয়োজন নেই এমন প্যাকেজ নেই।

তবে আপনি যদি ম্যানুয়ালি সফ্টওয়্যার ইনস্টল করেন, বা সফ্টওয়্যার বিকাশ করছেন বা সম্ভাব্য নির্ভরতা ত্রুটি মোকাবেলা করতে না চান, তবে সম্ভাব্য অব্যবহৃত প্যাকেজগুলি সাফ করার জন্য অটোমোরম ব্যবহার না করা সম্ভবত নিরাপদ পছন্দ choice আপনি apt-get autoremoveএখন থেকে এবং এখন বা না ব্যবহার করুন তা নির্বিশেষে আপনি সর্বদা সফ্টওয়্যার ব্যবহার করে মুছে ফেলবেনapt-get remove Package

উদাহরণস্বরূপ, যদি আমি ইনস্টল AwesomePackage, এটি নির্ভর করে হতে পারে AwesomeLibrary, এবং এইভাবে AwesomeLibraryস্বয়ংক্রিয়ভাবে একটি হিসাবে ইনস্টল করা হবে বশ্যতা । যখন আমি AwesomePackageঅটোরেমোভ ব্যবহারটি সরিয়ে ফেলব, অন্য কোনও প্যাকেজের নির্ভরতা না হওয়া পর্যন্ত এটিও AwesomeLibraryআনইনস্টল করা হবে। তবে যদি এর SuperPackageপ্রয়োজনও হয় AwesomeLibrary, বা যদি নির্ভরতা AwesomeLibrary( apt-get install AwesomeLibrary) হিসাবে স্বয়ংক্রিয়ভাবে আসার পরিবর্তে আমি নিজেকে স্পষ্টভাবে ইনস্টল করে থাকি তবে স্বতঃস্থাপন এ থেকে মুক্তি পাবে না।

এটি ডিফল্ট না হওয়ার কারণটি হ'ল AwesomeLibraryসিস্টেমে ব্যবহার করা, অব্যবহৃত হওয়া খুব সামান্য সমস্যা। এটি প্রায়শই সমস্যা সৃষ্টি করে না এবং বেশিরভাগ নির্ভরশীলতা খুব বেশি জায়গা নেয় না। ব্যতিক্রমগুলি রয়েছে, তবে নির্ভরতা অপসারণের সময়গুলি যখন সমস্যার সমাধান করবে বা প্রতিরোধ করবে তখন তার চেয়ে অনেক বেশি সমস্যা তৈরি হবে।


দুঃখিত Myrddin Emrys। আপনি আমাকে সেখানে হারিয়েছেন। সুতরাং আপনি যা বলেছিলেন তা আমাকে বোঝার চেষ্টা করুন। সুতরাং উদাহরণস্বরূপ, আমি যদি অ্যাপটি-গেট ব্যবহার করে লাইব্রোফিসটি ইনস্টল করি তবে এটি ধরে নিয়ে যে এটি ইতিমধ্যে ইনস্টল করা নেই সেগুলি পুরোপুরি নির্ভরশীলতা ইনস্টল করবে। এখন আমি যদি তখন apt-get remove libreoffice
মুক্তমুক্তি

যদি আমি এটি নির্ভর করে থাকা ইনস্টল করতে চাইতাম তবে তা সঠিক? যদি আমি অন্য কোনও প্রোগ্রাম দ্বারা ব্যবহৃত হয় না বলে ধরে নেওয়া এবং এর সাথে সম্পর্কিত নির্ভরতা উভয় থেকে নিজেকে মুক্তি দিতে চাই, তবে আমি কি তা গ্রহণ করব apt-get autoremovelibreoffice? এটা কি ঠিক?
পিনাটসনকি 9'12

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

আসলে, এটি একেবারে সঠিক নয়; আমার উত্তরে আমার কিছু ভুল বাক্য গঠন ছিল (যেমন @ কুপার দেখিয়েছে)। আমি উপরের উত্তরে এটি সংশোধন করেছি। apt-get autoremoveএর থেকে আলাদা কমান্ড apt-get remove Package, প্রাথমিক ভুল তথ্যের জন্য আমি ক্ষমাপ্রার্থী।
মায়ার্ডিন এমরিস

ধন্যবাদ মুর্দদিন এমরিস আমি n00b হয়ে থাকলে দুঃখিত। আপনি যখন বলবেন There are exceptions, but the times when removing a dependancy will cause problems outnumber the times when it will solve or prevent a problem। তুমি আসলে কি বোঝাতে চাও?
চিনাবাদামনকি

12

আপনি বিবরণ জানতে পারেন Remove , autoremove , রেচক পদার্থ , পরিষ্কার এবং autoclean , সেইসাথে apt-get জন্য manpages মধ্যে শব্দবিন্যাস: man apt-get

এটি পড়ার পরেও যদি আপনি এখনও অনিশ্চিত থাকেন তবে (আমি ছিলাম) স্পষ্ট করার সবচেয়ে ভাল উপায় এটি চেষ্টা করে দেখার চেষ্টা করা।

নীচে ভিমের জন্য পূর্ণ নির্ভরতা গাছের উদাহরণ রয়েছে :

তেজ-নির্ভরতা-ট্রি

আপনি এটি দিয়ে পেতে পারেন:

apt-rdepends -d vim > vim.dot
dotty vim.dot

আপনি ব্যবহার করে তাত্ক্ষণিক নির্ভরতাগুলির একটি তালিকা পেতে পারেন apt-cache depends( আরও তথ্যের জন্য প্যাকেজগুলির মধ্যে সম্পর্কের ঘোষণা দেখুন):

$ apt-cache depends vim
vim
  Depends: vim-common
  Depends: vim-runtime
  Depends: libacl1
  Depends: libc6
  Depends: libgpm2
  Depends: libselinux1
  Depends: libtinfo5
  Suggests: <ctags>
    exuberant-ctags
  Suggests: vim-doc
  Suggests: vim-scripts

সুতরাং দেখে মনে হচ্ছে ভিম বেশ কয়েকটি প্যাকেজের উপর নির্ভর করে, আসুন এটির সাথে ইনস্টল করার চেষ্টা করি apt-get installএবং দেখুন কী ঘটে:

$ sudo apt-get install vim
...
The following extra packages will be installed:
  vim-common vim-runtime
Suggested packages:
  ctags vim-doc vim-scripts
The following NEW packages will be installed:
  vim vim-common vim-runtime
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
After this operation, 25.1 MB of additional disk space will be used.
Do you want to continue [Y/n]? n

পেতে জন্য তেজ কাজ আমরা প্রয়োজন vim-সাধারণ এবং তেজ-রানটাইম প্যাকেজ ও apt-getএটি যত্ন নিতে হবে। আমরা এটি দিয়ে যাচাই করতে পারি dpkg -s pkg...( man dpkgস্ট্যাটাসগুলির আরও তথ্যের জন্য দেখুন):

$ sudo dpkg -s libc6
Package: libc6
Status: install ok installed        // we already have it, no need to install

$ sudo dpkg -s vim-common
Package: vim-common
Status: deinstall ok config-files   // we don't have it, have to install

আমরা কীভাবে ভিএম নির্ভর করে তা যাচাই করেছিলাম, ঠিক তেমনই অন্যান্য জিনিসগুলি ভিএম ব্যবহার করে একই প্যাকেজগুলির উপর নির্ভর করে তাও আমরা পরীক্ষা করতে পারি apt-cache rdepends। আমাদের অন্যান্য বিষয়গুলির মধ্যে (সম্ভবত) ভিম দেখতে হবে :

$ apt-cache rdepends vim-common
vim-common
Reverse Depends:
  vim-latexsuite
  vim-addon-manager
  vim-tiny
  vim-nox
  vim-gtk
  vim-gnome
 |vim-dbg
  vim-athena
  vim                               // there it is

আসুন ইনস্টলেশনটি চালিয়ে যান। একবার আমরা ইনস্টল করা আছে তেজ আমরা মধ্যে পার্থক্য অনুভব করতে পারেন Remove এবং autoremove । প্রথমে অপসারণের চেষ্টা করা যাক :

$ sudo apt-get remove vim
...
The following packages will be REMOVED:
  vim
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 1,922 kB disk space will be freed.
Do you want to continue [Y/n]? n

apt-get removeতারপর মুছে ফেলা হবে তেজ কিন্তু তাদের পিছনে যাব তার নির্ভরতা না । আসুন এখন ভিমের নির্ভরতাগুলির একটি অপসারণ করার চেষ্টা করি :

$ sudo apt-get remove vim-runtime
...
The following packages will be REMOVED:
  vim vim-runtime
0 upgraded, 0 newly installed, 2 to remove and 0 not upgraded.
After this operation, 24.8 MB disk space will be freed.
Do you want to continue [Y/n]? n

এটি নির্ভরতা vim- রানটাইম পাশাপাশি প্যাকেজ যে তার উপর নির্ভর করে তা সরিয়ে ফেলবে , নাম vim । কৌতূহলের বাইরে, আসুন আমরা কীভাবে ভিএম এর নির্ভরতা গাছের চেয়ে কম নির্ভরতাটি সরিয়ে ফেললাম তা দেখুন :

$ sudo apt-get remove libgpm2
...
The following packages were automatically installed and are no longer required:
  libgtkglext1 libqtassistantclient4 libtiff-tools libtiff5 python-qt4
  python-sip python-sqlalchemy python-sqlalchemy-ext
Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED:
  anki cheese gimp gimp-gmic gimp-plugin-registry gnome-control-center      // !
  gnome-media gnome-video-effects gstreamer0.10-plugins-good libaa1         // !
  libcheese-gtk21 libcheese3 libgpm2 mplayer quodlibet vim vlc w3m          // !
0 upgraded, 0 newly installed, 18 to remove and 0 not upgraded.
After this operation, 63.1 MB disk space will be freed.
Do you want to continue [Y/n]? n

এটি ভিম এবং প্রচুর গুডিজ মুছে ফেলবে!

এর পরে এগিয়ে চলুন apt-get remove vim। এটি করা হয়ে গেলে আমাদের কিছুটা বাঁচা উচিত। যদি আমরা এখন স্বতঃপরিবর্তন চেষ্টা করি তবে আমরা দেখতে পাই:

$ sudo apt-get autoremove
...
The following packages will be REMOVED:
  vim-common vim-runtime
0 upgraded, 0 newly installed, 2 to remove and 0 not upgraded.
After this operation, 23.2 MB disk space will be freed.
Do you want to continue [Y/n]? y

এগুলি দুটি প্যাকেজ apt-get removeপিছনে রেখে গেছে যদিও অন্য কোনও কিছুর প্রয়োজন নেই।

অ্যাপটি-গেট 0.9.7.9 নিয়ে পরীক্ষিত।


4

এটি অনুসারে: http://ubuntuforums.org/showthread.php?t=996053 স্বতঃপরিবর্তন অন্য প্যাকেজগুলির প্রয়োজন নেই এমন সমস্ত প্যাকেজ সরিয়ে ফেলবে। আপনি 'অ্যাপ-গেট অটোরমোভ' করবেন, 'অ্যাপ-গেট অটোরমোভ লাইব্রোফাইস' নয়। অপ্রয়োজনীয় প্যাকেজগুলি অপসারণ করা কেবল সামান্য ডিস্কের স্থান খালি করে না, এটি আপনার সিস্টেমের 'আক্রমণ পৃষ্ঠ' হ্রাস করে।


আমি দেখতে পাচ্ছি যে অব্যবহৃত লাইব্রেরিগুলি আক্রমণ আক্রমণকারী হতে পারে তবে এটি আমার কাছে খুব ছোটখাটো সমস্যা বলে মনে হচ্ছে, এটি অপ্রয়োজনীয় অপসারণের উল্লেখযোগ্য ব্যথার সাথে (যা আমি একাধিকবার ঘটতে দেখেছি)। তবে ব্যবহার সম্পর্কে তথ্যের জন্য আপনাকে ধন্যবাদ ... আমি প্রকৃতপক্ষে অটোমোরভকে ভুলভাবে বর্ণনা করছি (আমি নিজে এটি ব্যবহার করি না, তাই বুঝতে পারি নি), সংশোধনের জন্য আপনাকে ধন্যবাদ।
মায়ার্ডিন এমরিস

3

removeনির্দিষ্ট প্রোগ্রামটি মুছে ফেলবে যেখানে autoremoveনির্ভরতা অন্তর্ভুক্ত থাকবে অন্যথায় আর ব্যবহার করা হবে না।

এছাড়াও, আপনি যদি ড্রাইভের জায়গাটি খালি করতে চান তবে একটি দরকারী এবং নিরাপদ আদেশ হ'ল ...

sudo apt-get clean

এটি / var / cache / apt / সংরক্ষণাগারগুলিতে প্রবণতা ক্যাশে সরিয়ে দেয়


এমন একটি n00b হওয়ার জন্য দুঃখিত তবে আমি এটি পুরোপুরি অনুসরণ করি না। সুতরাং আমি যদি কমান্ডটি চালিত করি তবে আমি apt-get remove libreofficeএটি গ্রহণ করি যে এটি কেবল স্বাধীনতা সরিয়ে ফেলবে। এটা কি সঠিক? তবে আমি যদি কমান্ডটি চালিত করি apt-get autoremove libreoffice, তবে এটি কেবল স্বাধীনতা নয় বরং এর নির্ভরতাও সরিয়ে ফেলবে?
চিনাবাদামমনেকি

এটাই সঠিক. সুতরাং আসুন আমি বলি যে আমি ইনস্টল করেছি neverballএবং neverballডাকা একটি প্যাকেজ উপর নির্ভর করে libisfun। যদি আমি apt-get remove neverballতবে এটি কেবল neverballপ্যাকেজটি সরিয়ে ফেলবে । আমি যদি apt-get autoremove neverballতবে তা সরিয়ে ফেলব neverballএবং libisfunযদি libisfunঅন্য কোনও অ্যাপ্লিকেশনের উপর নির্ভরশীল না হয়।
কোবল্টজ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.