Linux มีความเสี่ยงต่อการทุจริตในไฟดับหรือไม่


10

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

ฉันคิดว่าลีนุกซ์ควรจะแข็งแกร่งหรือไม่?
คำถามของฉัน - มีกระบวนการบางอย่างที่ฉันควรจะใช้เพื่อหลีกเลี่ยงกล่อง Linux ของฉันจากการถูก nuked โดยไฟดับหรือไม่?


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

ฉันรู้เรื่องนี้แล้ว คำถามคือว่า Linux มีความเปราะมากกว่า Windows ด้วยเหตุผลบางอย่างหรือไม่และมีอะไรบ้างที่ฉันสามารถทำได้เพื่อเพิ่มความทนทาน
ไทเลอร์ Durden

2
Mas คำตอบของฉันหมายถึงการเป็นทั่วไปและครอบคลุม: ว่าสิ่งที่คุณทำไม่มีเสมอความเสี่ยงของบางสิ่งบางอย่างอยู่ที่ไหนสักแห่งความล้มเหลว ถ้าลีนุกซ์มีความเปราะมากกว่าฉันจะปล่อยให้คนที่สามารถตอบได้โดยเฉพาะ ประสบการณ์ส่วนตัวของฉัน (กับ Windows และ OSX) แสดงให้ฉันเห็นว่าถ้าฉันไม่ได้ทำอะไรบางอย่างที่ฉันใส่ใจในผลลัพธ์ (ตัวอย่างเช่น) พวกเขาก็จะเด้งกลับมาได้ง่าย บางทีสิ่งที่คุณควรเพิ่มคือวิธีการใช้เครื่องจักร
Doktoro Reichard

"มีกระบวนการบางอย่างที่ฉันควรใช้เพื่อหลีกเลี่ยงกล่อง Linux ของฉันจากการถูก nuked โดยไฟดับ?" ปัญหาอยู่ที่ระดับฮาร์ดแวร์คำสั่งเดียวที่คุณสามารถเรียกใช้ที่นี่ที่จะช่วยคือ "คอมพิวเตอร์ปิดเครื่อง" หากคุณกังวลเกี่ยวกับเรื่องนี้ฉันขอแนะนำ UPS (แม้ว่าจะมีราคาแพงอย่างรวดเร็วหากคุณมีคอมพิวเตอร์จำนวนมาก)
ดาวิด

7
มันเป็นคำที่ผิดเสมอ Windows อาจเสียหายระหว่างไฟดับ ทำไมคุณไม่มีแบตเตอรี่สำรองและตั้งค่าระบบให้ปิดเครื่อง? ฉันสามารถพูดได้อย่างปลอดภัยว่าทุกคนที่พูดว่า "เสมอ" จะผิดเวลา 99.99999%
Ramhound

คำตอบ:


14

linux เปราะมากกว่า windows หรือไม่?
คำตอบคือมันขึ้นอยู่กับ

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

Windows ไม่อนุญาตให้คุณมีตัวเลือกมากมายสำหรับระบบไฟล์ที่กล่อง Linux จะอนุญาต คุณแทบไม่เคยเห็นระบบ Windows NTFS NTFS มีสิ่งต่าง ๆ ที่ติดตั้งภายในเพื่อช่วยในกรณีที่มีการสูญเสียพลังงานเช่นการทำเจอร์นัลและธุรกรรมไฟล์ที่สามารถย้อนกลับได้ในกรณีที่เกิดความล้มเหลว

กล่อง Linux อาจมีสิ่งนี้และไม่สามารถทำได้ ทุกอย่างขึ้นอยู่กับการตั้งค่าเซิร์ฟเวอร์ หากเซิร์ฟเวอร์ใช้ext2 1คุณอาจเสี่ยงต่อความเสียหายของไฟล์ในกรณีที่ไฟฟ้าขัดข้อง เปรียบเทียบกับระบบที่ใช้บางอย่างเช่นBtrfsซึ่งมีคุณสมบัติด้านความสมบูรณ์ของข้อมูลมากกว่า NTFS

ดังนั้นถ้าดูแลระบบคุณที่พูดคุยกับเคยทำงานกับระบบ ext2 เขาก็อาจจะถูกต้อง แต่ถ้าคุณใช้ระบบไฟล์อื่นเขาอาจจะผิด


1: Ext2 เป็นค่าเริ่มต้นสำหรับทั้ง Debian และ Red Hat Linux เป็นเวลานาน ตอนนี้มันถูกแทนที่ด้วย Ext3 เป็นส่วนใหญ่ซึ่งเทียบเท่ากับ NTFS สำหรับฟีเจอร์สำหรับความสมบูรณ์ของข้อมูล


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

3
ฉันพูดถึงว่าในบันทึกย่อของฉันที่ด้านล่าง Ext3 อยู่ในระดับเดียวกับ NTFS ฉันเชื่อว่าระบบดูแลระบบอาจมีระบบไฟล์ Ext2 เท่านั้นที่มีประสบการณ์และจากมุมมองของเขาเขาจะถูกต้อง มันเหมือนกับว่าคุณเพิ่งเปิดไฟล์ Fat32 เพียงอย่างเดียวและไม่เคยเห็น NTFS มาก่อนคุณจะรู้สึกคล้าย ๆ กับ windows (เวอร์ชั่น Windows บน Fat32 มีประวัติอันน่ากลัวของไฟล์เสียหายจากการสูญเสียพลังงาน)
Scott Chamberlain

ฉันพลาดเชิงอรรถทั้งหมด :-(
Ramhound

+1 สำหรับการอ้างอิงถึงระบบไฟล์ต่าง ๆ ที่ใช้งานและการทำเจอร์นัล
Doktoro Reichard

คำตอบที่ดีที่สุดที่นี่ +1
Pimp Juice IT

3

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

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

ต่อมาเมื่อถึงขั้นตอนการบู๊ตหากคุณมีฐานข้อมูล (ฉันกำลังมองหาที่ MySQL, Postgres จะไม่ประสบปัญหานี้) คุณอาจมีปัญหาคล้ายคลึงกับฐานข้อมูล MYSQL - MYSQL มักจะไม่แข็งแรงเป็นพิเศษ (ความสอดคล้องกับ Google ACID MYSQLสำหรับ หัวข้อนี้). คุณสามารถแก้ไขปัญหานี้ได้โดยบังคับให้ตรวจสอบดัชนีเมื่อรีบูตหากการตั้งค่า MySQL ของคุณไม่ตรงตามมาตรฐานของกรด

มุมมองอื่น (ค่อนข้างน่าเบื่อและไม่ยุติธรรมกับ Windows) อาจเป็นเช่นนี้ - กล่อง Linux มีความน่าเชื่อถือมากกว่าจากนั้นกล่อง Windows (วัดจาก Uptime และจำเป็นต้องรีบูตเครื่อง) - ดังนั้นจึงเป็นไปได้ว่าเมื่อกล่อง Linux ล้มเหลวในการรีบูต ปัญหาฮาร์ดแวร์เนื่องจากอายุค่อนข้างมากแล้วเป็นปัญหาซอฟต์แวร์ - ในขณะที่กล่อง Windows ที่ล้มเหลวอาจถูกตรวจพบได้เร็วขึ้นเนื่องจากมีการรีบูตบ่อยครั้งขึ้น)


1

ขึ้นอยู่กับ distro และระบบไฟล์ใดที่คุณมีมันอาจมีช่องโหว่มากหรือน้อยก็ได้ หากคุณรู้เกี่ยวกับการตัดไฟตามกำหนดเวลาคุณควรปิดระบบด้วยตนเองอย่างแน่นอน (และใช้เวลาในการบำรุงรักษาเช่นการดูดฝุ่นระบบหรืออาจต้องเดินสายไฟอีกครั้ง ... สำหรับปัญหาไฟดับที่ไม่ได้กำหนดไว้ให้รับระบบ UPS ด้วยซอฟต์แวร์ปิด Linux ไม่ต้องกังวลคุณควรใช้งานต่อไปมีไฟล์ APCUPSD สำหรับลีนุกซ์ส่วนใหญ่ถ้าไม่เช่นนั้นให้ตรวจสอบกับ distro ของคุณเพื่อดูว่ามีอะไรอยู่ในนั้นหรือมีให้ใช้ตรวจสอบให้แน่ใจว่าจะปิดลง ระบบของคุณหมดจดก่อนที่จะพึ่งพา


-9

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

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

สิ่งเดียวที่สามารถทำได้เพื่อลดสิ่งนี้คือการปิดการแคชดิสก์


2
-1 โปรดสนับสนุนการอ้างสิทธิ์ของคุณพร้อมลิงก์บทความแหล่งที่มา ฯลฯ และฉันจะยกเลิกการลงคะแนนของฉัน คุณอ้างถึงระบบไฟล์ลีนุกซ์อะไร?
Kamil Maciorowski

Tyler - คุณอ่านคำตอบของ Scott Chamberlain ที่โพสต์ในคำถามของคุณใช่ไหม คุณแน่ใจหรือไม่ 100% ว่าวิธีที่คุณอธิบายตาราง inode เหล่านี้เก็บพอยน์เตอร์สำหรับไฟล์ Linux รวมถึงไฟล์ระบบปฏิบัติการเป็นวิธีที่ใช้งานได้กับระบบไฟล์ Linux ปัจจุบันทั้งหมดเนื่องจากคุณสามารถเลือกมากกว่าหนึ่งตามที่อธิบายไว้ ไฟล์ meta data ที่มีประสิทธิภาพการควบคุม inode / journaling / transaction มากกว่าตัวควบคุมอื่น ๆ รวมถึงบางส่วนที่มีประสิทธิภาพมากกว่าแม้แต่ NTFS บางทีคุณเป็นระบบหรือคนที่คุณเขียนเกี่ยวกับอาจเป็นเพราะการใช้ระบบไฟล์ Linux รุ่นเก่าและเลือกอย่างชาญฉลาด?
Pimp Juice IT

เหตุผลหลักที่ฉันพบคำตอบนี้และคำถามทั้งหมด - เพื่อเป็นเรื่องตลกคือ Linux / Unix ให้พลังอินเทอร์เน็ตไม่ใช่ Windows หากไฟฟ้าดับสามารถทำให้ระบบ Linux / Unix หายไปได้อย่างง่ายดายอินเทอร์เน็ตจะไม่สามารถทำงานได้ นอกจากนี้เราเตอร์ที่ใช้ Linux จะไม่มีประโยชน์เมื่อเปิดและปิดอย่างรวดเร็วเป็นประจำ
JakeGould

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