Repository'leri güncellemek
# dnf check-update // apt updateKurulu bütün paketleri güncellemek
# dnf update // apt upgradeTek bir paketi güncelleme
# dnf update firefox // apt upgrade firefoxVeya daha da öncesinde paket kurmak
# dnf install firefox // apt install firefoxPaketi kaldırmak
# dnf remove firefox // apt remove firefoxBazen log dosyaları vs ile birlikte programın tüm artıklarından kurtulmak gerekir. Bu işin dnf'te karşılığı yok.
# --------- // apt purge firefox (veya apt remove --purge firefox)Kurulu paketi tekrar kurmak
# dnf reinstall firefox // apt reinstall firefoxBaşka bir programın bağımlılığı olarak kurulmuş ama şu anda ihtiyaç duyulmayan paketleri kaldırmak için
# dnf autoremove // apt autoremoveGüncellenebilir (veya kurulu) olan paketlerin listesini almak için
# dnf list --upgrades (--installed) // apt list --upgradable (--installed)Bir paket aramak
# dnf search (all) firefox // apt-cache search firefoxBir paket hakkında ayrıntılı bilgi almak
# dnf info firefox // apt show firefoxKurulu ve depolardaki sürüm hakkında bilgi almak
# dnf info firefox // apt-cache policy firefoxGeçici (cache) bilgileri temizlemek için
# dnf clean all // apt cleanBir dosyayı hangi paket kurdu
# dnf provides <dosya_adi> // dpkg -S <dosya_adi> (veya apt-file search <dosya_adi>)Veya bir paket kurulunce sisteme hangi dosyalar eklendi
# rpm -ql firefox (veya paket için rpm -qlp firefox-58.0.2-1.fc27.x86-64.rpm) // dpkg-query -L firefox (paket için dpkg-deb -c firefox.deb, veya apt-file list firefox)İnternet bağlantısı olmayan bir sisteme bir paketi kurabilmek için internet bağlantısı olan bir Fedora makinede gerekli indirmeleri yapıp, bunları daha sonra bağlantısı olmayan bilgisayara kurmak için download komutu kullanılabilir.
# dnf download NetworkManagerAçıkça belirtilmezse indirme konumu /var/cache/dnf olur (nasıl açıkça belirtilir, az sonra!) Ama hedef paketin bağımlılıkları varsa bunları tek tek indirmeye çalışmak zaman alıcı olabilir. Bunun için --resolve anahtarın kullanmak gerek.
# dnf download NetworkManager --resolveHatta bu indirilen tüm paketleri belli bir klasörde toplamak için --downloaddir anahtarı kullanılabilir.
# dnf download NetworkManager --resolve --downloaddir=/home/user/Downloads/NMKomut geçmişini incelemek
# dnf history // # less /var/log/apt/history.log [bkz. 2]
En son dnf işlemini görmek için
# dnf history 0
en sondan bir önceki için
# dnf history -1
veya listedeki herhangi bir işlemin ID'sini kullanarak
# dnf history 13
kullanabiliriz. En sol satırda yazan ID, belli bir tarihe ait benzersiz bir belirteçtir. Bu tarihte yapılan işlerin ayrıntısını görmek için (örneğin ID'si 49 olan tarih ile ilgili) şu yazılabilir:
# dnf history info 49
Firefox'un son dnf upgrade ile yükseltilip yükseltilmediğini öğrenmek için şu komudu kullanabiliriz:
# dnf history info 0 | grep -i 'Firefox'
ID'lerde 0 en son güncelleştirmeyi, -1 ise ondan bir öncekini gösterir.
Yapılan işlemlerden herhangi birisini geri alabiliriz. Bu durumda geri alınan işleme ait kayıt history'den silinmez, ama geri alma (undo) işlemine ait yeni bir kayıt oluşturulur.
# dnf history undo 7
Bu sadece 7 numaralı dnf işleminde yapılanı geri alır. Bundan sonraki 8, 9 vs işlemlerini geri almaz. Geri almanın benzeri rollback işlemi var. Rollback'te ise belirtilen işleme kadar tüm işlemler geri alınır, sistem belirtilen işlem yapıldıktan sonraki haline geri döner. Yani
# dnf history rollback 7
dersek, 7 numaralı işlem yapıldıktan sonraki haline döneriz. 8, 9 ve diğerleri artık yapılmamış sayılır. 7'den sonraki işlemler history listesinden de silinir. Undo ve rollback işlemleri öncesinde clean komutunu kullanmamak gerek ki cache'teki dosyalarımızla işlem yapabilelim.
Repository listesini amak
# dnf repolist // # grep -Erh '^deb ' /etc/apt/sources.list*Bunun yanı sıra bir de Fedora'ya özgü paket grupları var. Örneğin geliştiriciler için "Development and Creative Workstation" gibi. Bunların listesini almak için
# dnf grouplistBu grup paketlerinden birini kurmak için
# dnf groupinstall "Web Server"Kaldırmak için ise
# dnf groupremove "Web Server"
kullanılabilir.
Fedora (Redhat) ailesinde dnf update sonrasında emin misiniz sorusunun cevabı varsayılan olarak "hayır (H)". Ubuntu'da varsayılan olarak evet.
2018-10-15
Ekleme: dnf history kullanırken farkettiğim birşey var. Yeni kurulmuş bir Fedora 28 işistasyonu için dnf history komutunu verince aldığım çıktı şöyle oluyor.
Wikipedia'da [3] ve Fedora Project Community Blog'da [4] görüldüğü gibi Fedora 28'in çıkış tarihi 01.05.2018. Yani history'nin 1 numaralı girişi için gözüken tarih 2018-04-25 aslında Fedora 28'in resmi çıkış tarihinden önce bir tarih. Sistemi kurduktan sonraki ilk açılışta dnf upgrade ile güncellediğim için 2 numaralı satırda gözüken tarih doğru olarak sistemin ilk güncellemesine ait giriş.
2022-08-05 Ekleme: dnf'i hızlandırmak için şu videoda Ermanno, /etc/dnf/dnf.conf dosyasını açarak aşağıdaki satırları eklemiş:
max_parallel_downloads=10 # varsayılan 3
fastestmirror=True # tartışmalı
fastestmirror söylendiğine göre sadece anlık olarak sunucuların cevap süresine bakarak bir tercihte bulunuyor. Reddit'te bir gönderide bu seçeneğin en hızlı bant genişliğine sahip sunucuyu seçmediğinden ve çoğu zaman daha yavaş bir indirmeye sebep olabileceğinden bahsedilmiş.
---
[1] https://www.digitalocean.com/community/tutorials/package-management-basics-apt-yum-dnf-pkg
[2] https://askubuntu.com/questions/21657/how-do-i-show-apt-get-package-management-history-via-command-line
[3] https://en.wikipedia.org/wiki/Fedora_version_history
[4] https://communityblog.fedoraproject.org/fedora-28-release-dates-schedule/
Hiç yorum yok:
Yorum Gönder