ทำไมโฟลเดอร์ 'proc' และ 'sys' มีขนาดเกิน 100 TB [ปิด]


10

ใครบางคนที่ฉันรู้ว่าเพิ่งทำคำสั่งต่อไปนี้:

"ฉันมีไฟล์มูลค่า 140.7 TB ในระบบของฉัน"

มีคนอื่นพูดอะไรบางอย่างตามสายของ "อย่างไร" และการตอบสนองคือ:

"Virtual RAM, Ubuntu มี/proc/coreไฟล์"

ฉันไม่ค่อยรู้เรื่อง Linux มากนักและสงสัยว่ามีใครสามารถอธิบายได้ว่าอะไรคือสิ่งที่กล่าวมาข้างต้น ฉันไม่เข้าใจว่าใครจะมีมูลค่าอะไร 140.7 TB เว้นแต่พวกเขาจะมีฮาร์ดดิสก์จำนวนมาก


3
สิ่งที่ดูเหมือนจะเป็นไฟล์ไม่จำเป็นต้องเป็นไฟล์ในฮาร์ดดิสก์ และขนาดตรรกะของไฟล์นั้นไม่ได้เท่ากับขนาดทางกายภาพเสมอไป (จำเป็นต้องมีที่เก็บข้อมูล)
Daniel Beck

ฉันมีไฟล์ 140.7 TB ด้วย ขนาดไบต์คือ 140737477881856 ฉันสงสัยว่าตัวเลขนั้นหมายถึงอะไร
neverMind9

หมายเลขนั้นอยู่ใกล้ 2 ^ 47 ซึ่งคือ 140.737.488.355.328
neverMind9

คำตอบ:


14

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

ระบบไฟล์นั้นไม่ได้ครอบครองอะไรเลย พวกเขาแค่มองเข้าไปในเคอร์เนล

บางครั้งขนาดก็เป็นที่รู้จัก แต่ข้อมูลที่แสดงนั้นมีขนาดใหญ่ ตัวอย่างเช่นcoreไฟล์แสดงพื้นที่ที่อยู่เสมือนของกระบวนการ - และพื้นที่ที่อยู่นี้มีขนาดใหญ่เท่าที่ CPU สามารถที่อยู่; มันไม่ถูกผูกไว้โดยขนาด RAM / swap จริง ดังนั้นไฟล์จะอยู่ที่ประมาณ 2 48ถึง 2 64ไบต์บนระบบ "64- บิต"

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


5

ไม่นั่นไม่ใช่เหตุผล ไฟล์กระจัดกระจาย ปรากฏขนาดที่แน่นอนเนื่องจากส่วนหัวของไฟล์จะแสดงรายการ แต่มีข้อมูลน้อยกว่ามาก


5
และสิ่งที่น่าอัศจรรย์เกิดขึ้นเมื่อคุณพยายามสำรองไฟล์ที่กระจัดกระจายด้วยโปรแกรมสำรองข้อมูลที่ไม่เข้าใจ เรียนรู้ว่าใน Xenix
Fiasco Labs

1

วิธีการหนึ่งที่อาจเป็นไปได้ว่าพวกเขามีจำนวนมากของไฟล์บีบอัดและกำลังนับขนาดที่พวกเขาจะได้รับเมื่อไม่มีการบีบอัด

แน่นอนว่าสิ่งนี้จะขึ้นอยู่กับประเภทของไฟล์ที่ไฟล์บางไฟล์บีบอัดได้มากกว่าไฟล์อื่น (เช่นไฟล์ข้อความ) และไฟล์อื่น ๆ ไม่สามารถบีบอัดได้อีก (เช่น jpg, mp3) โดยไม่สูญเสียข้อมูล แต่ในทางทฤษฎีแล้ว


2
แน่นอนถ้าคุณมีพื้นที่เก็บข้อมูลประมาณ 20TB
Ignacio Vazquez-Abrams

@ IgnacioVazquez-Abrams - ฉันไม่ได้บอกว่ามันเป็นไปได้
ChrisF

@ IgnacioVazquez-Abrams: นั่นเป็นเพียงดิสก์ 2TB สิบแผ่น
user1686

2
@grawity - เต็มไปด้วยข้อความ ...
ysap

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