à¹à¸§à¸à¹à¸²à¸à¸±à¸ à¸à¸à¸±à¸à¸à¸´à¹à¸¨à¸©
สารบัญ:
เมื่อเวลาผ่านไปดิสก์ไดรฟ์ของคุณอาจมีไฟล์จำนวนมากที่ไม่จำเป็นทำให้เกิดพื้นที่ดิสก์จำนวนมาก โดยปกติแล้วระบบ Linux จะมีพื้นที่ดิสก์เหลืออยู่เนื่องจากไฟล์บันทึกหรือไฟล์สำรองขนาดใหญ่
บทช่วยสอนนี้อธิบายวิธีค้นหาไฟล์และไดเรกทอรีที่ใหญ่ที่สุดในระบบ Linux โดยใช้คำสั่ง
find
และ
du
ค้นหาไฟล์ขนาดใหญ่โดยใช้คำสั่ง
find
คำสั่ง
find
เป็นหนึ่งในเครื่องมือที่ทรงพลังที่สุดในคลังข้อมูลผู้ดูแลระบบ Linux ช่วยให้คุณค้นหาไฟล์และไดเรกทอรีตามเกณฑ์ต่าง ๆ รวมถึงขนาดไฟล์
ตัวอย่างเช่นหากต้องการค้นหาไฟล์ที่มีขนาดใหญ่กว่า 100MB ในไดเรกทอรีการทำงานปัจจุบันคุณจะใช้คำสั่งต่อไปนี้:
sudo find. -xdev -type f -size +100M
แทนที่ ด้วยพา ธ ไปยังไดเรกทอรีที่คุณต้องการค้นหาไฟล์ที่ใหญ่ที่สุด
ผลลัพธ์จะแสดงรายการไฟล์โดยไม่มีข้อมูลเพิ่มเติมใด ๆ
/var/lib/libvirt/images/centos-7-desktop_default.img /var/lib/libvirt/images/bionic64_default.img /var/lib/libvirt/images/win10.qcow2 /var/lib/libvirt/images/debian-9_default.img /var/lib/libvirt/images/ubuntu-18-04-desktop_default.img /var/lib/libvirt/images/centos-7_default.img
คำสั่ง
find
ยังสามารถใช้ร่วมกับเครื่องมืออื่น ๆ เช่น
ls
หรือ
sort
เพื่อดำเนินการกับไฟล์เหล่านั้น
ในตัวอย่างด้านล่างเราจะส่งผ่านผลลัพธ์ของคำสั่ง
find
ไปยัง
ls
ซึ่งจะพิมพ์ขนาดของแต่ละไฟล์ที่พบแล้วไปป์ที่เอาต์พุตไปยังคำสั่ง sort เพื่อจัดเรียงตามคอลัมน์ที่ 5 ซึ่งเป็นขนาดไฟล์
find. -xdev -type f -size +100M -print | xargs ls -lh | sort -k5, 5 -h -r
ผลลัพธ์จะมีลักษณะดังนี้:
-rw------- 1 root root 40967M Jan 5 14:12 /var/lib/libvirt/images/win10.qcow2 -rw------- 1 root root 3725M Jan 7 22:12 /var/lib/libvirt/images/debian-9_default.img -rw------- 1 root root 1524M Dec 30 07:46 /var/lib/libvirt/images/centos-7-desktop_default.img -rw------- 1 root root 999M Jan 5 14:43 /var/lib/libvirt/images/ubuntu-18-04-desktop_default.img -rw------- 1 root root 562M Dec 31 07:38 /var/lib/libvirt/images/centos-7_default.img -rw------- 1 root root 378M Jan 7 22:26 /var/lib/libvirt/images/bionic64_default.img
หากเอาต์พุตมีบรรทัดข้อมูลจำนวนมากคุณสามารถใช้คำสั่ง
head
เพื่อพิมพ์เฉพาะ 10 บรรทัดแรก:
find. -xdev -type f -size +100M -print | xargs ls -lh | sort -k5, 5 -h -r | head
ลองแบ่งคำสั่ง:
-
find. -xdev -type f -size +100M -printfind. -xdev -type f -size +100M -print- ค้นหาเฉพาะไฟล์ (-type f) ในไดเรกทอรีการทำงานปัจจุบัน (.) ที่มีขนาดใหญ่กว่า 100MB (-size +100M) อย่าลงไดเรกทอรีในระบบไฟล์อื่น ๆ (-xdev) และพิมพ์ชื่อไฟล์แบบเต็มบนเอาต์พุตมาตรฐานตามด้วยบรรทัดใหม่ (-print)xargs ls -lh- เอาต์พุตของคำสั่งfindถูกls -lhไปที่xargsซึ่งเรียกใช้งานls -lhที่จะพิมพ์เอาต์พุตในรูปแบบรายการที่มนุษย์อ่านได้แบบยาวsort -k5, 5 -h -r- เรียงลำดับบรรทัดตามคอลัมน์ที่ 5 (-k5, 5) เปรียบเทียบค่าในรูปแบบที่มนุษย์สามารถอ่านได้ (-h) และย้อนกลับผลลัพธ์ (-r)head: พิมพ์เฉพาะ 10 บรรทัดแรกของเอาต์พุต piped
คำสั่ง
find
มาพร้อมกับตัวเลือกที่ทรงพลังมากมาย ตัวอย่างเช่นคุณสามารถค้นหาไฟล์ขนาดใหญ่ที่เก่ากว่า x วันไฟล์ขนาดใหญ่ที่มีนามสกุลเฉพาะหรือไฟล์ขนาดใหญ่ที่เป็นของผู้ใช้เฉพาะ
ค้นหาไฟล์และไดเรกทอรีขนาดใหญ่โดยใช้คำสั่ง
du
คำสั่ง
du
ใช้เพื่อประเมินการใช้พื้นที่ไฟล์และมีประโยชน์อย่างยิ่งสำหรับการค้นหาไดเร็กทอรีและไฟล์ที่ใช้พื้นที่ดิสก์จำนวนมาก
คำสั่งต่อไปนี้จะพิมพ์ไฟล์และไดเรกทอรีที่ใหญ่ที่สุด:
du -ahx. | sort -rh | head -5
คอลัมน์แรกมีขนาดของไฟล์และชื่อไฟล์ที่สอง:
55G. 24G./.vagrant.d/boxes 24G./.vagrant.d 13G./Projects 5.2G./.minikube
คำอธิบายของคำสั่ง:
-
du -ahx.: ประมาณการการใช้พื้นที่ดิสก์ในไดเรกทอรีการทำงานปัจจุบัน (.), นับทั้งไฟล์และไดเรกทอรี (a), ขนาดการพิมพ์ในรูปแบบที่มนุษย์สามารถอ่านได้ (h) และข้ามไดเรกทอรีในระบบไฟล์ (x)sort -rh: เรียงลำดับบรรทัดโดยการเปรียบเทียบค่าในรูปแบบที่มนุษย์สามารถอ่านได้ (-h) และกลับผลลัพธ์ (-r)head -5: พิมพ์ได้เพียง 5 บรรทัดแรกของเอาต์พุตที่ส่งไปป์
คำสั่ง
du
รวมถึงตัวเลือกอื่น ๆ ที่คุณสามารถใช้เพื่อปรับแต่งเอาต์พุตของการใช้พื้นที่ดิสก์
ข้อสรุป
การค้นหาไฟล์ขนาดใหญ่นั้นมีประโยชน์มากเมื่อดิสก์ของคุณเต็มและคุณต้องการให้มันว่าง
ตอนนี้คุณได้พบไฟล์ที่ใหญ่ที่สุดในระบบของคุณแล้วคุณอาจต้องการอ่านคำแนะนำของเราเกี่ยวกับวิธีการลบไฟล์และไดเรกทอรีโดยใช้ Linux Command Line
ค้นหาเทอร์มินัลดิสก์Linux Foundation กำลังพยายามที่จะทำให้ผู้ใช้ขั้นปลายของ Linux "end-end" มีส่วนร่วมมากขึ้นในการพัฒนาเคอร์เนล
Linux Foundation กำลังเตรียมงาน Summit User Summit ครั้งแรกในกรุง New York ในวันจันทร์ที่ผ่านมาเพื่อพยายามให้นักพัฒนาเคอร์เนล Linux ได้ติดต่อกับผู้ใช้ที่สถาบันวอลล์สตรีทและ บริษัท ใหญ่อื่น ๆ
Canonical อาจไม่ได้เผยแพร่การเปิดตัวอัลฟาอย่างเป็นทางการสำหรับเมนบอร์ด Ubuntu Linux 13.04 OS เมื่อสัปดาห์ที่แล้วหรือเป็นรายการคุณลักษณะใหม่ ๆ ที่เกี่ยวข้อง แต่เมื่อวันศุกร์ที่ผ่านมา บริษัท ได้เปิดเผยรายละเอียดบางอย่างเกี่ยวกับสิ่งที่จะเกิดขึ้นในเวอร์ชันถัดไปนี้ Linux
ในความเป็นจริง Cristian Parrino รองประธานฝ่ายบริการออนไลน์ของ Canonical ได้กล่าวถึงคุณลักษณะใหม่ ๆ สามอย่างในโพสต์ในบล็อก Canonical
ด้วยการกระจาย Linux ที่ยอดเยี่ยมในปัจจุบันนี้คุณสามารถมุ่งเน้นเฉพาะบางส่วนที่ครองพาดหัวข่าวเช่น Ubuntu Linux, Linux Mint, Fedora และ Mageia ลินุกซ์เพื่อชื่อเพียงไม่กี่
การสแกน DistroWatch เป็นวิธีที่ดีในการสร้างมุมมองที่สมบูรณ์แบบให้เต็มไปด้วยรายละเอียดและประกาศเกี่ยวกับคนอื่น ๆ นับไม่ถ้วนที่ออกไปที่นั่น แต่ทุกครั้งที่มีการกระโดดออกจากข่าวเป็น โดยเฉพาะอย่างยิ่งที่น่าสนใจ







