Saya bukan administrator sistem, tetapi saya memiliki pengetahuan yang bagus tentang Linux, Unix, Windows dan perangkat keras.
Apa topik yang paling dibutuhkan yang seorang Administrator Linux harus hafal (pada titik mampu memperbaiki, mengatur, menyelesaikannya tanpa harus membaca manual di max; memeriksa halaman manual yang umum dengan distribusi apa pun )?
The FOKUS Saya ingin ditetapkan untuk ini akan menjadi dari jaringan perusahaan untuk administrasi server yang mungkin memiliki beberapa fitur yang sama akan sebagian besar waktu memiliki beberapa yang berbeda juga. Seperti misalnya Anda tidak akan selalu melihat server FTP untuk server perusahaan tetapi mungkin melihat Samba sebagian besar waktu ...
Saya tidak mengatakan "buku yang harus Anda baca" atau hal-hal seperti itu, tetapi saya maksudkan fitur yang paling diperlukan yang mungkin akan diperlukan dalam kehidupan sehari-hari Anda sebagai administrator Linux.
Suka:
- Kernel, iptables
- Sendmail, Postfix, qmail, exim
- Squid, Samba, NFS, LDAP
- Apache, ngxix, lighthttpd
- vsftpd, proftpd
- mengikat
- Masalah sehari-hari dihadapi
- Apa fitur yang paling sering Anda gunakan di siang hari
Ini bukan daftar pesanan atau yang paling dibutuhkan. Itu hanya nama sesuatu yang muncul di kepalaku.
PS: Saya sudah memiliki pengetahuan dasar, tetapi saya tidak punya pengalaman sehari-hari di lapangan. Saya memiliki server, membuat beberapa jaringan, dan sebagainya. Lebih lanjut saya bahkan memiliki beberapa pengetahuan mendalam di beberapa bagiannya. Saya hanya ingin memperbarui ini di sini, seperti saya katakan ini lebih dari DAFTAR HARIAN SEHARI-HARI SYSADMIN LINUX.
Saya akan sangat menghargai jika kalian / cewek bisa daftar topik dan misalnya bidang mana di dalamnya yang paling sering digunakan atau penting untuk dihafal.
Jika Anda yakin pertanyaan saya tidak layak, beri tahu saya tentang hal itu dan saya akan menghapusnya sendiri atau jika Anda merasa cocok tetapi perlu kembali bekerja lagi, beri tahu saya juga dan saya akan mencoba yang terbaik.
Are you really sure you care about the day-to-day things?
mmmmm tapi masalah inst yang terjadi bagian dari kehidupan sehari-hari satu? yang akan mengarahkan Anda ke fitur yang digunakan misalnya jaringan ifconfig dhcp seperti yang Anda katakan ... men-debug pada tingkat masalah apa yang terjadi, dll.Ketahui Alat Yang Anda Miliki
Anda tidak akan pernah tahu segalanya sebelumnya. Tetapi Anda bisa tahu apa yang harus Anda kerjakan. Semakin banyak alat yang Anda ketahui, semakin banyak yang dapat Anda gunakan. Jika Anda tahu apa alatnya, apa fungsinya, dan di mana menemukan lebih banyak informasi tentangnya, maka itu sudah cukup baik untuk memulai.
Biasakan diri dengan
man
halaman - halamannya. Anda tidak harus menghafalnya, tetapi Anda harus tahu di mana menemukan apa yang Anda cari.man
halaman lebih baik daripada Google untuk mencari rincian sintaksis, karena halaman yang diinstal pada sistem yang diberikan mencerminkan berbagai keanehan atau informasi khusus versi yang sesuai dengan sistem yang Anda lihat.Jika Anda menggunakan
apache
banyak, maka saya sarankan mempelajari sintaks konfigurasi apache. Jika Anda menggunakannyanginx
sebagai gantinya, maka pelajari itu sebagai gantinya. Namun demikian, Anda harus tahu apa keduanya dan bagaimana mereka berbeda.Alat Sistem
Ada beberapa alat yang akan membantu Anda apa pun jenis pekerjaan sysadmin yang Anda lakukan. Dengan asumsi Anda mengetahui dasar-dasarnya, seperti
chmod
,,mount
dll., Berikut adalah beberapa alat yang sangat membantu yang tidak dimengerti oleh beberapa admin:Baris perintah Ninja
Saya akan mengatakan pemahaman yang kuat tentang skrip shell tidak membuat keajaiban untuk membuat hal-hal sulit cepat dan mudah. Jika Anda harus mencari sintaksnya, maka kemungkinan Anda tidak akan melakukannya sama sekali, jadi mengetahui sebelumnya sangat penting.
Sebagai contoh, katakanlah Anda memiliki direktori yang penuh dengan
mysqldump
file ".sql", masing-masing mewakili database yang perlu diimpor ke server. Apakah Anda mengimpor 35 semuanya secara manual? Jika Anda cukup terbiasa dengan skrip shell, sangat mudah dan mudah untuk mengetikkan satu perintah lalu mengambil kopi:Catatan: Saya membaginya menjadi beberapa baris terpisah agar dapat dibaca; jika Anda membiarkan titik koma di dalam, Anda dapat meletakkan semuanya dalam satu baris. Kalau tidak, titik koma tidak diperlukan di akhir setiap baris.
Juga, saya sarankan untuk menggunakan
sed
. Anggap saja sebagai cara untuk menerapkan ekspresi reguler di mana saja. http://www.grymoire.com/Unix/Sed.htmlKatakanlah Anda mengubah nomor telepon Anda dan perlu memperbarui semua halaman web Anda sesuai (dan menyimpan salinan cadangan jika Anda mengacaukan).
Mengetahui cara menghubungkan alat yang ada dengan benar untuk melakukan hal-hal baru juga dapat sangat membantu. Katakanlah Anda perlu melakukan hal yang sama seperti di atas, tetapi juga mencari di dalam subdirektori -
Ini juga berguna untuk memiliki pengalaman
perl
. Anda mungkin tidak perlu menulis program yang serius dengan hal itu, tapi itu dirancang untuk melakukan banyak hal-hal yangsed
danawk
lakukan, hanya mungkin sedikit lebih fleksibel.Perl dapat digunakan untuk melakukan sihir baris perintah menggunakan
-e
opsi. Menggunakan dengan-p
,,-n
dan-i
, Anda dapat dengan cepat menulis filter sederhana untuk melakukan hal-hal yang sangat berguna. Misalnya, Anda perlu menemukan alamat IP semua orang yang mengakses "/admin.php" pada bulan September:Lihat? Itu tidak terlalu buruk. Sebagai sysadmin, Anda diharapkan tahu bagaimana melakukan hal ini.
sumber
Saya seorang admin Windows yang mencoba-coba sedikit di Linux, jadi saya tidak dalam posisi untuk menjawab pertanyaan secara langsung. Namun, menurut saya setelah Anda memahami dasar-dasar satu hal yang paling penting yang perlu diketahui admin, terlepas dari OS, adalah di mana dan bagaimana menemukan jawabannya.
sumber
Selain jawaban lain:
Saya pikir Anda juga harus tahu jalan di sekitar proses ditangani:
Saya pikir Anda tidak perlu menguasai sed (saya tahu saya tidak setidaknya), saya berhasil bertahan dengan salah satu greps (grep, egrep, zgrep, dll) dengan mudah. Anda harus tahu sintaks ekspresi reguler dasar.
Saya pikir Anda harus tahu perintah dasar untuk memanipulasi dan / atau memonitor MTA (postfix atau exim) dan MDA (dovecot, cyrus, kurir) jika Anda memelihara server mail. Bahkan jika Anda tidak menjalankannya, Anda harus dapat menjalankan tes SMTP dasar pada MTA, jika hanya untuk masalah pengiriman lokal.
Anda harus tahu jalan di sekitar sistem otentikasi yang Anda gunakan (PAM, LDAP). Di mana kata sandi Anda disimpan? menggunakan prosedur apa? Aplikasi apa yang menggunakan mekanisme otentikasi apa?
sumber
Ada beberapa hal yang benar-benar PERLU Anda ketahui.
Anda harus memiliki pemahaman yang baik tentang shell Anda (bagaimana mem-parsing argumen, bagaimana memperluas wildcard, di mana kasus sudut niggly berada).
Anda harus dapat mengedit file tanpa X11 berjalan.
Anda harus dapat memasang dan melepas sistem file.
Anda harus memiliki kemampuan untuk menyerap informasi baru dengan cepat. Karena ini adalah keterampilan yang Anda butuhkan ketika server farm seluruh perusahaan mogok dan Anda hanya memiliki akses melalui server konsol piddly (itu "konsol" seperti di port serial) dan / atau koneksi VPN yang sangat lambat (membuat cara berbasis X11 apa pun juga menyakitkan). Dan itu akan terjadi, jadi rencanakanlah.
sumber
Contoh-contoh yang diberikan adalah semua jawaban terkait Server yang hebat .. namun .. Administrasi sistem tidak pernah 100% komputer .. Saya berharap begitu!
Anda harus berurusan dengan orang lain, dalam kasus kami, itu berarti Manglement, Lusers, Contractors and Suppliers .. arg ^ n
Keterampilan layanan pelanggan mengetahui cara berbicara tentang apa yang Anda butuhkan / inginkan / harus-lakukan, mendapatkan informasi kepada orang lain, dokumentasi, semua sangat penting dalam Menjaga pekerjaan sysadmin Anda.
Jika Anda ingin agar proyek Anda didanai dan digunakan: Tidak ada gunanya mencoba mendapatkan server baru jika Anda tidak tahu bagaimana cara meminta uang, jika Anda tidak memiliki angka / alternatif / rencana DR / kutipan / rencana implementasi dll. Politik kantor adalah B ** CH, uang selalu: "Ketat" .. apa pun artinya .. itu tidak memengaruhi mobil perusahaan eksekutif, tetapi itu akan memengaruhi keamanan situs Anda & kemampuan untuk melakukan standarisasi jika Anda dapat akan mengesankan alasan mereka pada mereka.
Saya akan mengatakan hal yang paling penting untuk diingat: JANGAN PERCAYA APA YANG DIATAKAN PENGGUNA . Ingatlah hal itu ketika menjawab telepon .. tidak peduli apa yang mereka katakan, Anda masih harus memikirkannya sendiri, karena pada akhirnya Anda keledai, bukan milik mereka, dan mereka umumnya tidak tahu. Hanya karena mereka dapat menyusun paragraf kata kunci yang sarat muatan untuk memperdaya bos Anda, tidak berarti mereka benar-benar tahu apa yang baru saja mereka katakan.
Pikiran lain:
Pastikan Anda memiliki cukup waktu pada UPS untuk mematikan semuanya KAPAN listrik mati
Memantau, pastikan Anda TAHU itu sudah turun .. jangan menunggu lusers untuk menelepon.
BACKUPS BACKUPS BACKUPS .. sistem multiuser cenderung lembur jika Anda tidak memiliki sistem cadangan yang baik .. lembur buruk, (bukan untuk kantong Anda, tetapi untuk anggaran dan penampilan profesionalisme).
JANGAN PERNAH MENGUBAH APA SAJA PADA JUMAT, atau sehari sebelum liburan .. Anda akan dipanggil selama akhir pekan, Anda harus memperbaikinya, Anda akan memiliki waktu yang sangat buruk ..
Standarisasi & Otomatisasi .. sebanyak yang Anda bisa! Jika Anda dapat membuat skrip, mengapa Anda tidak melakukannya?
Cari tahu bagaimana menggunakan / menginstal sistem helpdesk, membuat pengguna mencatat panggilan melalui itu, itu akan memungkinkan Anda untuk melacak aktivitas Anda, memberikan insentif kepada atasan dengan membayar lebih banyak untuk pekerjaan yang Anda lakukan, dan memungkinkan Anda untuk merekam jawaban Anda (defacto KB) .. semua sambil memberi tahu pengguna tentang perkembangannya. Memastikan bahwa pertanyaan pengguna / masalah tidak hilang dalam banjir .. (Spiceworks gratis, ada banyak lainnya)
Saya membeli salinan: Praktek Administrasi Sistem , oleh Limoncelli, saya sangat merekomendasikannya.
sumber
Seorang admin Linux perlu memahami izin file secara menyeluruh, serta penggunaan alat-alat seperti su dan sudo , chmod dan chown dll, cara menambahkan pengguna ke grup atau membuat pengguna baru, cara memberikan hak istimewa SSH kepada pengguna tertentu atau kelompok.
sumber
Perlu cepat dengan editor di baris perintah.
sumber
Pelajari
sed
,,grep
danawk
: banyak dari apa yang saya lakukan setiap hari sebagai sysadmin Linux adalah merobohkan daftar besar file / komputer / pengguna / dll. dan mengubah input menjadi set output lain untuk digunakan program lain.Contoh konkret dari hal ini adalah mengambil daftar komputer yang rusak dari, katakanlah, bugzilla atau RT, menghapus semua informasi asing yang dengan cepat saya salin dan tempelkan ke dokumen teks menggunakan salah satu dari tiga alat di atas, dan kemudian mengeluarkan daftar ruang terbatas sekelompok node yang saya butuhkan untuk SSH.
Juga, Anda pasti harus tahu batas atas shell yang Anda gunakan. Lebih sering daripada tidak, jika Anda harus mengambil banyak file basi, Anda mungkin akan menemukan folder dengan 30k + file di dalamnya.
rm *
tidak akan berfungsi, karena asterisk akan diperluas ke daftar dengan lebih dari 30k entri, dan shell yang Anda gunakan kemungkinan tidak akan dapat menampung daftar ukuran itu. Cara Anda mengatasi ini adalah denganxargs
: alih-alihrm *
, Anda akan menggunakanls | xargs -i{} rm {}
, yang akan berfungsi.sumber
Sebagai seorang sysadmin, saya menganggap diri saya seorang dokter digital (atau, tergantung pada harinya, terkadang seorang ahli bedah otak kelas dunia).
Ketika semuanya bekerja, Anda akan memiliki banyak waktu untuk meningkatkan keterampilan Anda sendiri dan sistem yang Anda kelola.
Ketika sesuatu gagal, Anda harus dapat segera mendiagnosis masalah dan menyadari cara memperbaikinya.
Jadi, Anda perlu mempelajari / menghafal dasar-dasar (dan juga untuk beberapa titik internal) dari server dan aplikasi yang Anda kelola. Katakanlah perusahaan Anda meng-host situs web dengan root web yang dilayani melalui NFS. Tiba-tiba semua node www mulai mengkhawatirkan dan situs berhenti merespons. Apa yang harus dicurigai? Ah-ha! Server NFS baru saja turun dan pengelompokan failover juga tidak berfungsi karena beberapa alasan.
Aspek penting lainnya untuk dipelajari adalah beban dasar dari server yang Anda kelola. Belajarlah untuk menghafal rata-rata beban mereka, penggunaan cpu, penggunaan memori dan hal-hal seperti itu. OK, Anda tidak harus benar-benar menghafal semua itu - grafik yang dibuat dengan Cacti atau net-snmp + mrtg dapat banyak membantu, tetapi jika pager Anda mengkhawatirkan server X berperilaku aneh dan pada saat yang sama helpdesk memanggil Anda menceritakan tentang beberapa lainnya server atau layanan akan gila, Anda mungkin dapat menggabungkan kedua hal itu dan pergi untuk memperbaikinya bahkan sebelum melihat log, riwayat alarm atau grafik.
Juga bersiap-siap untuk yang terburuk: pikirkan apa yang akan Anda lakukan jika seluruh pusat data akan mati karena pemadaman listrik. Bagaimana Anda akan mem-boot semuanya setelah listrik kembali tersedia? Apa yang akan Anda lakukan jika sesuatu tidak mulai? Bagaimana Anda mengembalikan cadangan? Atau apa yang akan Anda lakukan jika seseorang memberi tahu Anda tentang seorang cracker yang baru saja masuk ke server Anda? (Hal-hal semacam ini harus didokumentasikan sebagai daftar periksa, tetapi bagus juga untuk memiliki semacam intuisi)
Dan, seperti yang disebutkan oleh orang lain, lanjutkan dan skrip hal-hal yang seharusnya berjalan (semi-) secara otomatis. Belajar dan bermain dengan shell / Perl, mereka benar-benar teman terbaik Anda dan seringkali dapat memecahkan masalah yang sangat kompleks dengan hanya beberapa perintah yang disatukan.
sumber