Sık kullandığım farklı ağlara erişirken, ağ ayarlarımı, ana bilgisayar dosya içeriklerimi ve / etc / resolver dosyalarımı yapılandırmak için bazı otomasyon komut dosyaları üzerinde çalışıyorum.
Tüm hosts dosyasında değişiklik gerektirebilecek bazı kombinasyonlar vardır ve paylaşılan kombinasyonları her yerde çoğaltarak, farklı kombinasyonlardan oluşan bir matris ayarlamak zorunda kalmamak istiyorum.
Mesela ben olabilir üzerinde yani iş ağı. veya VPN üzerinden erişebilirim. Her iki durumda da, ağın düzgün çalışması için hosts dosyasına bazı ayarlar eklemem gerekiyor, bazıları paylaşılıyor, bazıları paylaşılmıyor. Ayrıca, VPN üzerindeysem evde olabilirim, bu durumda hosts dosyasında eklemek istediğim başka ayarlar da var .
Bu nedenle, "home için bir dosya oluşturmak yerine, VPN üzerinden çalışmaya" veya "home'a, işe erişmemek" vb. Yerine başka dosyalar eklememin bir yolu olduğunu umuyordum.
Örneğin, aşağıdaki varsayımsal sözdiziminin işe yaradığını varsayalım:
#!include home.hosts
#!include work.hosts
127.0.0.1 localhost
::1 localhost
Bu şekilde, bu iki ekstra dosyanın birini veya her ikisini birden temizleyebilir ve gerisini bırakabilirim.
Ya da, bunu engellemek, bunu yapmanın sadece bu gibi dosyaları yeni bir ana bilgisayar dosyasına birleştiren küçük bir komut dosyası oluşturmaktan daha iyi bir yol var ve otomasyon kurulumumun bir parçası olarak, önce bu ekstra dosyaların bazılarını temizledim, ve sonra ben bu ekstra dosyalardan tek hosts dosyasını yeniden oluşturmak için komut dosyasını çağırmak?
dscl
Komutun farkında değildim, bu konuda da araştırma yapmam gerekecek.
dscl
kendisi için, /etc/hosts
sadece mevcut veri kaynaklarından biridir hostname / IP adresi eşleştirmeleri (ders arasında) sağlanması. dscl
Önbelleğe yazan ve önbelleği temizleyen bir komut dosyası oluşturmak , durumunuzda anasistemler dosyasının birden çok kopyasını saklamaktan veya her zaman yeniden yazmaktan daha iyi sonuç verebilir.
dscl
doğrudan değiştirmek yerine ana bilgisayar dosyasında değişiklik yapılmasını istediğinizden emin misiniz ?