چگونه می توان یک بسته واحد را با استفاده از apt-get آپدیت کرد؟


به جواب پذیرفته شده بروید




چگونه می توانم یک بسته واحد را به روز کنم؟ تا آنجا که man apt-get می گوید apt-get upgrade بسته / لیست بسته ها را به عنوان پارامتر در نظر نمی گیرد:

ارتقا

از نسخه های ارتقاء برای نصب جدیدترین نسخه های کلیه بسته هایی که در حال حاضر روی سیستم نصب شده اند از منابع ذکر شده در داخل استفاده می شود /etc/apt/sources.list . بسته هایی که در حال حاضر با نسخه های جدید موجود نصب شده اند ، بازیابی و به روز می شوند. تحت هیچ شرایطی بسته های نصب نشده حذف شده اند ، یا بسته هایی که قبلاً نصب نشده اند بازیابی و نصب شده اند. نسخه های جدید بسته های نصب شده فعلی که بدون تغییر وضعیت نصب یک بسته دیگر قابل ارتقا نیستند در نسخه فعلی آنها باقی می ماند. ابتدا باید یک به روزرسانی انجام شود تا بداند که نسخه های جدید بسته ها در دسترس هستند.


850









8 :تعداد پاسخها


شما فقط نیاز به انجام apt-get install --only-upgrade <packagename> . این فقط آن بسته تنها را ارتقا می دهد و فقط در صورت نصب.

اگر مایل نیستید اگر این بسته را نصب نکنید ، یا در صورت وجود آن را به روز کنید ، ممکن است خارج شوید --only-upgrade .


1057



به منظور به روزرسانی یک بسته واحد با استفاده از CLI:

 sudo apt-get install --only-upgrade <packagename>
 

به عنوان مثال، sudo apt-get install --only-upgrade ack

 Reading package lists... Done
Building dependency tree       
Reading state information... Done
Skipping **ack**, it is not installed and only upgrades are requested.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
 

132


2012-10-15

دو راه ممکن وجود دارد که می توانم به آنها فکر کنم:

  1. sudo apt-get install nameofpackage

    این بسته حتی اگر قبلاً نصب شده باشد ، ارتقا می یابد:

     ~$ sudo apt-get install emesene
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    The following packages will be upgraded:
      emesene
    1 upgraded, 0 newly installed, 0 to remove and 5 not upgraded.
    Need to get 1,486 kB of archives.
    After this operation, 696 kB disk space will be freed.
    Get:1 http://il.archive.ubuntu.com/ubuntu/ natty-updates/universe emesene all 2.11.4+dfsg-0ubuntu1 [1,486 kB]
     
  2. استفاده از Synaptic Package Manager : کلیک راست کنید → علامت گذاری برای ارتقاء :


    توضیحات تصویر را اینجا وارد کنید

    توجه : بعضی اوقات ممکن است بسته های اضافی یا وابستگی هایی را درخواست کند ، طبیعی است.


56



در تجربه من در مورد Ubuntu 12.04 LTS ، استفاده از دستور زیر در صورت استفاده از PPA جداگانه ، بسته را ارتقا نمی دهد -

 sudo apt-get --only-upgrade install <packagename>
 

به همین ترتیب ، من نمی خواهم دستور ارتقاء را اجرا کنم ، که تمام بسته ها را در سرور من ارتقا می دهد -

 sudo apt-get dist-upgrade
 

به عنوان مثال ، من PHP 5.3 را نصب کرده ام و PPA ondrej را با استفاده از منابع apt.s اضافه کرده ام -

 sudo add-apt-repository ppa:ondrej/php5
 

اگر دویدم

 sudo apt-get install php5
 

فقط PHP 5.3 را دوباره نصب می کند.

ابتدا باید شماره نسخه را برای ارتقاء و استفاده از آن تعیین كنم

 sudo apt-cache policy php5
 

این لیست تمام شماره های نسخه موجود را نشان می دهد. شما باید شماره نسخه مورد نظر خود را برای ارتقا پیدا کنید و سپس کل رشته ای را که به آن مراجعه می کند ، کپی کنید. به عنوان مثال ، رشته PHP 5.5 در اوبونتو "5.5.16 + dfsg-1 + deb.sury.org دقیق + 2" است.

حال می توانید دستور نصب apt-get را با شماره نسخه خاص و voila اجرا کنید!

 sudo apt-get install php5=5.5.16+dfsg-1+deb.sury.org~precise+2
 

من فقط این را اضافه کردم زیرا قادر به یافتن این اطلاعات در هر جای دیگری نبودم!


25



در اوبونتو 9.04 جونی ،

 apt-get --only-upgrade install <package>
 

بازده - محصول:

 E: Sense only is not understood, try true or false.
 

فرمان

 apt-get --only-upgrade true install <package>
 

در پرونده من کار کرد


16



در صورت وجود راه حل خط فرمان که بسته را نصب نمی کند:

 dpkg -s <package> 2>/dev/null | grep -q Status.*installed && sudo apt-get install <package>
 

این به راحتی قابل تبدیل به یک فیلمنامه است ، به عنوان مثال:

upgrade-package.sh:

 #!/bin/bash

[[ -z $1 ]] && { echo "Usage: $(basename $0) package"; exit 1; }

if dpkg -s "$1" 2>/dev/null | grep -q Status.*installed; then
    echo "Attempting to upgrade $1"
    sudo apt-get install "$1"
else
    echo "Package $1 is not installed"
fi
 

10



سؤال قدیمی اما خوب ، من از آزادی یک پاسخ به روز شده استفاده می کنم ... برای توزیع های مدرن تر ، جایی که بسته بندی متناسب با آن درج شده است ، به سادگی:

 sudo apt upgrade <package-name>
 

1



برای به روزرسانی یک بسته واحد در اوبونتو 18.04 LTS:

 sudo apt update && sudo apt install --only-upgrade <packagename>
 

برای به روزرسانی چندین بسته:

 sudo apt update && sudo apt install --only-upgrade <package1> <package2> <package3>
 

0


2019-11-14

انتشارات مرتبط


چگونه یک بسته را از طریق apt-get کم کنیم؟

چرا به جای آپدیت apt-dist از بروزرسانی مناسب استفاده کنید؟

نحوه نصب بسته های پیشنهادی در apt-get

چگونه به روز رسانی هسته را هنگام استفاده از بروزرسانی apt-get مجبور کنیم؟

چگونه می توان بسته ای از autoremove apt-get را حذف کرد؟

بسته های حذف شده هنگامی که من از نصب "apt-get" با یک hyphen پس از نام بسته استفاده می کنم حذف می شود.

چگونه zlib libgcrypt را با استفاده از apt-get نصب کنیم؟

چگونه به یک سرور میانی به اینترنت دسترسی پیدا کنیم و از طریق سرور متوسط ​​به کار گیریم؟

دریافت "عدم تطابق اندازه" هنگام استفاده از بسته های مناسب

چگونه لیب بوست را با استفاده از apt-get آپدیت کنیم؟

[apt] سوال برچسب


آیا می توانم پرتابگر Unity را جابجا کنم؟

چگونه می توان در زمان اجرا از یک پارتیشن ext root استفاده کرد؟

چگونه می توان لیستی از تمام مخازن و PPA ها را از خط فرمان به اسکریپت نصب داد؟

نحوه تعیین اینکه کدام مدیر پنجره در حال اجرا است

هنگام به روزرسانی ، فضای دیسک رایگان کافی نیست

آیا می توان حافظه نهانگاه APT را از خط فرمان پاک کرد؟

مشکلی در رابطه با انتشار آلفا / بتا از اوبونتو وجود دارد ، چه کاری باید انجام دهم؟

آیا نرم افزاری وجود دارد که می تواند فرم های PDF را پر کند؟

چگونه خطای "بسته بندی در وضعیت بسیار متناقض ناسازگار باشد"؟

هدف کاربر "هیچ کس" چیست؟