การสร้างลิงก์: ลิงก์ฮาร์ดและลิงก์สัญลักษณ์
อ้างอิงไฟล์เดียวจากหลายตำแหน่ง เรียนรู้ความแตกต่างระหว่างลิงก์ฮาร์ดกับลิงก์สัญลักษณ์ วิธีสร้างด้วย ln และเวลาที่ควรใช้แต่ละแบบ
การสร้างลิงก์: ลิงก์ฮาร์ดและลิงก์สัญลักษณ์ เป็นบทเรียน Linux Command Line & Bash Scripting Mastery ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Linux Command Line & Bash Scripting Mastery และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Linux Command Line & Bash Scripting Mastery มีบทเรียนทั้งหมด 4 บทเรียน
ลิงก์คืออะไร
ลิงก์ทำให้ชื่อมากกว่าหนึ่งชื่อชี้ไปยังข้อมูลไฟล์เดียวกันได้ Linux รองรับลิงก์สองชนิด ได้แก่ ฮาร์ดลิงก์และลิงก์สัญลักษณ์ (ซอฟต์ลิงก์)
ไอโหนด: ไฟล์จริง
บนดิสก์ ไฟล์คือไอโหนดที่เก็บข้อมูลและข้อมูลกำกับ ไฟล์เนมคือรายการไดเรกทอรีที่ชี้ไปยังไอโหนดเท่านั้น แนวคิดนี้เป็นกุญแจสำคัญในการทำความเข้าใจลิงก์
การสร้างฮาร์ดลิงก์
ฮาร์ดลิงก์คือรายการไดเรกทอรีอีกรายการหนึ่งที่ชี้ไปยังไอโหนดเดียวกัน ใช้ ln โดยไม่ใส่แฟล็ก
ln original.txt copy.txt
# both names share the same dataการทำงานของฮาร์ดลิงก์
เนื่องจากทั้งสองชื่อชี้ไปยังไอโหนดเดียวกัน การแก้ไขผ่านชื่อใดชื่อหนึ่งจะเปลี่ยนข้อมูลเดียวกัน ไฟล์จะถูกลบก็ต่อเมื่อลิงก์สุดท้ายถูกลบออก
rm original.txt # data still reachable via copy.txtข้อจำกัดของฮาร์ดลิงก์
ฮาร์ดลิงก์ข้ามระบบไฟล์ไม่ได้ และโดยทั่วไปไม่สามารถลิงก์ไดเรกทอรีได้ นอกจากนี้ยังไม่สามารถชี้ไปยังไฟล์บนดิสก์หรือพาร์ติชันอื่นได้
การสร้างลิงก์สัญลักษณ์
ซิมลิงก์คือไฟล์ขนาดเล็กที่เก็บพาธไปยังไฟล์อื่น สร้างด้วย ln -s
ln -s /var/www/site current
# current -> /var/www/siteการทำงานของซิมลิงก์
ซิมลิงก์ชี้ไปยังชื่อ ไม่ใช่ไอโหนด หากเป้าหมายถูกลบหรือย้าย ซิมลิงก์จะกลายเป็นลิงก์เสีย (ลิงก์ห้อย)
ls -l current
current -> /var/www/siteซิมลิงก์ข้ามระบบไฟล์
ซิมลิงก์ต่างจากฮาร์ดลิงก์ตรงที่สามารถข้ามระบบไฟล์และชี้ไปยังไดเรกทอรีได้ จึงมักใช้กับสิ่งต่าง ๆ เช่น โฟลเดอร์รีลีสที่สลับหมุนเวียน
ตรวจดูลิงก์ด้วย ls
ls -l แสดงซิมลิงก์พร้อมลูกศรและประเภทไฟล์ l สำหรับฮาร์ดลิงก์ คอลัมน์จำนวนลิงก์จะแสดงจำนวนชื่อที่ใช้ไอโหนดร่วมกัน
ls -li
12345 -rw-r--r-- 2 user ... # count 2 = hard linkedการลบลิงก์
ใช้ rm กับซิมลิงก์เพื่อลบลิงก์ ไม่ใช่เป้าหมาย โปรดระวัง: การเติมเครื่องหมายทับปิดท้ายซิมลิงก์ไปยังไดเรกทอรีอาจทำให้เกิดพฤติกรรมที่ไม่คาดคิด
rm current # removes only the symlinkควรใช้แบบไหนดี
ใช้ซิมลิงก์สำหรับทางลัด การอ้างอิงข้ามระบบไฟล์ และไดเรกทอรี (เป็นกรณีที่พบบ่อยที่สุด) ใช้ฮาร์ดลิงก์เมื่อต้องการให้หลายชื่อที่มีสถานะเท่าเทียมกันชี้ไปยังข้อมูลเดียวกันบนระบบไฟล์เดียวกัน
ตรวจสอบอย่างรวดเร็ว
ทดสอบความเข้าใจของคุณ
สรุปทบทวน
คุณได้เรียนรู้เกี่ยวกับลิงก์: ฮาร์ดลิงก์เพิ่มชื่อให้กับไอโหนดเดียวกัน (ต้องอยู่ในระบบไฟล์เดียวกัน ใช้กับไดเรกทอรีไม่ได้ และข้อมูลจะคงอยู่จนกว่าลิงก์สุดท้ายจะหายไป) ส่วนซิมลิงก์ (ln -s) จะเก็บพาธ สามารถข้ามระบบไฟล์และชี้ไปยังไดเรกทอรีได้ แต่ก็อาจเสียได้
คำถามที่พบบ่อย
บทเรียน “การสร้างลิงก์: ลิงก์ฮาร์ดและลิงก์สัญลักษณ์” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การสร้างลิงก์: ลิงก์ฮาร์ดและลิงก์สัญลักษณ์” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Linux Command Line & Bash Scripting Mastery ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Linux Command Line & Bash Scripting Mastery มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การสร้างลิงก์: ลิงก์ฮาร์ดและลิงก์สัญลักษณ์”
อ้างอิงไฟล์เดียวจากหลายตำแหน่ง เรียนรู้ความแตกต่างระหว่างลิงก์ฮาร์ดกับลิงก์สัญลักษณ์ วิธีสร้างด้วย ln และเวลาที่ควรใช้แต่ละแบบ คุณปฏิบัติ Linux Command Line & Bash Scripting Mastery ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Linux Command Line & Bash Scripting Mastery หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Linux Command Line & Bash Scripting Mastery บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน
บทเรียน “การสร้างลิงก์: ลิงก์ฮาร์ดและลิงก์สัญลักษณ์” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Linux Command Line & Bash Scripting Mastery นี้ได้ไหม
ได้ บทเรียน Linux Command Line & Bash Scripting Mastery ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- การดูเนื้อหาไฟล์ (cat, less, head, tail)
- ทำความเข้าใจสิทธิ์ไฟล์ (chmod, chown)
- การค้นหาไฟล์ (find, grep)
- การสร้างลิงก์: ลิงก์ฮาร์ดและลิงก์สัญลักษณ์