Daha önceki bir yazıda .pacnew dosyalarının ne kadar baş ağrıtabileceğini konuşmuştuk, değil mi? O dosyalar genelde "Dikkat et, yeni ayar geldi" diye bağırır. Ama bu .pacsave dosyaları? Onlar tam tersi bir durumda ortaya çıkıyor ve genelde iyi ki oradalar.
Bir paketi kaldırıyorsun, sonra "Tüh, bütün ayarlarım gitti!" diye hayıflanıyorsun. İşte .pacsave, Arch Linux'te Pacman'in seni bu durumdan kurtaran küçük sigortasıdır. Bu dosyalar, .pacnew ile çok yakından ilişkili, ama tamamen zıt bir senaryoda beliriyorlar.
.pacsave Dosyası Tam Olarak Nedir?#
Kısacası, .pacsave dosyası, sen bir paketi kaldırdığında, Pacman'in o pakete ait değiştirilmiş yapılandırma dosyalarını çöpe atmak yerine yedekleme yöntemidir. Bu, Pacman'in "Emin ol, bu sana lazım olur" deme şekli.
Bir örnek üzerinden gidelim:
Diyelim ki apache kurdun ve /etc/httpd/conf/httpd.conf dosyasını binbir emekle düzenledin. Sonra bir gün apache'yi kaldırmaya karar verdin: sudo pacman -R apache.
Pacman o dosyaya bakar ve "Vay, bu adam bunu değiştirmiş" der. Onu silmek yerine, adını şöyle değiştirir:
/etc/httpd/conf/httpd.conf.pacsave
İşte bu dosya, senin o eski, değerli yapılandırmanı içerir. Peki ya o dosyaya hiç dokunmasaydın, yani olduğu gibi bıraksaydın? O zaman Pacman "Bu zaten standart, çöpe gitsin" der ve silerdi. 🚮
Pacman Neden .pacsave Oluşturuyor?#
Pacman'in işi sistemi tutarlı tutmak, evet, ama aynı zamanda senin emeğini de korumak. Yapılandırma dosyaları genellikle kişisel veya sisteme özel değişiklikler içerir.
Bir paketi kaldırırken kendine şu basit soruyu sorar: "Bu config dosyasına dokunulmuş mu?"
- Cevap 'Hayır' ise? Siler.
- Cevap 'Evet' ise?
.pacsaveyapar.
Bu kadar basit. Bu mantık, yazılımı geçici olarak kaldırdığında değerli ayarlarını kaybetmeni engeller. pacman -Rns gibi komutlarla, yani artık ihtiyaç duyulmayan bağımlılıkları temizlerken bile, Pacman değiştirilmiş dosyalarını güvenlik için .pacsave olarak korur.
Sistemimdeki Tüm .pacsave Dosyalarını Nasıl Bulurum?#
Peki, sistemim bu 'sigorta' dosyalarıyla doldu mu? Bunu öğrenmek çok kolay.
find komutu bu işin klasik yoludur:
sudo find /etc -type f -name "*.pacsave"
Ama benim gibi hem .pacnew hem de .pacsave'leri tek yerden yönetmek isteyen biraz daha 'düzenli' 🤓 biriysen, pacman-contrib paketini kurmanı tavsiye ederim.
sudo pacman -S pacman-contrib
Bu paket kurulduktan sonra, terminale sadece şunu yazman yeterli:
sudo pacdiff
Bu harika araç, sana hem yeni yapılandırma dosyalarını (.pacnew) hem de bu yedeklenmiş eski dosyaları (.pacsave) tek bir arayüzde gösterir, mis gibi.
Eski Ayarları Geri Yükleme (Rehber)#
Diyelim ki o apache'yi geri yükledin ve "Ah, benim eski ayarlarım neredeydi?" dedin. .pacsave dosyasını geri yüklemek için onu yeniden adlandırman yeterli.
sudo mv /etc/httpd/conf/httpd.conf.pacsave /etc/httpd/conf/httpd.conf
Tabii, dosyayı geri getirdikten sonra ilgili servisi yeniden başlatmayı unutma:
sudo systemctl restart httpd
İşte bu kadar. Eski ayarların saniyeler içinde geri döndü.
.pacsave Dosyalarını Ne Zaman Silmeliyim?#
İşte burası önemli.
Kritik Uyarı 🛑 Bir .pacsave dosyasını silmeden önce iki kez düşün. Sadece şu durumlarda güvenle silebilirsin:
- O paketi bir daha asla kurmayacağına eminsen.
- Dosyanın içine (
catveyananoile) baktın ve 'Burada önemli hiçbir şey yokmuş' dediysen.
Eğer eminsen, silme komutu basit:
sudo rm /etc/httpd/conf/httpd.conf.pacsave
Ben genelde silmek yerine ~/yedekler/ diye bir yere taşıyorum. Ne olur ne olmaz... Sanırım biraz istifçiyim. 😅
sudo mv /etc/httpd/conf/httpd.conf.pacsave ~/yedekler/
Hızlı Soru-Cevap (Kafa Karışıklığı Giderici)#
Hızlıca birkaç klasik soruyu da cevaplayalım:
-
S:
.pacnewile.pacsavearasındaki fark ne? -
C:
.pacnewgüncelleme yaparken gelir (Sistem: "Bak, bu yeni sürümün ayar dosyası, seninkinden farklı")..pacsaveise kaldırma yaparken gelir (Sistem: "Sen bu dosyayı değiştirmiştin, ben bunu siliyorum ama yedeği burada"). -
S:
.pacsavedosyalarını hemen silebilir miyim? -
C: Yapabilirsin, ama yapma. İçine bir bak. Belki o paketi 3 ay sonra tekrar kuracaksın ve o ayarlara ihtiyacın olacak.
-
S: Her paket
.pacsaveoluşturur mu? -
C: Hayır. Sadece (1) yapılandırma dosyası içeren VE (2) senin o dosyayı değiştirmiş olduğun paketler kaldırılırken oluşur.
-
S: İkisini birden nasıl yönetirim?
-
C:
pacman-contribkur vesudo pacdiffkullan. Hayatını kolaylaştırır.
İşin Özü...#
Kısacası, .pacsave dosyaları Pacman'in en akıllı özelliklerinden biri. Senin için bir güvenlik ağı 🕸️. Her paket kaldırdıktan sonra bir pacdiff komutu çalıştırmak (veya find komutu) ve bu dosyalara bir göz atmak, /etc dizinini temiz tutar ve değerli yapılandırmalarını kaybetmemeni sağlar.
Yorumlar