انجمن‌های فارسی اوبونتو

کمک و پشتیبانی => نصب، راه‌اندازی و بروزآوری => نویسنده: esmaeelE در 26 بهمن 1398، 06:30 ب‌ظ

عنوان: لغو پیشنهاد apt autoremove
ارسال شده توسط: esmaeelE در 26 بهمن 1398، 06:30 ب‌ظ
در هربار اجرای دستورات در apt پیشنهاد حذف بسته های زیر با autoremove داده می‌شه

از اونجایی که بیشتر این بسته ها حیاتی هستن چه میشه کرد که این پیشنهاد به کلی لغو بشه؟


ant ant-contrib ant-optional ca-certificates-java coinor-libcbc3
  coinor-libcgl1 coinor-libclp1 coinor-libcoinmp1v5 coinor-libcoinutils3v5
  coinor-libosi1v5 default-jre default-jre-headless espeak-ng-data
  firebird3.0-common firebird3.0-common-doc firebird3.0-server-core
  firebird3.0-utils fonts-crosextra-caladea fonts-crosextra-carlito
  fonts-liberation2 fonts-linuxlibertine fonts-noto-core fonts-noto-ui-core
  fonts-opensymbol fonts-sil-gentium fonts-sil-gentium-basic
  gir1.2-gst-plugins-base-1.0 gir1.2-polkit-1.0 gnome-accessibility-themes
  gnome-themes-extra gnome-themes-extra-data gtk2-engines-pixbuf
  gtk2-engines-xfce java-common libabw-0.1-1 libactivation-java libao-common
  libao4 libaopalliance-java libapache-poi-java libapache-pom-java
  libargs4j-java libasm-java libatinject-jsr330-api-java libatk-adaptor
  libatk-wrapper-java libatk-wrapper-java-jni libbase-java libbcmail-java
  libbcpkix-java libbcprov-java libboost-atomic1.67.0 libboost-chrono1.67.0
  libboost-date-time1.67.0 libboost-filesystem1.67.0 libboost-locale1.67.0
  libboost-thread1.67.0 libbsh-java libcdi-api-java libcdr-0.1-1 libcglib-java
  libclucene-contribs1v5 libclucene-core1v5 libcmis-0.5-5v5 libcodemodel-java
  libcommons-cli-java libcommons-codec-java libcommons-collections3-java
  libcommons-collections4-java libcommons-compress-java libcommons-io-java
  libcommons-lang3-java libcommons-logging-java libcommons-math3-java
  libcommons-parent-java libcurvesapi-java libdom4j-java libdotconf0
  libdtd-parser-java libe-book-0.1-1 libegl1-mesa libehcache-java
  libel-api-java libeot0 libepubgen-0.1-1 libespeak-ng1 libetonyek-0.1-1
  libexo-1-0 libexttextcat-2.0-0 libexttextcat-data libfastinfoset-java
  libfbclient2 libflute-java libfonts-java libformula-java libfreehand-0.1-1
  libgeronimo-annotation-1.3-spec-java libgeronimo-interceptor-3.0-spec-java
  libglu1-mesa libgpgmepp6 libgtksourceview-3.0-1 libgtksourceview-3.0-common
  libguava-java libguice-java libhawtjni-runtime-java libhsqldb1.8.0-java
  libhttpclient-java libhttpcore-java libib-util libicu4j-java
  libintellij-annotations-java libistack-commons-java libitext-java
  libjansi-java libjansi-native-java libjaxb-api-java libjaxb-java
  libjaxen-java libjcommon-java libjdom1-java libjetbrains-annotations-java
  libjsoup-java libjsp-api-java libjsr305-java libkeybinder-3.0-0
  liblangtag-common liblangtag1 liblayout-java liblightdm-gobject-1-0
  libloader-java liblog4j1.2-java liblouis-data liblouis17 libmail-java
  libmaven-file-management-java libmaven-parent-java libmaven-resolver-java
  libmaven-shared-io-java libmaven-shared-utils-java libmaven3-core-java
  libmhash2 libmspub-0.1-1 libmwaw-0.3-3 libmythes-1.2-0 libneon27-gnutls
  libnumbertext-1.0-0 libnumbertext-data libodfgen-0.1-1 liborcus-0.14-0
  libpagemaker-0.0-0 libpcaudio0 libpentaho-reporting-flow-engine-java
  libpixie-java libplexus-archiver-java libplexus-cipher-java
  libplexus-classworlds-java libplexus-component-annotations-java
  libplexus-interpolation-java libplexus-io-java libplexus-sec-dispatcher-java
  libplexus-utils2-java libpq5 libqxp-0.0-0 libraptor2-0 librasqal3 librdf0
  librelaxng-datatype-java libreoffice libreoffice-avmedia-backend-gstreamer
  libreoffice-base libreoffice-base-core libreoffice-base-drivers
  libreoffice-calc libreoffice-common libreoffice-core libreoffice-draw
  libreoffice-gtk2 libreoffice-impress libreoffice-java-common
  libreoffice-librelogo libreoffice-math libreoffice-nlpsolver
  libreoffice-report-builder libreoffice-report-builder-bin
  libreoffice-script-provider-bsh libreoffice-script-provider-js
  libreoffice-script-provider-python libreoffice-sdbc-firebird
  libreoffice-sdbc-hsqldb libreoffice-sdbc-postgresql
  libreoffice-style-colibre libreoffice-style-tango libreoffice-wiki-publisher
  libreoffice-writer librepository-java librevenge-0.0-0 librngom-java
  libsac-java libsaxonhe-java libserializer-java libservlet-api-java
  libservlet3.1-java libsisu-guice-java libsisu-inject-java libsisu-ioc-java
  libsisu-plexus-java libslf4j-java libsnappy-java libsnappy-jni libsonic0
  libspeechd2 libstaroffice-0.0-0 libstax-ex-java libstreambuffer-java
  libtagc0 libtommath1 libtxw2-java libu2f-udev libunwind8 libvisio-0.1-1
  libwagon-http-java libwagon-provider-api-java libwebsocket-api-java
  libwnck-common libwnck22 libwpd-0.10-10 libwpg-0.3-3 libwps-0.4-4
  libxatracker2 libxerces2-java libxfce4ui-utils libxfont2
  libxml-commons-external-java libxml-commons-resolver1.1-java libxml-java
  libxmlbeans-java libxmlsec1 libxmlsec1-nss libxom-java libxsom-java libxvmc1
  libxz-java libzmf-0.0-0 light-locker lightdm lightdm-gtk-greeter lp-solve
  mousepad openjdk-11-jre openjdk-11-jre-headless orca python3-brlapi
  python3-gst-1.0 python3-louis python3-pyatspi python3-speechd python3-uno
  sound-icons speech-dispatcher speech-dispatcher-audio-plugins
  speech-dispatcher-espeak-ng sudo system-config-printer tango-icon-theme
  task-desktop uno-libs3 ure x11-apps x11-session-utils xbrlapi
  xfce4-appfinder xfce4-panel xfce4-power-manager xfce4-power-manager-data
  xfce4-power-manager-plugins xfce4-pulseaudio-plugin xfce4-session
  xfce4-settings xfdesktop4 xfdesktop4-data xfonts-100dpi xfonts-75dpi
  xfonts-base xfonts-encodings xfonts-scalable xfonts-utils xfwm4 xinit xorg
  xserver-common xserver-xorg xserver-xorg-core xserver-xorg-input-all
  xserver-xorg-input-libinput xserver-xorg-input-wacom xserver-xorg-legacy
  xserver-xorg-video-all xserver-xorg-video-amdgpu xserver-xorg-video-ati
  xserver-xorg-video-fbdev xserver-xorg-video-intel xserver-xorg-video-nouveau
  xserver-xorg-video-qxl xserver-xorg-video-radeon xserver-xorg-video-vesa
  xserver-xorg-video-vmware
Use 'sudo apt autoremove' to remove them.
عنوان: پاسخ : لغو پیشنهاد apt autoremove
ارسال شده توسط: دکتر کاظمی در 26 بهمن 1398، 07:27 ب‌ظ
حذفشان کن اگر لازم بودند سیستم این پیشنهاد را نمی داد پس استفاده ای از آن ها نمی شود
عنوان: پاسخ : لغو پیشنهاد apt autoremove
ارسال شده توسط: esmaeelE در 26 بهمن 1398، 08:58 ب‌ظ
حذفشان کن اگر لازم بودند سیستم این پیشنهاد را نمی داد پس استفاده ای از آن ها نمی شود

برای مثال چیزی مثل mousepad لازم دارم.
 
عنوان: پاسخ : لغو پیشنهاد apt autoremove
ارسال شده توسط: M!lad در 27 بهمن 1398، 10:18 ق‌ظ
راهنمایی kazemie کاملا اشتباه هست و اگر این کار رو انجام بدید سیستم شما تقریبا غیر قابل استفاه خواهد شد. چون در بین بسته‌ها به جز موارد پایه گرافیکی، گزینه‌ای مثل sudo هم قرار گرفته. اجباری نیست وقتی اطلاعات کافی نداریم دیگران رو به اشتباه راهنمایی کنیم. من پست ایشون رو دیروز گزارش کردم ولی مدیران ترجیح دادن پست باقی بمونه شاید هم ندیدن گزارش رو.

دقیق نمی‌دونم ولی حدس می‌زنم احتمالا یک بسته خاص که این بسته‌ها به شکل زنجیره‌ای از پیش‌نیاز اون بسته نصب شده بودند به نحوی حذف شده و حالا سیستم پیشنهاد می‌کنه که این‌ها رو هم حذف کنه چون automatic نصب شدند.

جستجوی من نشون میده این مورد ممکنه زمانی رخ بده که یک میزکار دیگه رو نصب و حذف کرده باشید.

شما باید این بسته‌ها رو mark کنید به عنوان "دستی نصب شده".

sudo apt-mark manual PKG-NAME
همینطور می‌تونید با aptitude:

sudo aptitude keep-all
اعلام کنید تمام بسته‌ها رو میخواید نگه دارید.

فعلا حضور ذهن ندارم چه طور میشه فهمید حذف کدوم بسته این مشکل رو ایجاد کرده شاید سایر دوستان بتونند بهتر راهنمایی کنند.
عنوان: پاسخ : لغو پیشنهاد apt autoremove
ارسال شده توسط: nixoeen در 27 بهمن 1398، 08:08 ب‌ظ
از اونجایی که بیشتر این بسته ها حیاتی هستن چه میشه کرد که این پیشنهاد به کلی لغو بشه؟
این یعنی یک بستهٔ سیستمی رو حذف کردید که به عنوان پیش‌نیاز بسته‌های موجود رو لازم داشته. با نصب دوبارهٔ اون بسته، این مشکل برطرف میشه.
عنوان: پاسخ : لغو پیشنهاد apt autoremove
ارسال شده توسط: esmaeelE در 27 بهمن 1398، 08:21 ب‌ظ
ممنون از M!lad عزیز
با راهنمایی شما مشکل حل شد.

sudo apt install something > apt-remove

پاک کردن خطوط اضافه به طوری که فقط شامل نام بسته ها باشد.
#!/bin/bash

while read -ra line;
do
    for word in "${line[@]}";
    do
        #~ echo "$word";
        sudo apt-mark manual "$word";
    done;
done < $1


منبع (https://unix.stackexchange.com/a/195232/235261)
./apt-correct.sh  apt-remove
پس از اجرا مشکل حل شد.
sudo apt install something
Reading package lists... Done
Building dependency tree       
Reading state information... Done
something is already the newest version (0.3.5.8-1).
0 upgraded, 0 newly installed, 0 to remove and 71 not upgraded.

پی‌نوشت
یافتن راه حل یک خطی

[ویرایش اول]

راه حل یک خطی
xargs -a apt-remove sudo apt-mark manual

عنوان: پاسخ : لغو پیشنهاد apt autoremove
ارسال شده توسط: esmaeelE در 27 بهمن 1398، 08:22 ب‌ظ
از اونجایی که بیشتر این بسته ها حیاتی هستن چه میشه کرد که این پیشنهاد به کلی لغو بشه؟
این یعنی یک بستهٔ سیستمی رو حذف کردید که به عنوان پیش‌نیاز بسته‌های موجود رو لازم داشته. با نصب دوبارهٔ اون بسته، این مشکل برطرف میشه.

از کجا میشه فهمید که این بسته چی بوده؟

عنوان: پاسخ : لغو پیشنهاد apt autoremove
ارسال شده توسط: nixoeen در 27 بهمن 1398، 08:37 ب‌ظ
مشکل حل شد.
البته راه خوبی نیست، چون این بسته‌ها رو به عنوان Manually installed علامت‌گذاری کردید و خب در حقیقت اینطور نیست و شما اون‌ها رو دستی نصب نکردید.

از کجا میشه فهمید که این بسته چی بوده؟
توی var/log/apt/history.log/ رو چک کنید و ببینید چه بسته‌ای رو پاک کردید.
عنوان: پاسخ : لغو پیشنهاد apt autoremove
ارسال شده توسط: دکتر کاظمی در 28 بهمن 1398، 06:48 ق‌ظ
نقل‌قول
اجباری نیست وقتی اطلاعات کافی نداریم دیگران رو به اشتباه راهنمایی کنیم
من اسم بسته ها را نخواندم فقط تا حالا همچین موردی ندیده بودم چون وقتی سیستم پیشنهاد بدهد این فایل ها اضافه هستند اگر سیستم سالم باشد باید به پیشنهاد سیستم عمل کنیم و لازم نیست فایل های اضافی را نگهداری کنیم. من فکر کردم این بسته های اضافه را با آگاهی کامل از اینکه لازم نیستند می خواهید نگهداری کنید برای همین بدون خواندن کد ها نظر دادم
عنوان: پاسخ : لغو پیشنهاد apt autoremove
ارسال شده توسط: M!lad در 28 بهمن 1398، 12:32 ب‌ظ
نقل‌قول
من اسم بسته ها را نخواندم
نقل‌قول
تا حالا همچین موردی ندیده بودم
نقل‌قول
من فکر کردم

من نه ناظرم، نه مدیرم نه هیچ، پیشنهاد من به عنوان یک کاربر به شما اینکه در این شرایط پست هم ندید. چون اگر اشتباه راهنمایی کنید و مخاطب مطلب شما، کار رو انجام بده ممکنه روزها و هفته‌ها از کار و زندگی عقب بی‌افته. شما فکر کن فرضا قبل یک پرزنت سرنوشت ساز سیستم طرف رو با این کار از بین برده باشید. زندگیش به هم می‌ریزه.

حتی انتهای پست خودم اشاره کردم ممکنه بقیه بهتر راهنمایی کنند که همینطور هم بود و فرضا همون آدرس log دستور apt رو هم یادم نبود.
و قبل پست شما سوال رو خونده بودم و تصمیم گرفتم صبر کنم بقیه نظر بدند ولی شما پست رو گذاشتید مجبور شدم جواب بدم که کسی به اشتباه نیافته.

نقل‌قول
باید به پیشنهاد سیستم عمل کنیم و لازم نیست فایل های اضافی را نگهداری کنیم.

باید وجود نداره، کاربر تصمیم میگیره چکار کنه نه سیستم. سیستم پیشنهاد میده اگر الزام بود خودش به زور پاکشون میکرد.
عنوان: پاسخ : لغو پیشنهاد apt autoremove
ارسال شده توسط: esmaeelE در 28 بهمن 1398، 04:26 ب‌ظ
مشکل حل شد.
البته راه خوبی نیست، چون این بسته‌ها رو به عنوان Manually installed علامت‌گذاری کردید و خب در حقیقت اینطور نیست و شما اون‌ها رو دستی نصب نکردید.

از کجا میشه فهمید که این بسته چی بوده؟
توی var/adm/apt/history.log/ رو چک کنید و ببینید چه بسته‌ای رو پاک کردید.

با توجه به راهنمایی شما و اینکه به نظر میرسه این کار روشی اصولی نیست

بسته‌ها رو به حالت اول برگردوندم.
xargs -a apt-remove sudo apt-mark auto 
حالا مدیر بسته همچنان این بسته‌ها را نالازم اعلام می کنه.

روی دبیان چنین مسیری برای فایل های log موجود نبود.

به جای اون لاگ ها از اینجا برداشتم
/var/log/apt/history.log
به علاوه گفته شده (https://serverfault.com/a/175584) لاگ‌های dpkg هم لازمه پس
/var/log/dpkg.log
به طور خلاصه لاگ بسته‌های پاک شده شامل اینهاست
2020-02-10 05:17:07 startup packages remove
2020-02-10 05:17:08 remove virtualbox-6.1:amd64 6.1.0-135406~Debian~buster <none>
2020-02-10 05:19:04 startup packages remove
2020-02-10 05:19:05 remove libmagickcore-6.q16-6-extra:amd64 8:6.9.10.23+dfsg-2.1 <none>
2020-02-10 05:19:06 remove imagemagick-6.q16:amd64 8:6.9.10.23+dfsg-2.1 <none>
2020-02-10 05:19:07 remove libmagickwand-6.q16-6:amd64 8:6.9.10.23+dfsg-2.1 <none>
2020-02-10 05:19:08 remove libmagickcore-6.q16-6:amd64 8:6.9.10.23+dfsg-2.1 <none>
2020-02-10 05:19:08 remove imagemagick-6-common:all 8:6.9.10.23+dfsg-2.1 <none>
2020-02-10 05:19:09 remove mlterm-tiny:amd64 3.8.6-2 <none>
2020-02-10 05:19:10 remove mlterm-common:amd64 3.8.6-2 <none>
2020-02-10 05:20:22 startup packages remove
2020-02-10 05:20:22 remove libjxr-tools:amd64 1.1-6+b1 <none>
2020-02-10 05:20:23 remove libjxr0:amd64 1.1-6+b1 <none>
2020-02-10 05:20:24 remove liblqr-1-0:amd64 0.4.2-2.1 <none>
2020-02-10 05:20:25 remove netpbm:amd64 2:10.0-15.3+b2 <none>
2020-02-10 05:20:25 remove libnetpbm10:amd64 2:10.0-15.3+b2 <none>
2020-02-13 00:01:45 startup packages remove
2020-02-13 00:01:58 remove task-xfce-desktop:all 3.53 <none>
2020-02-13 00:01:59 remove thunar-archive-plugin:amd64 0.4.0-2 <none>
2020-02-13 00:02:00 remove xfce4:all 4.12.5 <none>
2020-02-13 00:02:01 remove thunar-media-tags-plugin:amd64 0.3.0-2 <none>
2020-02-13 00:02:02 remove thunar-volman:amd64 0.9.1-1 <none>
2020-02-13 00:02:03 remove thunar:amd64 1.8.4-1 <none>
2020-02-15 18:11:57 startup packages remove
2020-02-15 18:11:58 remove libcurl4-gnutls-dev:amd64 7.64.0-4 <none>
Commandline: apt remove virtualbox-6.1
Remove: virtualbox-6.1:amd64 (6.1.0-135406~Debian~buster)
Commandline: apt remove imagemagick-6* mlterm-*
Remove: libmagickcore-6.q16-6-extra:amd64 (8:6.9.10.23+dfsg-2.1), libmagickwand-6.q16-6:amd64 (8:6.9.10.23+dfsg-2.1), mlterm-common:amd64 (3.8.6-2), mlterm-tiny:amd64 (3.8.6-2), imagemagick-6.q16:amd64 (8:6.9.10.23+dfsg-2.1), libmagickcore-6.q16-6:amd64 (8:6.9.10.23+dfsg-2.1), imagemagick-6-common:amd64 (8:6.9.10.23+dfsg-2.1)
Commandline: apt autoremove
Remove: libjxr0:amd64 (1.1-6+b1), netpbm:amd64 (2:10.0-15.3+b2), liblqr-1-0:amd64 (0.4.2-2.1), libjxr-tools:amd64 (1.1-6+b1), libnetpbm10:amd64 (2:10.0-15.3+b2)
Commandline: apt remove thunar
Remove: thunar-media-tags-plugin:amd64 (0.3.0-2), thunar-volman:amd64 (0.9.1-1), task-xfce-desktop:amd64 (3.53), thunar-archive-plugin:amd64 (0.4.0-2), thunar:amd64 (1.8.4-1), xfce4:amd64 (4.12.5)
Remove: libcurl4-gnutls-dev:amd64 (7.64.0-4)


عنوان: پاسخ : لغو پیشنهاد apt autoremove
ارسال شده توسط: esmaeelE در 29 بهمن 1398، 03:55 ق‌ظ
یکبار اجرای دستور نصب روی تک تک بسته‌هایی که برای حذف پیشنهاد شده بودند

مشکلو حل کرد.

sudo xargs -a apt-remove  apt install
خروجی ترمینال

https://paste.ubuntu.ir/gjbw

این روش ایرادی نداره؟


عنوان: پاسخ : لغو پیشنهاد apt autoremove
ارسال شده توسط: M!lad در 29 بهمن 1398، 12:03 ب‌ظ
خوب این کاری که انجام دادید دقیقا دوباره اون بسته‌ها رو mark کرد که دستی نصب شدند فرق خاصی نداره.

به نظر حذف بسته xfce4 مشکل رو ایجاد کرده.

2020-02-13 00:02:00 remove xfce4:all 4.12.5 <none>
بسته ها رو مجدد مارک کنید automatic نصب شدند. xfce4 رو نصب کنید. احتمالا باید مشکل حل بشه. و احتمالا یک سری بسته که نمیخواید رو ممکنه نصب کنه.

این رو اجرا کنید:

apt-cache depends --recurse xfce4
ملاحظه می‌کنید که تقریبا اکثر مواردی که سیستم پیشنهاد میده حذف بشن به شکل یک chain of dependency همین بسته xfce4 نصب شدند.
عنوان: پاسخ : لغو پیشنهاد apt autoremove
ارسال شده توسط: esmaeelE در 29 بهمن 1398، 06:06 ب‌ظ
با نصب این بسته‌ها تعداد پکیج‌ها برای حذف از 306 به 58 کاهش یافت.
task-xfce-desktop و libnetpbm10

بسته‌های پیشنهادی برای حذف
  coinor-libcbc3 coinor-libcgl1 coinor-libclp1 coinor-libcoinmp1v5
  coinor-libcoinutils3v5 coinor-libosi1v5 espeak-ng-data fonts-linuxlibertine
  fonts-noto-core fonts-noto-ui-core fonts-sil-gentium fonts-sil-gentium-basic
  gir1.2-polkit-1.0 libao-common libao4 libatk-adaptor libbsh-java
  libcdr-0.1-1 libdotconf0 libespeak-ng1 libfreehand-0.1-1 liblouis-data
  liblouis17 libmspub-0.1-1 libpagemaker-0.0-0 libpcaudio0 libqxp-0.0-0
  libreoffice libreoffice-avmedia-backend-gstreamer libreoffice-calc
  libreoffice-draw libreoffice-gtk2 libreoffice-impress libreoffice-librelogo
  libreoffice-nlpsolver libreoffice-script-provider-bsh
  libreoffice-script-provider-js libreoffice-script-provider-python
  libreoffice-wiki-publisher libsonic0 libspeechd2 libu2f-udev libvisio-0.1-1
  libzmf-0.0-0 lp-solve orca python3-brlapi python3-gst-1.0 python3-louis
  python3-pyatspi python3-speechd sound-icons speech-dispatcher
  speech-dispatcher-audio-plugins speech-dispatcher-espeak-ng
  system-config-printer task-desktop xbrlapi

به نظر با فهمیدن اینکه چه بسته‌ای به libreoffice وابسته بوده و به اشتباه حذف شده میشه چند مورد از اینها رو هم برطرف کرد.

عنوان: پاسخ : لغو پیشنهاد apt autoremove
ارسال شده توسط: lop3p در 09 اسفند 1398، 04:35 ب‌ظ
من از autoremove استفاده کردم و الان فقد ی صفحه ای عین ترمینال برام میاد کککککل بسته هام حذف شده
راهی هست که دوباره بشه اوبونتو رو برگردوند؟
عنوان: پاسخ : لغو پیشنهاد apt autoremove
ارسال شده توسط: esmaeelE در 09 اسفند 1398، 04:44 ب‌ظ
پاسخ شما در تاپیک اصلی داده شد.

https://forum.ubuntu-ir.org/index.php?topic=150333.msg1168471#msg1168471