Unixoid masaüstü bilgisayarları dağıtmak için en iyi uygulamalarınız ve gelecek planlarınız nelerdir? [kapalı]


9

Kâr amacı gütmeyen bir radyo gözlemevi için Linux masaüstü bilgisayarları kuruyorum. Benim için, ilk kez birkaç özdeş makineyi "dağıtmayı", giriş, merkez dizinleri vb. Merkezileştirmeyi düşünmem gerekiyordu. Belki de sezginin aksine, "her şey metinsel" felsefenin bunu kolay bir görev haline getirmediği ve tecrübeli yöneticilerin bu konuda ne yaptığını merak ettim.

Benim durumumda, her makineye Ubuntu 10.04 LTS yüklüyordum. Yüklemeden sonra, yapılandırma dosyalarını değiştiren, yazılımı kaldıran ve yükleyen ve arka plan resimleri veya tarayıcı yer işaretleri gibi bazı dosyaları sunucudan kopyalayan özel bir komut dosyası çalıştırdım. Ancak, sorularımın dağıtımdan bağımsız olduğunu düşünüyorum.

sorunlar

Esas olarak iki sorunla karşılaşıyordum: Birincisi, hem dağıtımlar hem de sürümler arasında tutarsız araçlar ve yapılandırma dosyaları ve ikincisi, bazı önemli yazılım ayarları yapılandırma dosyalarına kolay ve sezgisel bir şekilde göstermiyor.

Ne demek istediğime iki kısa örnek vereyim:

ifconfigAraç ile ikame edilmektedir ip. Örneğin mevcut bir ArchLinux kutusu üzerinde çalışırsa, öncekinin varlığına dayanan tüm komut dosyaları bozulur. Yani, bir komut dosyası çalıştırdığım bir makinede hangi sürümlerin mevcut olduğunu kontrol etmem gerekir ... bu bir şekilde autoconf'u küçük ölçekte yeniden icat etmek gibi geliyor.

İkinci sorun için, masaüstlerine bir çeşit "ortak kimlik" vermek istediğimi düşünün. Post-install-config-script'imde bunu başarmak için aşağıdaki satırları kullanıyorum:

scp user@server:/export/admin/*.jpg /usr/share/backgrounds/
scp user@server:/export/admin/ubuntu-wallpapers.xml /usr/share/gnome-background-properties/
sed 's/warty-final-ubuntu\.png/MyBackground\.jpg/' -i /usr/share/gconf/defaults/10_libgnome2-common
sed 's/warty\-final\-ubuntu\.png/MyBackground\.jpg/' -i /usr/share/gconf/defaults/16_ubuntu-wallpapers
sed 's/ubuntu-mono-dark/ubuntu-mono-light/' -i /usr/share/gconf/defaults/16_ubuntu-artwork
sed 's/Ambiance/Clearlooks/' -i /usr/share/gconf/defaults/16_ubuntu-artwork

Bir CI oluşturmanın kurumsal yöneticiler için ortak bir görev olduğunu düşünüyorum. Öyleyse, nasıl olabilir belki de çapraz masaüstünde merkezi bir yapılandırma tesisi yok? İki ayrı yapılandırma dosyasında iki (özdeş!) Belgelenmemiş değer ayarlamak zorunda kaldığımda garipim.

Sorular

Bir kuruluş ortamında, birden çok istemcideki merkezi, birleşik yapılandırmayı nasıl ele alırsınız?

Debian'ın FAI'si gibi sistemler, "önce yükle, sonra komut dosyasını çalıştır" yöntemime göre (CD'leri değiştirmek zorunda kalmadan) önemli avantajlar sunuyor mu?

Dağıtımınızın ana sürümleri arasında geçiş için iyi uygulamalar nelerdir? Ve teknik konular dışında: Kullanıcı deneyimi söz konusu olduğunda uzun vadeli istikrar vaat eden bir masaüstü ortamı var mı? Kullanıcılarımı KDE 4 veya GNOME 3'e geçirebileceğimi sanmıyorum, ancak XFCE'nin hala bazı fonksiyonel dezavantajları var ...

Bu tür yapılandırma sorunlarını çözen bir * nix sistemi var mı? Örneğin, kuruluşunuzun bazı görüntülerini (logolar, arka plan resimleri, renk ve yazı tipi setleri vb.) İsteyen ve giriş yöneticisine, kullanıcıların masaüstlerine, web uygulamalarına (!) Vb. Uygulayan sistemler olduğunu varsayabilirim. üzerinde. Not: Bizim durumumuzda, şişman müşterilerle çalışmak zorundayım, bu yüzden tamamen ince bir istemci çözümü yardımcı olmaz.

Yanıtlar:


3

Kukla veya CFEngine veya Şef kullanmak probleminiz için doğru çözümdür. Tabii ki sadece çalışan Kukla betiğini yazmak için biraz zaman ve deneme yanılma yaklaşımı tüketecektir. Bu araçlar, bulut üzerindeki karmaşık kurulumları otomatikleştirmek için yaygın olarak kullanılmaktadır ve bizim gibi yöneticilerin hayatlarını basitleştirmiştir. :)


İpucu için teşekkürler! Daha önce MaxMackie'ye sorduğum gibi, Kukla dağıtımımın büyük sürümleri arasında geçiş yaparken yeniden yazma kuralları ile ilgili herhangi bir "merkezi, kitle kaynaklı istihbarat" sağlıyor mu? Örneğin, $ DISTRO'nun GNOME 2'den 3'e geçiş yaptığını biliyorsam, yarı otomatik bir geçiş yolu olacak mı?
jstarek

Diyelim ki, Gnome3 yapılandırması için bir dosya yazabilir ve Gnome3'ün yüklenmesini istediğiniz ana bilgisayarların yapılandırmalarına ekleyebilirsiniz. ancak kukla yapılandırmasını nasıl oluşturduğunuza da bağlıdır. Modüler yaklaşımı takip ederseniz, daha kolay olacaktır. Kukla kendisi Gnome3 veya 2'yi tanıyamayacak (umarım sorunuzu doğru anladım)
Abhishek A

3

Öncelikle, bunun çoklu dağıtımlarla çalışmanın kolay olacağını düşünmeyin.

Büyük masaüstü sunumları yapmadım. Benim için en iyi ödünç, sistemi önyüklemek için LAN önyükleme / tftp kullanmak ve ardından NFS üzerinden yüklemeyi çalıştırmaktı. Linux dağıtımlarının çoğu sizden tüm başlangıç ​​yapılandırmalarını ister - o zaman yükleyiciyi 40 dakika, katılımsız çalışacak şekilde bırakabilirsiniz (hayır "Bu programı gerçekten çalıştırmak istiyor musunuz?" İstemleri). Bu noktada Redhat ve Suse makinelerine bakıyordum - ve standart kurulum tamamlandıktan sonra yüklediğim tüm özel yapılandırmalarla bir RPM hazırladı. Ancak, tüm bunları çeşitli dağıtımlarda otomatikleştirmek oldukça mümkündür .

Çeşitli nedenlerle Ubuntu dağıtımının büyük bir hayranı değilim ama Canonical'ın Lanscape'i çok etkileyici bir araçtır. Ve çok sayıda büyük ölçekli Ubuntu kurulumu yapacaksanız / birden fazla Ubuntu masaüstünü yönetiyorsanız, kesinlikle daha yakından bakmaya değer.


Landscape'ın sitesine baktığımda, yapılandırma dosyası girişlerini işlemediği izlenimini edindim - bu yüzden kurulumda ihtiyacım olan değişiklikleri yapan yerel paketler oluşturabilir miyim?
jstarek

1

CFEngine adlı yazılımla çok çalışıyorum . Ayarladığınız "kuralları" okuyan ve bağlandığı her makinenin bu kurallara uymasını sağlayan ve bu kurallara saygı gösteren bir açık kaynak yapılandırma yöneticisidir. Tamamen açık kaynaklıdır ve şirketimiz Nova adlı yazılımın desteklenen sürümünü kullanmaya karar vermiştir.

Bu, nasıl çalıştığına dair geniş bir görüştür. Diyelim ki yönetilen ağınızda 4 bilgisayar var. Hepsinin sahip olduğu bir dosyaya /etc/syslog.confsahip olması gerekir , hepsi aynıdır (bir ustaya göre) ve chmod 777. Bu kuralı CFEngine'ın yapılandırma dosyasında oluşturursunuz. Merkezi bilgisayarınızdan "ana" /etc/syslog.confdosyasına sahipsiniz . Her X zamanında, bilgisayarınızın CFEngine sürümü ağ üzerinden gidecek ve her kutuya /etc/syslog.confdosyası hakkında soru soracaktır . Her istemcide çalışan CFEngine yerel kopyası, söz konusu dosyayı sorgulayacak ve içeriğini, izinlerini vb. Geri bildirecektir. Caster kopyanızla tam olarak eşleşmezlerse, CFEngine kopyanızı istemciye iletir ve dosyaları yeniden kontrol eder. Onlar eşleşecek ve bir sonraki kuralınıza geçecek.

Basitliğe gelince, CFEngine'ın "vaat" olarak adlandırdığı "kurallarda" sözdizimi alışmak biraz zaman alabilir, ancak öğrenmeye değer (beceri setinize başka bir büyük beceri ekler).


İpucu için teşekkürler, CFEngine'ye bakacağım. Ancak, şu ana kadar okuduğumdan, dağıtımımın yeni bir ana sürümüne geçerken kuralları yeniden yazmamdan beni kurtarmayacak gibi görünüyor, değil mi?
jstarek

1

Peki, nasıl merkezi bir yapılandırma tesisi yok,

Gnome, tüm bu küçük görevleri gerçekleştirebilen GConf'a sahiptir:

http://wiki.novell.com/index.php/Locking_Down_the_GNOME_Desktop

http://library.gnome.org/admin/system-admin-guide/stable/gconf-9.html.en

Ubuntu LTS, masaüstünde uzun süreli destek için neredeyse tek seçenektir.

Sadece bir basit ile birden fazla makine dağıtmak neredeyse mümkündür dd, masaüstü bilgisayar dağıtımları yavaş yavaş daha az çekici bir rota haline getiriyor.

Ayrıca şimdi bir seçenek olarak adlandırılan şişman müşteri olduğunu düşünün .


Zaten şişman istemciler kullanıyorum, ancak bu yapılandırmayı kendi başına kolaylaştırmıyor - sadece merkezi bir sunucudan homedir ve passwd bilgilerini alıyorlar. GNOME GConf'u kullanmadıysa ve / usr / share / gconf / defaults / dizinine önemli yapılandırma dosyaları koymadıysa, bir sunucuda merkezi / etc / dosyası tutabilir ve şişman istemcilerin onu bağlamasını sağlayabilir, ancak hayır, GNOME adamları daha iyi biliyor gibi görünüyor. İç
geçirin

@jstarek şişman müşteriler dağı /, GConf geçersiz kılar canlı/etc/gconf/gconf.xml.*/
Steve-o
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.