สำหรับผู้ดูแลระบบมือใหม่: วิธีสร้างคำสั่งซื้อที่ไม่วุ่นวาย

สำหรับผู้ดูแลระบบมือใหม่: วิธีสร้างคำสั่งซื้อที่ไม่วุ่นวาย

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

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

เสาหลักของการบริหารระบบ

อย่างไรก็ตาม ก่อนที่คุณจะเริ่มแก้ไขปัญหา คุณควรทำความคุ้นเคยกับเสาหลักทั้งสี่ประการของการบริหาร:

  1. เอกสารประกอบ
  2. การสร้างเทมเพลต
  3. การเพิ่มประสิทธิภาพ
  4. ระบบอัตโนมัติ

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

เอกสาร

เอกสาร ไม่ได้หมายถึงการอ่านเอกสาร (แม้ว่าคุณจะทำไม่ได้หากไม่มี) แต่ยังต้องดูแลรักษาเอกสารด้วย

วิธีเก็บเอกสาร:

  • คุณพบปัญหาใหม่ที่คุณไม่เคยเห็นมาก่อนหรือไม่? เขียนอาการหลัก วิธีการวินิจฉัย และหลักการกำจัด
  • คุณได้คิดวิธีแก้ปัญหาใหม่ที่สวยงามสำหรับปัญหาทั่วไปหรือไม่? จดบันทึกไว้เพื่อที่คุณจะได้ไม่ต้องสร้างมันขึ้นมาใหม่อีกหนึ่งเดือนนับจากนี้
  • พวกเขาช่วยคุณหาคำถามที่คุณไม่เข้าใจหรือไม่? เขียนประเด็นหลักและแนวคิด วาดแผนภาพสำหรับตัวคุณเอง

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

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

  1. อย่าให้นานเกินไป. เน้นแนวคิดหลัก วิธีการ และเครื่องมือ หากการทำความเข้าใจปัญหาจำเป็นต้องเจาะลึกกลไกระดับต่ำของการจัดสรรหน่วยความจำใน Linux อย่าเขียนบทความที่คุณได้เรียนรู้มาใหม่ - ให้ลิงก์ไปยังบทความนั้น
  2. รายการควรมีความชัดเจนสำหรับคุณ ถ้าเป็นแนว race cond.lockup ไม่อนุญาตให้คุณเข้าใจสิ่งที่คุณอธิบายในบรรทัดนี้ทันที - อธิบาย เอกสารที่ดีใช้เวลาทำความเข้าใจไม่ถึงครึ่งชั่วโมง
  3. การค้นหาเป็นคุณสมบัติที่ดีมาก หากคุณเขียนโพสต์บนบล็อก ให้เพิ่มแท็ก หากเป็นสมุดบันทึกจริงๆ ให้ติดโพสต์อิทเล็กๆ พร้อมคำอธิบาย เอกสารประกอบมีประโยชน์น้อยมากหากคุณใช้เวลาค้นหาคำตอบมากพอๆ กับที่คุณจะใช้เวลาแก้ไขคำถามตั้งแต่เริ่มต้น

สำหรับผู้ดูแลระบบมือใหม่: วิธีสร้างคำสั่งซื้อที่ไม่วุ่นวาย

นี่คือลักษณะของเอกสาร: ตั้งแต่บันทึกย่อดั้งเดิมในแผ่นจดบันทึก (ภาพด้านบน) ไปจนถึงฐานความรู้ที่มีผู้ใช้หลายคนพร้อมแท็ก การค้นหา และความสะดวกที่เป็นไปได้ทั้งหมด (ด้านล่าง)

สำหรับผู้ดูแลระบบมือใหม่: วิธีสร้างคำสั่งซื้อที่ไม่วุ่นวาย

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

การสร้างเทมเพลต

การสร้างเทมเพลต คือการสร้างและใช้งานเทมเพลต เพื่อแก้ไขปัญหาทั่วไปส่วนใหญ่ ควรสร้างเทมเพลตการดำเนินการเฉพาะขึ้นมา ควรใช้ลำดับขั้นตอนที่เป็นมาตรฐานเพื่อวินิจฉัยปัญหาส่วนใหญ่ เมื่อคุณได้ซ่อมแซม/ติดตั้ง/เพิ่มประสิทธิภาพบางสิ่งแล้ว ควรตรวจสอบประสิทธิภาพของสิ่งนี้โดยใช้รายการตรวจสอบที่เป็นมาตรฐาน

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

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

การเพิ่มประสิทธิภาพ

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

สำหรับผู้ดูแลระบบมือใหม่: วิธีสร้างคำสั่งซื้อที่ไม่วุ่นวาย

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

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

อัตโนมัติ

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

ระบบอัตโนมัตินั้น 80% กำลังเขียนและเพิ่มประสิทธิภาพเครื่องมือของคุณเอง (และอีก 20% พยายามทำให้มันทำงานอย่างที่ควรจะเป็น) อาจเป็นเพียงเครื่องมือซับเดียวขั้นสูงหรือเครื่องมือขนาดใหญ่ที่มีเว็บอินเตอร์เฟสและ API เกณฑ์หลักที่นี่คือการสร้างเครื่องมือไม่ควรใช้เวลาและความพยายามมากไปกว่าระยะเวลาและความพยายามที่เครื่องมือจะช่วยคุณประหยัดได้ หากคุณใช้เวลาห้าชั่วโมงในการเขียนสคริปต์โดยที่คุณจะไม่ต้องการอีกต่อไป สำหรับงานที่อาจต้องใช้เวลาถึงหนึ่งหรือสองชั่วโมงในการแก้ไขโดยไม่มีสคริปต์ นี่เป็นการเพิ่มประสิทธิภาพเวิร์กโฟลว์ที่แย่มาก คุณสามารถใช้เวลาห้าชั่วโมงในการสร้างเครื่องมือได้เฉพาะในกรณีที่จำนวน ประเภทของงาน และเวลาเอื้ออำนวย ซึ่งไม่บ่อยนัก

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

จริงๆ แล้ว หากคุณสร้างกระบวนการบริหารจัดการบนเสาหลักทั้งสี่นี้ คุณจะเพิ่มประสิทธิภาพ ประสิทธิผล และคุณสมบัติได้อย่างรวดเร็ว อย่างไรก็ตามจำเป็นต้องเสริมรายการนี้ด้วยอีกหนึ่งรายการโดยที่การทำงานด้านไอทีแทบจะเป็นไปไม่ได้เลย - การศึกษาด้วยตนเอง

ผู้ดูแลระบบการศึกษาด้วยตนเอง

หากต้องการจะมีความสามารถเพียงเล็กน้อยในด้านนี้ คุณต้องศึกษาและเรียนรู้สิ่งใหม่ๆ อย่างต่อเนื่อง หากคุณไม่มีความปรารถนาแม้แต่น้อยที่จะเผชิญกับสิ่งที่ไม่รู้จักและคิดออก คุณจะติดขัดอย่างรวดเร็ว โซลูชัน เทคโนโลยี และวิธีการใหม่ๆ ทุกประเภทปรากฏอยู่ในฝ่ายไอทีอยู่ตลอดเวลา และหากคุณไม่ได้ศึกษาสิ่งเหล่านี้อย่างเผินๆ คุณก็กำลังอยู่บนเส้นทางสู่ความล้มเหลว เทคโนโลยีสารสนเทศหลายด้านตั้งอยู่บนพื้นฐานที่ซับซ้อนและกว้างขวางมาก เช่น การทำงานของเครือข่าย เครือข่ายและอินเทอร์เน็ตมีอยู่ทุกหนทุกแห่ง คุณพบมันทุกวัน แต่เมื่อคุณเจาะลึกเทคโนโลยีที่อยู่เบื้องหลังพวกเขา คุณจะค้นพบระเบียบวินัยที่ใหญ่โตและซับซ้อนมาก ซึ่งเป็นการศึกษาที่ไม่เคยเดินเล่นในสวนสาธารณะ

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

คุณไม่จำเป็นต้องเรียนรู้ทันทีว่าการจัดการหน่วยความจำภายในของแต่ละยูทิลิตี้ทำงานอย่างไร และโต้ตอบอย่างไรกับการจัดการหน่วยความจำ Linux แต่เป็นการดีที่จะรู้ว่า RAM ใดเป็นแผนผังและเหตุใดจึงจำเป็นต้องใช้ คุณไม่จำเป็นต้องรู้ว่าส่วนหัว TCP และ UDP มีความแตกต่างทางโครงสร้างอย่างไร แต่เป็นความคิดที่ดีที่จะเข้าใจความแตกต่างพื้นฐานเกี่ยวกับวิธีการทำงานของโปรโตคอล คุณไม่จำเป็นต้องเรียนรู้ว่าการลดทอนสัญญาณในทัศนศาสตร์เป็นอย่างไร แต่จะเป็นการดีถ้ารู้ว่าเหตุใดการสูญเสียที่แท้จริงจึงสืบทอดมาจากโหนดต่างๆ เสมอ ไม่มีอะไรผิดที่จะรู้ว่าองค์ประกอบบางอย่างทำงานอย่างไรในระดับของนามธรรม และไม่จำเป็นต้องเข้าใจทุกระดับอย่างแน่นอน เมื่อไม่มีนามธรรมเลย (คุณจะคลั่งไคล้)

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

บัญญัติ 10 ประการของการบริหารระบบ

ดังนั้นเราจึงได้เรียนรู้เสาหลักและรากฐานทั้งสี่ประการแล้ว เราจะเริ่มแก้ไขปัญหาได้หรือไม่? ยัง. ก่อนที่จะทำเช่นนี้ ขอแนะนำให้คุณทำความคุ้นเคยกับสิ่งที่เรียกว่า "แนวทางปฏิบัติที่ดีที่สุด" และกฎเกณฑ์มารยาทที่ดี หากไม่มีสิ่งเหล่านี้ คุณมีแนวโน้มที่จะทำอันตรายมากกว่าดี เอาล่ะ มาเริ่มกันเลย:

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

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

  2. กฎที่สำคัญที่สุดประการที่สอง (ซึ่งฉันเองก็มักจะฝ่าฝืน) คือ "อย่าซ่อน". หากคุณสำรองข้อมูลไว้ ให้เขียนว่าที่ไหน เพื่อที่เพื่อนร่วมงานจะได้ไม่ต้องค้นหาข้อมูลนั้น หากคุณได้ดำเนินการที่ไม่ชัดเจนหรือซับซ้อนแล้ว ให้จดไว้: คุณจะกลับบ้านและปัญหาอาจเกิดซ้ำหรือเกิดขึ้นกับคนอื่น และวิธีแก้ปัญหาของคุณจะพบโดยใช้คำหลัก แม้ว่าคุณจะทำสิ่งที่คุณรู้ดี แต่เพื่อนร่วมงานของคุณอาจไม่ทำ
  3. กฎข้อที่สามไม่จำเป็นต้องอธิบาย: “อย่าทำสิ่งที่ตามมาซึ่งคุณไม่รู้ จินตนาการ หรือเข้าใจ”. อย่าคัดลอกคำสั่งจากอินเทอร์เน็ตหากคุณไม่รู้ว่ามันทำอะไร ให้โทรหา man และแยกวิเคราะห์ก่อน อย่าใช้วิธีแก้ปัญหาสำเร็จรูปหากคุณไม่เข้าใจสิ่งที่พวกเขาทำ รักษาการเรียกใช้โค้ดที่สับสนให้เหลือน้อยที่สุด หากคุณไม่มีเวลาคิดออก แสดงว่าคุณกำลังทำอะไรผิดและคุณควรอ่านประเด็นถัดไป
  4. "ทดสอบ". สคริปต์ เครื่องมือ วันไลน์เนอร์ และคำสั่งใหม่ควรได้รับการทดสอบในสภาพแวดล้อมที่มีการควบคุม ไม่ใช่บนเครื่องไคลเอ็นต์ หากมีโอกาสเกิดความเสียหายน้อยที่สุด แม้ว่าคุณจะสำรองข้อมูลทุกอย่างแล้ว (และคุณได้สำรองข้อมูลไว้แล้ว) การหยุดทำงานไม่ใช่สิ่งที่เจ๋งที่สุด สร้างเซิร์ฟเวอร์/เสมือน/chroot แยกต่างหากสำหรับสิ่งนี้และทดสอบที่นั่น มีอะไรเสียหายหรือเปล่า? จากนั้นคุณสามารถเปิดใช้งานได้ใน "การต่อสู้"

    สำหรับผู้ดูแลระบบมือใหม่: วิธีสร้างคำสั่งซื้อที่ไม่วุ่นวาย

  5. "ควบคุม". ลดการดำเนินการทั้งหมดที่คุณไม่ได้ควบคุมให้เหลือน้อยที่สุด เส้นกราฟการขึ้นต่อกันของแพ็คเกจเส้นเดียวสามารถลากระบบลงไปได้ครึ่งหนึ่ง และการตั้งค่าสถานะ -y สำหรับการลบ yum จะทำให้คุณมีโอกาสฝึกฝนทักษะการกู้คืนระบบตั้งแต่เริ่มต้น หากการดำเนินการนี้ไม่มีทางเลือกอื่นที่ไม่สามารถควบคุมได้ จุดต่อไปคือการสำรองข้อมูลสำเร็จรูป
  6. "ตรวจสอบ". ตรวจสอบผลที่ตามมาจากการกระทำของคุณและดูว่าคุณจำเป็นต้องย้อนกลับไปยังการสำรองข้อมูลหรือไม่ ตรวจสอบเพื่อดูว่าปัญหาได้รับการแก้ไขแล้วจริงหรือไม่ ตรวจสอบว่าข้อผิดพลาดเกิดขึ้นซ้ำหรือไม่และภายใต้เงื่อนไขใด ตรวจสอบสิ่งที่คุณสามารถทำลายได้ด้วยการกระทำของคุณ ไม่จำเป็นต้องไว้วางใจในงานของเรา แต่ไม่เคยตรวจสอบ
  7. "สื่อสาร". หากคุณไม่สามารถแก้ไขปัญหาได้ ให้ถามเพื่อนร่วมงานของคุณว่าพวกเขาประสบปัญหานี้หรือไม่ หากคุณต้องการใช้การตัดสินใจที่เป็นข้อขัดแย้ง ให้ค้นหาความคิดเห็นของเพื่อนร่วมงานของคุณ บางทีพวกเขาจะเสนอทางออกที่ดีกว่า หากคุณไม่มั่นใจในการกระทำของคุณ ให้หารือกับเพื่อนร่วมงานของคุณ แม้ว่านี่จะเป็นสาขาที่คุณเชี่ยวชาญ แต่การมองสถานการณ์ใหม่ก็สามารถให้ความกระจ่างได้มาก อย่าละอายใจกับความไม่รู้ของตัวเอง ถามคำถามโง่ๆ ดูเหมือนคนโง่แล้วได้คำตอบ ดีกว่าไม่ถามคำถาม ไม่ได้รับคำตอบ แล้วกลายเป็นคนโง่
  8. “อย่าปฏิเสธความช่วยเหลืออย่างไร้เหตุผล”. จุดนี้เป็นสิ่งที่ตรงกันข้ามกับจุดก่อนหน้า หากคุณถูกถามคำถามโง่ ๆ ให้ชี้แจงและอธิบาย พวกเขาถามถึงสิ่งที่เป็นไปไม่ได้ โดยอธิบายว่ามันเป็นไปไม่ได้ และทำไม จึงเสนอทางเลือกอื่น หากคุณไม่มีเวลา (คุณไม่มีเวลาจริงๆ ไม่มีความปรารถนา) - บอกว่าคุณมีคำถามเร่งด่วน งานเยอะ แต่คุณจะจัดการมันในภายหลัง หากเพื่อนร่วมงานไม่มีงานเร่งด่วน ให้เสนอที่จะติดต่อพวกเขาและมอบหมายคำถาม
  9. "ให้ข้อเสนอแนะ". เพื่อนร่วมงานคนหนึ่งของคุณเริ่มใช้เทคนิคใหม่หรือสคริปต์ใหม่ และคุณกำลังเผชิญกับผลเสียจากการตัดสินใจครั้งนี้หรือไม่ รายงานมัน. บางทีปัญหาอาจแก้ไขได้ด้วยโค้ดสามบรรทัดหรือห้านาทีในการปรับแต่งเทคนิค คุณเจอจุดบกพร่องในซอฟต์แวร์ของคุณหรือไม่? รายงานข้อผิดพลาด. หากทำซ้ำได้หรือไม่จำเป็นต้องทำซ้ำ ก็น่าจะได้รับการแก้ไขแล้ว แสดงความปรารถนา คำแนะนำ และคำวิจารณ์ที่สร้างสรรค์ และตั้งคำถามเพื่อการอภิปรายหากเห็นว่าเกี่ยวข้องกัน
  10. "ขอความคิดเห็น". เราทุกคนไม่สมบูรณ์แบบ เช่นเดียวกับการตัดสินใจของเรา และวิธีที่ดีที่สุดในการทดสอบความถูกต้องของการตัดสินใจของคุณคือการนำมาอภิปรายกัน หากคุณได้ปรับบางสิ่งให้เหมาะสมสำหรับลูกค้า โปรดขอให้พวกเขาติดตามงาน เพราะบางทีคอขวดในระบบอาจไม่ใช่จุดที่คุณต้องการ คุณได้เขียนสคริปต์ช่วยเหลือ - แสดงให้เพื่อนร่วมงานเห็น บางทีพวกเขาอาจจะพบวิธีปรับปรุงได้

หากคุณใช้แนวทางปฏิบัติเหล่านี้ในการทำงานของคุณอย่างต่อเนื่อง ปัญหาส่วนใหญ่ก็จะหมดปัญหาไป คุณจะไม่เพียงแต่ลดจำนวนข้อผิดพลาดและการปลอมแปลงของคุณเองให้เหลือน้อยที่สุดเท่านั้น แต่คุณยังจะมีโอกาสที่จะแก้ไขข้อผิดพลาดอีกด้วย (ใน รูปแบบการสำรองข้อมูลและเพื่อนร่วมงานที่จะแนะนำให้คุณสำรองข้อมูล) เพิ่มเติม - เฉพาะรายละเอียดทางเทคนิคซึ่งอย่างที่เราทราบกันว่าปีศาจโกหก

เครื่องมือหลักที่คุณต้องใช้มากกว่า 50% คือ grep และ vim อะไรจะง่ายกว่านี้? การค้นหาข้อความและการแก้ไขข้อความ อย่างไรก็ตาม ทั้ง grep และ vim เป็นเครื่องมืออเนกประสงค์ที่ทรงพลังที่ช่วยให้คุณสามารถค้นหาและแก้ไขข้อความได้อย่างมีประสิทธิภาพ หากแผ่นจดบันทึก Windows บางรุ่นอนุญาตให้คุณเขียนหรือลบบรรทัดได้ ดังนั้นในกลุ่มคุณสามารถทำอะไรกับข้อความได้เกือบทุกอย่าง หากคุณไม่เชื่อฉัน ให้เรียกคำสั่ง vimtutor จากเทอร์มินัลและเริ่มเรียนรู้ สำหรับ grep จุดแข็งหลักของมันคือการแสดงออกปกติ ใช่ เครื่องมือนี้ช่วยให้คุณกำหนดเงื่อนไขการค้นหาและส่งออกข้อมูลได้อย่างยืดหยุ่น แต่หากไม่มี RegExp ก็ไม่สมเหตุสมผลนัก และคุณต้องรู้สำนวนปกติ! อย่างน้อยก็ในระดับพื้นฐาน ก่อนอื่นฉันขอแนะนำให้คุณดูสิ่งนี้ วีดีโอโดยครอบคลุมพื้นฐานของนิพจน์ทั่วไปและการใช้ร่วมกับ grep โอ้ ใช่แล้ว เมื่อคุณรวมมันเข้ากับ vim คุณจะได้รับความสามารถขั้นสุดยอดในการทำสิ่งต่าง ๆ ด้วยข้อความที่คุณต้องติดป้ายกำกับด้วยไอคอน 18+

ส่วนที่เหลืออีก 50% นั้น 40% มาจากชุดเครื่องมือ coreutils สำหรับ coreutils คุณสามารถดูรายการได้ที่ วิกิพีเดียและคู่มือสำหรับรายการทั้งหมดอยู่บนเว็บไซต์ GNU. สิ่งที่ไม่ครอบคลุมในชุดนี้คือในส่วนของสาธารณูปโภค POSIX. คุณไม่จำเป็นต้องเรียนรู้คีย์ทั้งหมดด้วยใจ แต่อย่างน้อยการรู้คร่าวๆ ว่าเครื่องมือพื้นฐานทำอะไรได้บ้างก็มีประโยชน์ คุณไม่จำเป็นต้องประดิษฐ์ล้อใหม่จากไม้ค้ำ ฉันจำเป็นต้องแทนที่การขึ้นบรรทัดใหม่ด้วยช่องว่างในเอาต์พุตจากยูทิลิตี้บางอย่าง และสมองที่ป่วยของฉันก็ให้กำเนิดสิ่งก่อสร้างเช่น sed ':a;N;$!ba;s/n/ /g'เพื่อนร่วมงานคนหนึ่งเดินเข้ามาผลักฉันออกจากคอนโซลด้วยไม้กวาดแล้วจึงแก้ไขปัญหาด้วยการเขียน tr 'n' ' '.

สำหรับผู้ดูแลระบบมือใหม่: วิธีสร้างคำสั่งซื้อที่ไม่วุ่นวาย

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

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

ผู้ดูแลระบบ FirstVDS Kirill Tsvetkov อยู่กับคุณ

ที่มา: will.com

เพิ่มความคิดเห็น