วิธีใช้คำสั่ง findmnt บน Linux
เผยแพร่แล้ว: 2022-06-16 ค้นพบทุกสิ่งเกี่ยวกับจุดเชื่อมต่อระบบไฟล์ของคุณด้วยคำสั่ง Linux findmnt
เป็นเครื่องมือแบบ all-in-one ที่มีไวยากรณ์ที่ง่ายมาก เราแสดงวิธีการใช้งาน
Mount Points
ระบบไฟล์ Linux เป็นต้นไม้ขนาดใหญ่ ขึ้นอยู่กับตัวเลือกที่คุณเลือกเมื่อติดตั้ง Linux ฮาร์ดไดรฟ์ต่างๆ ภายในคอมพิวเตอร์ของคุณอาจมีระบบไฟล์ต่างกัน หากคุณใช้แพ็คเกจ snap
คุณจะมีระบบไฟล์หลอก squashfs
ในระบบของคุณด้วย อุปกรณ์ต่างๆ เช่น เมมโมรี่สติ๊ก USB จะมีระบบไฟล์ต่างๆ โดยเฉพาะอย่างยิ่งหากคุณใช้กับคอมพิวเตอร์ Windows ด้วย
ไม่ว่าระบบไฟล์จะเป็นประเภทใด พวกเขาทั้งหมดจะต้องถูกต่อกิ่งบนแผนผังระบบไฟล์ในกระบวนการที่เรียกว่า การเมา นท์ การติดตั้งเป็นขั้นตอนสำคัญในการรับระบบการทำงาน เรามักจะคิดว่าจะติดตั้งอุปกรณ์เหมือนฮาร์ดไดรฟ์ แต่จริงๆ แล้ว สิ่งที่กำลังถูกเมานต์คือระบบไฟล์ในอุปกรณ์นั้น และหากไม่มีการเข้าถึงระบบไฟล์ต่างๆ เหล่านี้ คอมพิวเตอร์ของคุณอาจไม่สามารถบู๊ตได้ หรือคุณจะไม่สามารถเข้าถึงแอพพลิเคชั่นหรือข้อมูลได้
ระบบไฟล์ถูกติดตั้งบนจุดเชื่อมต่อ นี่เป็นเพียงไดเร็กทอรีว่าง เมื่อติดตั้งระบบไฟล์แล้ว การเข้าสู่ไดเร็กทอรีนั้นจะนำคุณเข้าสู่ระบบไฟล์นั้น ที่ให้ความคล่องตัวสูง รูทของโครงสร้างระบบไฟล์จะต้องติดตั้งบน " /
" แต่คุณสามารถเมาต์ระบบไฟล์อื่น ๆ ได้ในทุกที่ที่เหมาะสมที่สุดในสถานการณ์เฉพาะของคุณ
ความยืดหยุ่นนั้นหมายความว่าการติดตามจุดต่อเชื่อมต่างๆ ทั้งหมดเป็นเรื่องยาก โดยเฉพาะอย่างยิ่งจุดที่สร้างขึ้นโดยอัตโนมัติและสร้างขึ้นโดยที่คุณไม่ต้องเกี่ยวข้อง Linux มีเครื่องมือบรรทัดคำสั่งที่หลากหลายเพื่อให้คุณตรวจสอบการกำหนดค่าและสถานะของจุดต่อเชื่อมของคุณ จากทั้งหมดนั้น findmnt
ใช้งานง่ายที่สุดและมีลูกเล่นบางอย่างในตัวมันเอง
คำสั่ง findmnt
คำสั่ง findmnt
ได้รับการติดตั้งแล้วบน Ubuntu, Manjaro และ Fedora builds ที่เราตรวจสอบ หากไม่ได้ติดตั้งไว้ในคอมพิวเตอร์ Linux คุณจะสามารถค้นหาได้อย่างง่ายดายโดยใช้ตัวจัดการแพ็คเกจสำหรับการแจกจ่ายของคุณ
เครื่องมือบรรทัดคำสั่งที่คุณใช้เพื่อเมาต์ระบบไฟล์เรียกว่า mount
ระบบไฟล์ที่ถูกเมาต์ในขณะบู๊ตถูกกำหนดไว้ในไฟล์ “/etc/fstab” คุณสามารถใช้คำสั่ง mount
เพื่อถ่ายโอนข้อมูลของจุดเชื่อมต่อทั้งหมดที่กำหนดค่าไว้ในไฟล์ “/etc/fstab” ของคุณ
ภูเขา
เอาต์พุตมีรายละเอียด แต่จัดรูปแบบในข้อความที่มีข้อความหนาแน่น
ด้วยความพยายามเพียงเล็กน้อย คุณสามารถเลือกวิธีการของคุณผ่านมัน หรือไพพ์มันผ่านยูทิลิตี้เช่น grep
เพื่อขยิบตาบิตที่คุณสนใจ ผลลัพธ์จาก findmnt
สามารถเข้าถึงได้มากขึ้น
findmnt
ในทางตรงกันข้าม เอาต์พุตเริ่มต้นจาก findmnt
จะถูกจัดตารางและมีแผนผังแสดงลำดับชั้นของจุดต่อเชื่อม
คอลัมน์คือ:
- เป้าหมาย : ตำแหน่งของจุดต่อเชื่อมในระบบไฟล์
- ที่มา : อุปกรณ์ต้นทางที่มีระบบไฟล์ โปรดทราบว่านี่อาจเป็นอุปกรณ์หลอกเช่นอุปกรณ์วนรอบ
- Fstype : ประเภทระบบไฟล์
- ตัวเลือก : ตัวเลือกที่ใช้กับคำสั่ง mount คำสั่งหรือในไฟล์ “/etc/fstab” เพื่อต่อเชื่อมระบบไฟล์
หากต้องการดูผลลัพธ์ที่ไม่มีแผนผัง ให้ใช้ตัวเลือก -l
(รายการ)
findmnt -l
คอลัมน์เหมือนกัน แต่ลำดับชั้นของจุดต่อเชื่อมไม่ได้แสดงเป็นแผนผังที่เยื้อง
การเลือกประเภทระบบไฟล์เฉพาะ
อ็อพชัน -t (ประเภท) ทำให้ findmnt
จำกัดรายงานให้รวมเฉพาะประเภทระบบไฟล์ที่คุณร้องขอเท่านั้น ตัวอย่างเช่น หากต้องการดูเฉพาะระบบไฟล์ ext4
ให้ใช้:
findmnt -t exta
หากต้องการดูเฉพาะระบบไฟล์ squashfs
คุณต้องพิมพ์:
findmnt -t squashfs
หากต้องการกลับรายการที่เลือกเพื่อให้คุณเห็นทุกอย่างนอกเหนือจากประเภทที่คุณระบุไว้ในบรรทัดคำสั่ง ให้ใช้ตัวเลือก -i
(กลับด้าน)
findmnt -t สควอช -i
ระบบไฟล์ squashfs
จะไม่ถูกรายงาน
ตัวเลือก -t
(ประเภท) ให้คุณใช้รายการประเภทระบบไฟล์ที่คั่นด้วยเครื่องหมายจุลภาค อย่าเว้นวรรคระหว่างกัน เนื่องจากไม่อนุญาตให้มีการเว้นวรรคระหว่างประเภทระบบไฟล์
findmnt -t สควอช,proc,ext4
การเลือกแหล่งข้อมูล
โดยค่าเริ่มต้น findmnt
รับข้อมูลจาก “/etc/fstab”, “/etc/mtab” และ “/proc/self/mountinfo”
- /etc/fstab : นี่คือไฟล์ที่เก็บรายละเอียดของการเมานท์ที่กำหนดค่าไว้ สิ่งเหล่านี้จะถูกดำเนินการในเวลาบูต
- /etc/mtab : ไฟล์นี้เก็บรายละเอียดของการเมานท์ที่กำลังเมาต์อยู่
- /proc/self/mountinfo : สิ่งนี้จะค้นหาเคอร์เนลสำหรับบัญชีที่เชื่อถือได้มากที่สุดของการเมานต์ระบบของคุณ
คุณสามารถบอก findmnt
ให้ใช้แหล่งใดแหล่งหนึ่งได้หากต้องการ ตัวเลือกคือ:
- —fstab หรือ -s : ดูใน “/etc/fstab” เท่านั้น
- —mtab หรือ -m : ดูใน “/etc/mtab” เท่านั้น
- —kernel หรือ -k : ดูใน “/proc/self/mountinfo” เท่านั้น
เราสามารถเห็นความแตกต่างที่เกิดขึ้นได้หากเรามองหาระบบไฟล์ vfat
อันดับแรก เราจะใช้ตัวเลือก -s
(fstab) พบหนึ่งระบบไฟล์ vfat
ซึ่งติดตั้งที่ "/boot/efi"
findmnt -s -t vfat
เราจะลองอีกครั้ง และคราวนี้เราจะใช้ตัวเลือก -k
(เคอร์เนล)
findmnt -k -t vfat
รายงานนี้สี่รายการ หนึ่งคือระบบไฟล์ vfat
เดียวกันกับที่พบในตัวเลือก -s
อีกสามรายการเป็นการเมาต์ เฉพาะกิจ ที่เกิดขึ้นเนื่องจากมีการเสียบหน่วยความจำ USB สองอันแล้ว ตัวเลือก -s
ไม่พบเนื่องจากไม่ได้กำหนดค่าในไฟล์ “/ etc / fstab”
เมมโมรี่สติ๊ก USB หนึ่งอันเชื่อมต่อเป็น “/dev/sdc1” ซึ่งเป็นพาร์ติชั่นแรกบนอุปกรณ์ sdc
เมมโมรี่สติ๊กอีกอันหนึ่งมีสองพาร์ติชั่น และติดตั้งเป็น “/dev/sdb1” และ “/dev/sdb2”
ที่เกี่ยวข้อง: ไฟล์ Linux fstab คืออะไรและทำงานอย่างไร
เลือกโดย Mount Point
หากคุณทราบจุดต่อเชื่อม คุณสามารถส่งต่อไปยัง findmnt
เพื่อค้นหาการตั้งค่าและรายละเอียดอื่นๆ
findmnt /media/dave/PINK
findmnt /media/dave/WHITEUSB
เราจะเห็นว่าหน่วยความจำ USB ทั้งสองนี้มีระบบไฟล์ vfat
และได้รับการติดตั้งเป็น “/dev/sdb2” และ “/dev/sdc1”
การใช้โหมดโพลใน findmnt
อาจเป็นคุณสมบัติที่ยอดเยี่ยมที่สุดของ findmnt
ก็คือคุณสมบัติการหยั่งเสียง การเขียนภาพไปยังอุปกรณ์ USB เป็นสิ่งที่คุณสามารถทำอยู่เป็นระยะๆ การระบุไดรฟ์ที่ถูกต้องเป็นสิ่งสำคัญ คุณไม่ต้องการเขียนทับอุปกรณ์ที่ไม่ถูกต้อง findmnt
ทำให้ง่ายต่อการดูว่าอุปกรณ์ใดที่เชื่อมต่อไดรฟ์แบบถอดได้
มีสองวิธีในการทำเช่นนี้ คุณสามารถขอให้ findmnt
ตรวจสอบการต่อเชื่อมใหม่ได้เป็นระยะเวลาหนึ่ง โดยแสดงเป็นมิลลิวินาที พาหนะใดๆ ที่เกิดขึ้นในช่วงเวลานั้นจะถูกรายงาน สิ่งนี้ใช้ตัวเลือก --timeout
วิธีที่สองบอกให้ findmnt
รอจนกว่าจะตรวจพบการเมานต์ใหม่ สิ่งนี้ใช้ตัวเลือก --first-only
จะรอตราบเท่าที่การขึ้นบกใหม่เกิดขึ้น แต่จะรายงานเฉพาะการขี่ครั้งแรกที่เกิดขึ้นเท่านั้น ตัวเลือก --timeout
จะรายงานเกี่ยวกับการติดตั้งใหม่ทั้งหมดที่เกิดขึ้นระหว่างช่วงเวลาการหยั่งเสียงที่ระบุ
คำสั่งนี้บอกให้ findmnt
ตรวจสอบการติดตั้งใหม่เป็นเวลา 30 วินาที
findmnt -p --timeout 30000
มีการเสียบปลั๊กหน่วยความจำ USB อันเดียวในช่วงเวลาดังกล่าว รายงานเมื่อวันที่ และ findmnt
ดำเนินการตรวจสอบต่อไปเป็นเวลา 30 วินาทีที่เหลือ
คำสั่งนี้บอกให้ findmnt
ตรวจสอบการต่อเชื่อมใหม่จนกว่าจะเห็นจุดเชื่อมต่อใหม่ที่สร้างขึ้น
findmnt -p --first-only
เมื่อเสียบปลั๊กอุปกรณ์ใหม่ อุปกรณ์จะรายงานจุดต่อเชื่อมใหม่ จากนั้นออกจากพรอมต์คำสั่ง
วิธีง่ายๆ ในการหลีกเลี่ยงการฟาล์วอัพ
การเขียนทับอุปกรณ์ที่ไม่ถูกต้องถือเป็นหายนะเสมอ คำสั่ง findmnt
ทำให้ง่ายต่อการระบุอุปกรณ์ที่คุณเพิ่งเสียบเข้าไป ทำให้กระบวนการเขียนทับปลอดภัยยิ่งขึ้น
ง่ายและปลอดภัยกว่าเป็นอีกวิธีหนึ่งในการพูดว่า win win
ที่เกี่ยวข้อง: วิธีเขียนทับพื้นที่ว่างอย่างปลอดภัยใน Windows