เครื่องมืออะไรที่คุณควรรู้อย่างแน่นอนในฐานะ Windows / Linux Sysadmin [ปิด]


17

เครื่องมือ / ยูทิลิตี้อะไรที่คุณควรรู้อย่างแน่นอนในขณะที่ทำงานเป็น Linux หรือ Windows Sysadmin

ฉันกำลังคิดถึงตัวอย่างเกี่ยวกับGNU / หน้าจอที่คุณต้องการหากคุณใช้งานเซิร์ฟเวอร์ Linux


+1 สำหรับ GNU / หน้าจอ - ฉันได้เพียงแค่ "ค้นพบ" มันในสัปดาห์นี้ ...
เดวิด Heggie

คุณกำลังพูดถึงซอฟต์แวร์หรือเครื่องมือฮาร์ดแวร์?
dance2die

ฉันคิดเกี่ยวกับซอฟต์แวร์ แต่ฮาร์ดแวร์ก็มีประโยชน์เช่นกัน ฉันคิดว่าฉันจะแปลงโพสต์นั้นเป็น CW เพื่อแสดงรายการเครื่องมือทั้งหมด
paulgreg

คำตอบ:


25

vi - ฉันรู้ว่าทุกคนไม่ชอบมัน แต่มันจะอยู่บนเซิร์ฟเวอร์ * ที่คุณเจอและเมื่อทุกอย่างไม่ทำงานคุณจะต้องแก้ไขไฟล์กำหนดค่า ฉันจะแนะนำ csh และ sh ด้วยเหตุผลเดียวกัน


4
เสียงเรียกเข้าจริง แต่การรู้คำสั่ง vanilla vi เป็นประโยชน์เสมอสำหรับการติดตั้งที่ไม่มีการติดตั้งเป็นกลุ่ม
Rob Wells

5
ฉันคิดว่าโพสต์นี้มีศักยภาพมากขึ้นสำหรับคำตอบอื่น ๆ ผมคิดว่านี่คือการทำเครื่องหมายเป็นคำตอบนิดก่อนเวลาอันควร ...
dance2die

ฉันชอบ vi เพื่อเป็นกลุ่มและพยายามใช้ให้มากที่สุด : P
Roy Rico

34

ในฐานะที่เป็นของ Windows ดูแลระบบคุณอย่างจะต้องคุ้นเคยกับSysInternals ทั้งสำหรับการเขียนโปรแกรมและการวิเคราะห์สิ่งที่เกิดขึ้นกับเครื่องสิ่งเหล่านี้มีค่า


2
อย่างแน่นอน - เครื่องมือเหล่านั้นช่วยประหยัดคอของฉันมากกว่าหนึ่งครั้ง
Keithius

โอ้ฉันคิดว่าเขากำลังแนะนำหนังสือที่มีค่าน้อย ๆ
Pacerier

29

PuTTY : ไคลเอ็นต์ SSH ฟรีที่ยอดเยี่ยมสำหรับ Windows ทุกที่ที่ฉันทำงานได้ใช้สิ่งนี้เพื่อเชื่อมต่อกับเซิร์ฟเวอร์ Unix จาก Windows


3
ฉันใช้ PuTTY เมื่อฉันใช้คอมพิวเตอร์ของผู้อื่นเพื่อเข้าสู่ระบบจากระยะไกล แต่สำหรับเครื่องที่ฉันใช้เป็นประจำฉันต้องติดตั้ง Cygwin / X ไม่มีสิ่งใดแทนการให้ไคลเอนต์ X แสดงบนกล่องของคุณเอง
Jon Ericson

2
+1, PuTTY สร้างขึ้นจากการชนะบริสุทธิ์ 99.98%
Avery Payne

เพียงเพิ่ม ผู้คนจำนวนมากรู้จักและชื่นชอบเรื่องโป๊ว ฉันชอบแนะนำให้พวกเขาใช้ Pageant เช่นกัน ด้วยเหตุผลบางอย่าง 75% ของผู้คนฉันรู้ว่าผู้ที่เริ่มใช้ผงสำหรับอุดรูไม่มีความคิดที่มีอยู่ประกวดจนกว่าฉันจะเดินพวกเขาแม้ว่าการตั้งค่าคู่คีย์สาธารณะ / ส่วนตัวของพวกเขา ตอนนี้พวกเขาไม่สามารถเชื่อได้ว่าพวกเขาไม่เคยมีมาก่อน
Zak


17

ข้อความแสดงแทน

อย่าลืม sysdamin ต้องได้รับร่างกายด้วยกล่องคอมพิวเตอร์ของพวกเขา!

คุณต้องแน่ใจว่าคุณมีอย่างน้อยหนึ่งตัว

  1. ไขควงหัวฟิลิปส์
  2. ไขควงมาตรฐาน (หัวแบน)
  3. Tweesers (หยิบสกรูเหล่านั้นที่ตกลงไปในจุดที่ซ่อนอยู่ในมือถือของคุณ)
  4. สายเคเบิล SATA สำรอง
  5. สายเคเบิลเครือข่ายสำรอง RJ45 (และข้ามสายเคเบิล)
  6. อัดอากาศ -> กำจัดฝุ่นทั้งหมด

เพื่อนบางคนเขียนเกี่ยวกับ 10 สิ่งที่เขา / เธอคิดว่าทุกคนควรมีในกล่องเครื่องมือ


อันที่จริงฉันคิดว่าผู้ดูแลระบบจำนวนมากอาศัยอยู่โดยไม่ต้องมีร่างกาย
Pacerier

14

การเขียนสคริปต์

ฉันได้เรียนรู้ว่าแม้แต่เชลล์คำสั่งมาตรฐานของ Windows ก็มีประโยชน์จริงๆ ไม่จำเป็นต้องติดตั้ง PowerShell หรือ cygwin เพื่อรับฟังก์ชั่นการเขียนสคริปต์ที่เหมาะสมโดยเฉพาะอย่างยิ่งเมื่อควรติดตั้งสคริปต์บนเครื่องไคลเอ็นต์


2
ฉันเห็นด้วยกับความสำคัญของการเขียนสคริปต์ แต่ฉันไม่เห็นด้วยที่คุณจะได้รับการเขียนสคริปต์ที่ดีโดยไม่ต้องติดตั้ง Cygwin, PowerShell, Perl หรืออะไรบางอย่างตามบรรทัดนั้น ไฟล์แบทช์เป็นเรื่องตลกที่น่าผิดหวังเมื่อเทียบกับภาษาสคริปต์ที่แท้จริงและโดดเด่นเต็มรูปแบบ
Christopher Cashell

2
แน่นอนว่าภาษาสคริปต์แบบเต็มรูปแบบนั้นโหลดได้ดีกว่าสคริปต์แบบค้างคาว, cmd หรือ vbs ทั้งหมดที่ฉันพูดคือเครื่องมือการเขียนสคริปต์ Windows ในตัวนั้นเพียงพอสำหรับงานหลายอย่างที่น่าประหลาดใจโดยเฉพาะอย่างยิ่งเมื่อไม่มีอะไรดีกว่า มันเหมือนกับว่า "'ลองใช้นิพจน์ทั่วไป!' - ตอนนี้คุณมีปัญหาสองข้อ "พูด
macbirdie

7

เครื่องมือ Windows:
เมื่อเร็ว ๆ นี้ในการดีบักปัญหามัลติคาสต์ที่ฉันพบฉันพบว่าNMapมีประโยชน์อย่างเหลือเชื่อสำหรับการดีบักทราฟฟิกเครือข่าย Wiresharkก็มีประโยชน์เช่นกัน


5
ทั้งยังมีในลินุกซ์ (และยังมีประโยชน์มาก)
เดวิด Z

7

มีเครื่องมือ unix / linux ขนาดเล็กมากมายที่เป็นประโยชน์

grep, strace, หน้าจอ GNU, ค้นหา, rsync, sed, awk, และ tripwire ก็น่าสนใจเช่นกัน

รายการยังคงดำเนินต่อไปและแน่นอนฉันลืมไปมากกว่ารายการที่นี่ และเรียนรู้เกี่ยวกับวิธีกำหนดค่าเครื่องมือเหล่านี้ตามที่คุณต้องการเช่นการกำหนดค่าไฟล์ * rc สิ่งนี้จะทำให้พวกเขามีประโยชน์มากขึ้น ตัวอย่างเช่นนี่คือไฟล์. screenrc ของฉันเนื่องจากคุณดูเหมือนหน้าจอที่สนใจ

1 startup_message off
2 hardstatus alwayslastline
3 hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{=kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B}%Y-%m-%d %{W}%c %{g}]'
4 
5 # Window numbering starts at 1, not 0.
6 bind c screen 1 
7 bind 0 select 10
8 
9 # Default screens
10 screen -t shell1        1
11 screen -t shell2        2
12 screen -t shell3        3

คุณสามารถพูดในสิ่งที่สตริง hardstatus ผลิต? จะดีจะเห็นมันนี่มากกว่าถอดรหัส gobbledegook ข้างต้น ...
Hamish Downer

จริงแท้แน่นอน! มันเป็นความลับอย่างยิ่ง มันแบ่งบรรทัดสถานะออกเป็นสามส่วน ด้านซ้ายเป็นชื่อโฮสต์ตรงกลางคือรายการของหน้าจอทั้งหมดที่มีหมายเลขและชื่อหน้าจอปัจจุบันจะมีหน้าจอสูงด้านขวาคือวันที่และเวลา มีสีต่าง ๆ มากมายเช่นกัน
devin

6

คู่หูที่สมบูรณ์แบบสำหรับผู้ใช้ PuTTY สำหรับ Windows ที่ดูแลเครื่องระยะไกล * สำหรับฉันคือWinSCPซึ่งเป็นไคลเอ็นต์ FTP, SCP และ SFTP ที่สมบูรณ์แบบเรียบง่ายและใช้งานง่ายขนาดเล็ก


5

Powershell! Powershell เป็นเชลล์คำสั่งที่ยอดเยี่ยมสำหรับ windows สร้างขึ้นบน. NET Framework


5

คุณควรคุ้นเคยกับแพลตฟอร์มเนทีฟและเครื่องมือสำรองข้อมูลยอดนิยมในทุกแพลตฟอร์ม ไม่มีอะไรที่ทำให้ฉันแย่ยิ่งกว่าผู้ดูแลระบบที่ไม่รู้วิธีสำรองข้อมูลที่ดี การสำรองข้อมูลที่ดีจะช่วยให้คุณประหยัดจากความผิดพลาดใด ๆ ที่คุณอาจทำ

-ntbackup บน windows, dd / tar บน Linux คำสั่ง dump ฐานข้อมูล -tftp ไปยังสวิตช์สำรอง / เราเตอร์ / อุปกรณ์


5

เครื่องมือการเขียนสคริปต์เชลล์: bash / sh, awk, grep, head, tail, less, cat, sort, uniq, wc (และอื่น ๆ )

Awk ช่วยให้คุณวิเคราะห์ไฟล์บันทึกหรือไฟล์อื่น ๆ ที่สำคัญเมื่อคุณต้องการวินิจฉัยปัญหาได้อย่างง่ายดาย บางคนใช้perlสิ่งนี้ คุณไม่จำเป็นต้องรู้ทุกอย่างเกี่ยวกับเครื่องมือทั้งสอง แต่คุณควรรู้อะไรบางอย่างเพื่อให้คุณสามารถตรวจสอบบันทึกการเข้าถึงหรือบันทึก http และดูว่ามีอะไรผิดปกติเกิดขึ้นหรือไม่

รวม awk กับ sort, uniq, tail, grep และ wc เพื่อทำให้ชีวิตของคุณง่ายขึ้น

ผสมในเชลล์สคริปต์บางตัว มันมีประโยชน์อย่างยิ่งที่สามารถทำสิ่งต่าง ๆ เช่น

for i in server1.example.com server2.example.com server3.example.com ; do
  xterm -e "ssh ${i} tail -f /var/log/message | grep something ";
done;

นี้ช่วยให้คุณสามารถบันทึก grep somethingในสามเซิร์ฟเวอร์สำหรับ เทคนิคเช่นนี้ช่วยให้คุณประหยัดเวลาได้มากและเป็นเพราะเครื่องมือการเขียนสคริปต์เชลล์


for i in server{1,2,3}.example.com ; doที่คุณควรรู้ของอัญมณีนี้: ทางลัดเช่นนี้ช่วยประหยัดการพิมพ์จำนวนมาก
mogsie


4

tail- มีให้ในระบบ Linux / Unix ส่วนใหญ่ให้คุณดูบรรทัดสุดท้ายของไฟล์ (หรือท้ายท้าย) tail -fช่วยให้คุณดูบรรทัดใหม่ที่เพิ่มเข้าไปในไฟล์ตามที่ปรากฏ

สำหรับ Windows ฉันเหมือนBareTail


ฉันชอบน้อยกว่าเพียงพิมพ์ "F" (shift + f) น้อยก็จะทำให้ "ไฟล์ที่ถูกต้อง" หางตาม inodes ซึ่งเป็นปัญหาเมื่อ logfiles ถูกหมุนในขณะที่คุณดู
serverhorror

การใช้tail -F(ตรงข้ามกับtail -f) จะให้พฤติกรรมตามชื่อแทนการตามด้วยไอโหนด
Christopher Cashell

3

นี่อาจไม่ใช่คำตอบที่คุณต้องการ แต่ฉันแค่อยากแบ่งปันความคิด ในการบริหารระบบทั่วไปไม่เพียง แต่เกี่ยวกับเครื่องมือ แต่ยังเกี่ยวกับกรอบจิตที่คุณใช้ ในระยะสั้น - ถ้าคุณรู้ว่างานที่คุณต้องการทำแล้วหาเครื่องมือที่จะทำมันค่อนข้างง่าย

โดยทั่วไปมีคำถามไม่กี่ระบบดูแลระบบที่ต้องรู้เกี่ยวกับระบบ:

  1. ฉันมีอะไร (ฮาร์ดแวร์เครื่องมือคลังซอฟต์แวร์เช่น rpm, apt, lshw)
  2. ฉันเป็นยังไงบ้าง (cpu, หน่วยความจำ, การใช้ดิสก์, เครื่องมือการใช้แอปพลิเคชัน, เช่นด้านบน, vmstat, sar)
  3. ฉันจะทำอย่างไรในอนาคต (เครื่องมือตรวจสอบเช่น nagios, zabbix)
  4. ฉันต้องการความปลอดภัยมากแค่ไหน? (เครื่องมือไฟร์วอลล์, เครื่องมือเพิ่มประสิทธิภาพเซิร์ฟเวอร์เช่น iptables, snort, รหัสระบบ, โมดูลความปลอดภัยสำหรับแอปพลิเคชัน)
  5. ฉันต้องการให้เซิร์ฟเวอร์ทำอะไร (เครื่องมือในการจัดการแอปพลิเคชันเช่น postfix, qmail, apache, java, php และอื่น ๆ )
  6. จะทำให้ชีวิตของฉันง่ายขึ้นได้อย่างไร (เครื่องมือสำหรับไฟล์เวอร์ชันปรับใช้การกำหนดค่าในเซิร์ฟเวอร์หลายเครื่องการติดตั้งแบบไม่ต้องใส่ข้อมูล)

ตอนนี้ทางเลือกส่วนบุคคลของเครื่องมือคือ .. ส่วนตัว

Btw คำตอบเกี่ยวกับ vi ยอดเยี่ยมมาก!

ม.


2

บรรณาธิการที่ดี ไม่สำคัญหรอกว่าฉันจะอยู่ที่นี่เพื่อเริ่มสงครามไฟ แต่คุณต้องเรียนรู้การแก้ไขที่ดี

ฉันใช้ Emacs เพื่อทุกสิ่ง Vi (m) เป็นอีกสิ่งหนึ่งที่ดี ไม่แน่ใจเกี่ยวกับสิ่งที่จะดีที่สุดใน Windows แต่ฉันเดาว่าตัวแปร Win32 ของ 2 ที่ฉันพูดถึงจะดี


ตามที่กล่าวไว้ข้างต้น vi มีให้บริการบนเซิร์ฟเวอร์ทุกเครื่องเพื่อให้ทราบว่ามีคุณค่าเมื่อคุณอยู่ใน บริษัท ที่ให้บริการโฮสต์ หากคุณไม่สามารถเชื่อมต่ออินเทอร์เน็ตคุณไม่สามารถติดตั้งเครื่องมือแก้ไขที่คุณเลือกได้ดังนั้นตรวจสอบให้แน่ใจว่าคุณสามารถแก้ไขไฟล์กำหนดค่าด้วยสิ่งที่มีอยู่และใช้เวลาครึ่งชั่วโมงในการใช้ vimtutor (พิมพ์ vimtutor ที่บรรทัดคำสั่ง) แม้ว่า nano นั้นค่อนข้างเป็นสากลเช่นกัน แต่มีช่วงการเรียนรู้ค่อนข้างน้อย
Hamish Downer

2

สำหรับการดูแลระบบ Windows:

Cygwin บางครั้งคุณก็ต้องทำแฟ้มข้อความอย่างรวดเร็วgrep, wc, awkหรือสิ่งที่จะใช้เวลานานเกินไปที่จะเขียนเป็นสคริปต์ บันทึกเว็บด่วนจะสแกนด้วยgrepและawkสามารถบันทึกได้ทั้งวัน



2

dmidecode - ยอดเยี่ยมสำหรับการรับข้อมูลทุกประเภทเกี่ยวกับเครื่องที่ทำงานอยู่

strace - เพราะเมื่อคุณไม่สามารถหาสาเหตุที่คำสั่งที่คุณออกใช้ไม่ได้ตามที่คุณต้องการ

พบ - มีตัวเลือกมากขึ้นสำหรับคำสั่งเล็ก ๆ น้อย ๆ นี้กว่าที่คุณอาจจะรู้ อ่านหน้าคนและรู้แจ้ง

xargs - มีประโยชน์มาก ๆ เมื่อคุณต้องการจัดการกับรายการต่าง ๆ

rsync - การรู้จัก rsync และตัวเลือกต่าง ๆ นั้นมีความสำคัญต่อการย้ายข้อมูลอย่างปลอดภัยและรวดเร็วในเครือข่ายของคุณ

telnet - คำสั่ง telnet ที่อ่อนน้อมถ่อมตนน่าจะช่วยฉันในการวินิจฉัยปัญหาการเชื่อมต่อเครือข่ายได้มากกว่าปีที่ผ่านมา

nmap - ยกเว้นอาจเป็น nmap

nc - netcat ยอดเยี่ยมมากสำหรับการตั้งค่าเซิร์ฟเวอร์ด่วนเพื่อดูว่าลูกค้าพยายามทำอะไรหรือแม้แต่ "telnet" โดยใช้ udp อ่านบทช่วยสอนเพื่อดูว่ามันมีประสิทธิภาพเพียงใด

sslclient openssl ของ Telnet ผ่านการเชื่อมต่อที่ปลอดภัยลงในเซิร์ฟเวอร์ https เพื่อวินิจฉัยความแปลก

ฉันแน่ใจว่ามีตันอีกมากที่ฉันจะจำได้ในที่สุด ตรวจสอบอีกครั้งสำหรับการปรับปรุง ;-)



1

ฉันกลายเป็นแฟนตัวยงของ DTrace แต่ ณ จุดนี้ยังไม่พร้อมสำหรับ Windows


Dtrace พร้อมใช้งานสำหรับ Linux หรือไม่ คุณจะได้รับ Dtrace ได้อย่างไร
devin

1
ไม่ใช่ที่ฉันรู้ แต่ systemtap [ sourceware.org/systemtap/]มีเบต้าที่อยู่ในรายการสิ่งที่ฉันจะเล่นด้วย ดูเหมือนว่ามันจะคล้ายกับสิ่งที่ DTrace ทำ แต่สำหรับ Linux
Milner

1

ฉันสงสัยว่าไม่มีใครกล่าวถึงVNC


+1 ที่คุณเพิ่งทำ :) ยังทำงานได้และใช้งานได้เหมือนครั้งแรกที่ปรากฏ
Avery Payne

sysadmins จำนวนมากไม่ได้ใช้ X เพื่อดูแลเซิร์ฟเวอร์ * nix แทนที่จะเป็น VNC ฉันชอบ FreeNX
sumar

1

ปกติฉันจะใช้:

ps : เพื่อดูกระบวนการที่กำลังรัน
wc : word count แสดงบรรทัดใหม่คำไบต์
grep : หารูปแบบ จับคู่หรือไม่จับคู่ (จับคู่ผกผัน)
>เพื่อเปลี่ยนเส้นทางเอาต์พุตไปที่ไฟล์ใหม่หรือ >> เพื่อเพิ่มที่ท้ายไฟล์
| เพื่อเชนคำสั่งด้วยกัน เอาต์พุตของคำสั่งแรกที่ใช้ในอันถัดไป
ที : เขียนอินพุตที่ได้รับไปยังไฟล์และมันยังแสดงข้อความบนหน้าจอ

เชนที่พบบ่อยที่สุดที่ฉันใช้:
ps ax | grep mysql



1

เครื่องมือบางอย่างไม่ได้บังคับ แต่ทำให้ชีวิตประจำวันง่ายขึ้น:

  • ccze เพื่อดูบันทึกสี
  • moreutilsแพคเกจ (Deb)
  • cfcat เพื่อดูไฟล์ปรับแต่งโดยไม่มีความคิดเห็น
  • wget และวิธีเปลี่ยนเส้นทาง ouput

0

บนยูนิกซ์, dmesg มันรวบรวมข้อความการวินิจฉัยระบบทั้งหมดและแสดงข้อความเหล่านั้นบนหน้าจอ

และใช่มัน 'ล้าสมัย' โดย syslogd แต่ฉันยังคงไม่ทราบวิธีการตั้งค่า syslogd เพื่อแสดงสิ่งต่าง ๆ เช่นเดียวกับ dmesg


tail /var/log/kern.log
เท็ดดี้

0

มันจะต้องเป็น SSH และ Putty สำหรับฉัน: มันช่วยประหยัดค่าใช้จ่ายในการเดินทางและการเดินทางที่ไม่จริงและไม่มีการยุ่งกับการตั้งค่ากราฟิกหรือรอการรีเฟรชหน้าจอ :-)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.