Apa praktik terbaik dan rencana masa depan Anda untuk menggunakan desktop yang tidak kosong? [Tutup]

9

Saya telah menyiapkan desktop Linux untuk observatorium radio nirlaba. Bagi saya, ini adalah pertama kalinya saya harus berpikir tentang "menggunakan" beberapa mesin yang identik, memusatkan login, direktori home dan sebagainya. Dengan cepat menjadi jelas bagi saya bahwa, mungkin bertentangan dengan intuisi, filosofi "semuanya tekstual" tidak lantas menjadikan itu tugas yang mudah, dan saya bertanya-tanya apa yang dilakukan oleh admin berpengalaman tentang hal ini.

Dalam kasus saya, saya menginstal Ubuntu 10,04 LTS pada setiap mesin. Setelah instalasi, saya menjalankan skrip khusus yang mengubah file konfigurasi, menghapus dan menginstal perangkat lunak dan menyalin beberapa file, seperti gambar latar belakang atau penanda browser, dari server. Saya pikir, bagaimanapun, bahwa pertanyaan saya adalah distro-independen.

Masalah

Saya terutama menghadapi dua masalah: Pertama, alat yang tidak konsisten dan file konfigurasi, baik di seluruh distribusi dan di seluruh versi, dan kedua beberapa perangkat lunak penting tidak memaparkan pengaturan untuk mengkonfigurasi file dengan cara yang mudah dan intuitif.

Izinkan saya memberikan dua contoh singkat tentang apa yang saya maksud:

The ifconfigalat digantikan oleh ip. Semua skrip yang mengandalkan keberadaan yang pertama akan rusak jika, misalnya, dijalankan pada kotak ArchLinux saat ini. Jadi, saya perlu memeriksa alat mana di mana versi hadir pada mesin saya menjalankan skrip pada ... ini entah bagaimana rasanya seperti menciptakan kembali autoconf dalam skala kecil.

Untuk masalah kedua, pertimbangkan bahwa saya ingin memberi desktop semacam "identitas umum". Dalam skrip post-install-config saya, saya menggunakan baris berikut untuk mencapai ini:

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

Saya kira menciptakan CI adalah tugas umum untuk admin organisasi. Jadi, kenapa tidak ada fasilitas konfigurasi pusat, bahkan mungkin lintas-desktop? Harus menetapkan dua (identik!) Nilai tidak berdokumen dalam dua file konfigurasi yang berbeda menurut saya aneh.

Pertanyaan

Dalam lingkungan organisasi, bagaimana Anda menangani konfigurasi terpusat di banyak klien?

Apakah sistem seperti FAI Debian menawarkan keuntungan signifikan (selain tidak harus mengganti CD) dibandingkan metode "instal dulu, jalankan skrip sesudahnya"?

Apa praktik yang baik untuk transisi antara versi utama distribusi Anda? Dan, terlepas dari hal-hal teknis: Apakah ada lingkungan desktop yang menjanjikan stabilitas jangka panjang sejauh pengalaman pengguna? Saya tidak berpikir saya bisa memigrasikan pengguna saya ke KDE 4 atau GNOME 3, tetapi XFCE masih memiliki beberapa kelemahan fungsional ...

Apakah ada sistem * nix yang mendukung jenis masalah konfigurasi ini? Sebagai contoh, saya berasumsi ada sistem yang meminta Anda untuk beberapa citra organisasi Anda (logo, gambar latar belakang, set warna dan font dll) dan menerapkannya ke manajer login, desktop pengguna, aplikasi web (!) Dan sebagainya di. Catatan: Dalam kasus kami, saya harus bekerja dengan klien gemuk, jadi solusi klien murni tidak akan membantu.

jstarek
sumber

Jawaban:

3

Menggunakan Puppet atau CFEngine atau Chef adalah solusi yang tepat untuk masalah Anda. Tentu saja akan memakan waktu dan pendekatan trial & error untuk menulis naskah Wayang yang hanya berfungsi Alat-alat ini banyak digunakan untuk mengotomatisasi instalasi kompleks di cloud dan telah menyederhanakan kehidupan admin seperti kami. :)

Abhishek A
sumber
Terima kasih atas petunjuknya! Seperti yang saya tanyakan kepada MaxMackie sebelumnya, apakah Puppet menyediakan segala jenis "kecerdasan terpusat, sumber daya bersarang" yang berkaitan dengan aturan penulisan ulang ketika beralih di antara versi utama distribusi saya? Misalnya, jika saya tahu $ DISTRO beralih dari GNOME 2 ke 3, apakah akan ada jalur migrasi semi-otomatis?
jstarek
Anda dapat menulis file untuk, katakanlah, konfigurasi Gnome3 dan memasukkannya ke dalam konfigurasi host tempat Anda ingin menginstal Gnome3. tetapi juga tergantung pada bagaimana Anda membuat konfigurasi boneka. Jika Anda mengikuti pendekatan modular maka akan lebih mudah. Wayang itu sendiri tidak akan dapat mengidentifikasi Gnome3 atau 2. (harap saya menjawab pertanyaan Anda dengan benar)
Abhishek A
3

Pertama, jangan berharap ini akan mudah bekerja dengan banyak distribusi.

Saya belum menjalankan peluncuran desktop besar. Bagi saya tradeoff terbaik menggunakan boot LAN / tftp untuk bootstrap sistem kemudian menjalankan instal melalui NFS. Kebanyakan distro Linux meminta semua konfigurasi awal di depan - kemudian Anda dapat membiarkan installer berjalan selama, katakanlah 40 menit, tanpa pengawasan (tidak ada "Apakah Anda benar-benar ingin menjalankan program ini?" Meminta). Pada saat itu saya sedang mencari mesin Redhat dan Suse - dan menyiapkan RPM dengan semua konfigurasi khusus yang saya instal setelah instalasi standar selesai. Namun sangat mungkin untuk mengotomatisasi semua ini di berbagai distro.

Saya bukan penggemar berat distribusi Ubuntu karena berbagai alasan, tetapi Lanscape Canonical adalah alat yang sangat mengesankan. Dan jika Anda akan melakukan banyak instalasi skala besar Ubuntu / mengelola beberapa desktop Ubuntu itu layak untuk dilihat lebih dekat.

symcbean
sumber
Melihat situs Landscape, saya mendapat kesan bahwa itu tidak menangani entri file konfigurasi - jadi, akankah saya membuat paket lokal yang melakukan perubahan yang saya butuhkan pada instalasi?
jstarek
1

Saya telah banyak bekerja dengan perangkat lunak yang disebut CFEngine . Ini adalah pengelola konfigurasi sumber terbuka yang bertuliskan "aturan" yang Anda tetapkan dan memastikan bahwa setiap mesin yang terkait dan menghormati aturan-aturan itu. Ini sepenuhnya open source dan sangat berguna perusahaan kami telah memutuskan untuk menggunakan versi perangkat lunak yang didukung yang disebut Nova.

Ini adalah pandangan luas tentang cara kerjanya. Katakanlah Anda memiliki 4 komputer di jaringan terkelola Anda. Mereka semua perlu memiliki file /etc/syslog.conf, yang dimiliki oleh root, semua sama (menurut master) dan chmod 777. Anda akan membuat aturan ini dalam file konfigurasi CFEngine. Dari komputer pusat Anda, Anda memiliki file "master" /etc/syslog.conf. Setiap X jumlah waktu, CFEngine versi komputer Anda akan melalui jaringan dan menanyakan setiap kotak tentang /etc/syslog.conffile itu. Salinan CFEngine lokal yang berjalan pada setiap klien akan menanyakan file yang dimaksud dan melaporkan kembali konten, izin, dll. Jika mereka tidak cocok dengan salinan kastor Anda, CFEngine akan mendorong salinan Anda ke klien dan memeriksa lagi file tersebut. Mereka akan cocok dan dia akan pindah ke aturan Anda berikutnya.

Sedangkan untuk kesederhanaan, sintaks yang digunakan dalam "aturan" CFEngine (yang mereka sebut janji) mungkin memerlukan sedikit waktu untuk membiasakan diri, tetapi mereka layak untuk dipelajari (menambah keterampilan hebat lainnya untuk keahlian Anda).

n0pe
sumber
Terima kasih atas petunjuknya, saya akan melihat CFEngine. Namun, dari apa yang saya baca sampai sekarang, sepertinya itu tidak akan menyelamatkan saya dari penulisan ulang aturan ketika beralih ke versi utama baru dari distro saya, kan?
jstarek
1

Jadi, kenapa tidak ada fasilitas konfigurasi pusat,

Gnome memiliki GConf yang dapat melakukan semua tugas kecil seperti itu:

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 adalah satu-satunya pilihan untuk dukungan jangka panjang pada desktop.

Menyebarkan beberapa mesin hampir mungkin hanya dengan sederhana dd, distribusi desktop perlahan-lahan menjadikan ini rute yang kurang menarik.

Juga pertimbangkan pilihan sekarang adalah klien gemuk .

Steve-o
sumber
Saya sudah menggunakan klien besar, tetapi itu tidak membuat konfigurasi lebih mudah dengan sendirinya - mereka hanya mendapatkan info homedir dan passwd dari server pusat. Jika GNOME tidak menggunakan GConf dan meletakkan file konfigurasi penting di / usr / share / gconf / defaults /, seseorang mungkin hanya menyimpan pusat / etc / di suatu tempat di server dan meminta klien gemuk memasangnya, tetapi tidak, orang-orang GNOME sepertinya tahu lebih baik.
Huh
@jstarek, klien gemuk meningkat /, GConf menimpa langsung/etc/gconf/gconf.xml.*/
Steve-o