Kısacası: Orada olan tasksel ve görevlerin apt-get yükleme işlemi arasında bir fark.
Örnekinize bakın:
Apt-get yolu
sudo apt-get install 'lamp-server^'
aşağıdakileri yapmak için değerlendirecek:
- Tüm "Görev:" alanları için önbelleği (paket listesi dosyaları) arayın ve "lamba sunucusu" ile hepsini alın.
Bu paketleri standart yoldan yükleyin:
sudo apt-get install package1 package2...
Görev yolu
sudo tasksel install lamp-server
aşağıdaki yapılandırma dosyalarından birinde "lamba sunucusu" olarak adlandırılan bir görevi arayacaktır /usr/share/tasksel/**/*.desc
:
- Yapılandırma dosyalarını "lamba sunucusu" adlı bir "Görev:" alanı için arayın.
- Tüm önkoşulların mevcut olup olmadığını kontrol edin ("Anahtar:" alanı) ve kurulmamışsa bunları hatırlayın.
- Paketleri seçme yöntemini seçin ("Paketler:" alanı). Bu ist "list" ise, sadece aşağıdaki paketleri ada göre kurun.
- Tüm paket isimlerini okuyun ve daha önce seçilen metoda ileterek paket isimleri oluşturun.
- İçin bak
/usr/lib/tasksel/info/lamp-server.preinst
. Varsa bu betiği yürütün.
Paketleri apt-get ile aşağıdaki komutu kullanarak kurun:
debconf-apt-progress -- apt-get -q -y -o APT::Install-Recommends=true -o APT::Get::AutomaticRemove=true install package1 package2 ...
İçin bak /usr/lib/tasksel/info/lamp-server.postinst
. Varsa bu betiği yürütün.
Sonuç
taskel görevleri işleme ve seçme konusunda daha güçlü Görevlerin yüklenmesinden / kaldırılmasından önce / sonra ekstra komut dosyaları çalıştırabilir. Ve en büyük yararı: Görevleri değiştirebilir ve kolayca yenilerini oluşturabilirsiniz. Resmi bir paket listesi dosyasını dezavantaj olmadan düzenlemek mümkün değildir (geçerli imza).
Geri ilk sorunun:
özel durumda her iki komutları (sözde hem sağladı neredeyse eşdeğerdir APT::Install-Recommends
ve APT::Get::AutomaticRemove
). Tek fark, genişletilmiş paket durumu mysql-server
ve apache2
bağımlılıklarıdır (plain apt-get ile "elle kurulmuş" olarak ayarlanmıştır).
Peki ya meta paketlemeler?
Bazı görev bloklarından önce ve sonra görev seçme (özellikle kurulumda yardımcı) ve fazladan komutlar uygulamak gibi görevlerin özelliklerinden yararlanmazsanız, görev bir metapakete çok benzer. Fark şudur: Bir görev APT önbelleğinde paket olarak kaydedilmemiş.
Bu nedenle, bir görev bağımlılığını kaldırırsanız, diğer görev paketleri açıkça kurulduğundan dolayı otomatik yüklü olarak işaretlenmez. Bir meta autoremove
paketi kaldırırsanız, bağımlı paketler genişletilmiş paket durumları "otomatik olarak yüklenir" (manuel olarak kurulmazsa) olduğu için kaldırılır .
Not: Debian'daki tüm dağıtılmış görevler, adında bir meta paket yükler task-TASKNAME
.
Örnek vererek:
sudo apt-get install kubuntu-desktop
- Meta paketi yükler
kubuntu-desktop
. Bağımlılıklar "otomatik olarak kurulur".
sudo apt-get install kubuntu-desktop^
- "Kubuntu-desktop" görevi ile etiketlenen tüm paketleri seçecektir. Hepsi metaaktif bağımlılıklar
kubuntu-desktop
. Hepsi "manuel olarak kurulmuş" olarak işaretlenmiştir.
sudo tasksel install kubuntu-desktop
- Görev paketlerini kurmadan önce X'in kurulu olduğundan emin olun.
- Meta paketi yükler
kubuntu-desktop
. Bağımlılıklar "otomatik olarak kurulur".
apt-get install -s lubuntu-desktop
karşıapt-get install -s lubuntu-desktop^
. İkincisi, buna benzer bir şey göreceksiniz: Not, 'lubuntu-desktop' görevi için 'policykit-1-gnome' / Not'u seçip 'lubuntu-desktop' / notu için 'gnome-keyring'i seçerek, 'lubuntu-desktop' görevi için 'libplist1' / Not, 'lubuntu-desktop' görevi için 'aspell-en' seçimi, / not, 'lubuntu-desktop' görevi için 'libsdl1.2debian' seçimi / Bu durumda , "Havuç" un daha iyi olduğundan emin değilim.