ປະເພດຂອງການເຊື່ອມຕໍ່ຢູ່ໃນ Linux ແມ່ນຫຍັງ?

ໃນລະບົບໄຟລ໌ Linux ຂອງທ່ານ, ການເຊື່ອມຕໍ່ແມ່ນການເຊື່ອມຕໍ່ລະຫວ່າງຊື່ໄຟລ໌ແລະຂໍ້ມູນຕົວຈິງໃນແຜ່ນ. ມີສອງປະເພດຕົ້ນຕໍຂອງການເຊື່ອມຕໍ່ທີ່ສາມາດສ້າງໄດ້: ການເຊື່ອມຕໍ່ "ແຂງ", ແລະ "ອ່ອນ" ຫຼືການເຊື່ອມຕໍ່ສັນຍາລັກ. … ລິ້ງສັນຍາລັກແມ່ນໄຟລ໌ພິເສດທີ່ຊີ້ໄປຫາໄຟລ໌ອື່ນ ຫຼືໄດເລກະທໍລີ, ເຊິ່ງເອີ້ນວ່າເປົ້າໝາຍ.

ການເຊື່ອມໂຍງທີ່ເປັນສັນຍາລັກຫຼືອ່ອນແມ່ນການເຊື່ອມໂຍງຕົວຈິງກັບໄຟລ໌ຕົ້ນສະບັບ, ໃນຂະນະທີ່ການເຊື່ອມຕໍ່ຍາກແມ່ນສໍາເນົາບ່ອນແລກປ່ຽນຄວາມຂອງໄຟລ໌ຕົ້ນສະບັບ. ຖ້າທ່ານລຶບໄຟລ໌ຕົ້ນສະບັບ, ການເຊື່ອມຕໍ່ອ່ອນບໍ່ມີຄ່າ, ເພາະວ່າມັນຊີ້ໃຫ້ເຫັນເຖິງໄຟລ໌ທີ່ບໍ່ມີຢູ່. ແຕ່ໃນກໍລະນີຂອງການເຊື່ອມໂຍງຍາກ, ມັນກົງກັນຂ້າມທັງຫມົດ.

ລິ້ງຢູ່ໃນ UNIX ແມ່ນຕົວຊີ້ໄປຫາໄຟລ໌. ເຊັ່ນດຽວກັນກັບຕົວຊີ້ໃນພາສາການຂຽນໂປລແກລມໃດກໍ່ຕາມ, ການເຊື່ອມຕໍ່ໃນ UNIX ແມ່ນຕົວຊີ້ຊີ້ໄປຫາໄຟລ໌ຫຼືໄດເລກະທໍລີ. … ລິ້ງອະນຸຍາດໃຫ້ມີຫຼາຍກວ່າໜຶ່ງຊື່ໄຟລ໌ເພື່ອອ້າງອີງເຖິງໄຟລ໌ດຽວກັນ, ຢູ່ບ່ອນອື່ນ. ມີສອງປະເພດຂອງການເຊື່ອມຕໍ່: Soft Link ຫຼືການເຊື່ອມຕໍ່ສັນຍາລັກ.

ການເຊື່ອມໂຍງໃນ Unix ແມ່ນຕົວຊີ້ທີ່ສໍາຄັນທີ່ເຊື່ອມໂຍງກັບໄຟລ໌ແລະໄດເລກະທໍລີ. ຄວາມແຕກຕ່າງທີ່ ສຳ ຄັນລະຫວ່າງການເຊື່ອມຕໍ່ແຂງແລະການເຊື່ອມຕໍ່ອ່ອນແມ່ນວ່າການເຊື່ອມຕໍ່ແຂງແມ່ນການອ້າງອີງໂດຍກົງກັບເອກະສານໃນຂະນະທີ່ການເຊື່ອມຕໍ່ອ່ອນແມ່ນການອ້າງອີງໂດຍຊື່ເຊິ່ງ ໝາຍ ຄວາມວ່າມັນຊີ້ໃຫ້ເຫັນເຖິງໄຟລ໌ໂດຍຊື່ໄຟລ໌.

ເພື່ອເອົາການເຊື່ອມຕໍ່ທີ່ເປັນສັນຍາລັກ, ໃຫ້ໃຊ້ຄໍາສັ່ງ rm ຫຼື unlink ທີ່ຕິດຕາມດ້ວຍຊື່ຂອງ symlink ເປັນການໂຕ້ຖຽງ. ເມື່ອຖອນຕົວເຊື່ອມຕໍ່ສັນຍາລັກທີ່ຊີ້ໄປຫາໄດເລກະທໍລີ, ບໍ່ໃຫ້ໃສ່ເສັ້ນທັບຊ້ອນທ້າຍໃສ່ຊື່ symlink.

ເພື່ອເບິ່ງການເຊື່ອມຕໍ່ສັນຍາລັກໃນໄດເລກະທໍລີ:

  1. ເປີດ terminal ແລະຍ້າຍໄປທີ່ໄດເລກະທໍລີນັ້ນ.
  2. ພິມຄໍາສັ່ງ: ls -la. ອັນນີ້ຈະເຮັດໃຫ້ລາຍຊື່ໄຟລ໌ທັງໝົດຢູ່ໃນໄດເລກະທໍລີຍາວໆ ເຖິງແມ່ນວ່າຈະຖືກເຊື່ອງໄວ້.
  3. ໄຟລ໌ທີ່ເລີ່ມຕົ້ນດ້ວຍ l ແມ່ນໄຟລ໌ເຊື່ອມຕໍ່ສັນຍາລັກຂອງເຈົ້າ.

ທ່ານ​ສາ​ມາດ​ກວດ​ສອບ​ວ່າ​ໄຟລ​໌​ເປັນ symlink ກັບ [ -L file ] . ເຊັ່ນດຽວກັນ, ທ່ານສາມາດທົດສອບວ່າໄຟລ໌ເປັນໄຟລ໌ປົກກະຕິທີ່ມີ [ -f file ] , ແຕ່ໃນກໍລະນີນັ້ນ, ການກວດສອບແມ່ນເຮັດຫຼັງຈາກການແກ້ໄຂ symlinks. hardlinks ບໍ່ແມ່ນປະເພດຂອງໄຟລ໌, ພວກເຂົາແມ່ນພຽງແຕ່ຊື່ທີ່ແຕກຕ່າງກັນສໍາລັບໄຟລ໌ (ປະເພດໃດກໍ່ຕາມ).

ໃນຄອມພິວເຕີ້, ການເຊື່ອມຕໍ່ຍາກແມ່ນລາຍການໄດເລກະທໍລີທີ່ເຊື່ອມໂຍງຊື່ກັບໄຟລ໌ໃນລະບົບໄຟລ໌. ລະບົບໄຟລ໌ທີ່ອີງໃສ່ໄດເລກະທໍລີທັງໝົດຕ້ອງມີຢ່າງນ້ອຍໜຶ່ງລິ້ງຍາກທີ່ໃຫ້ຊື່ຕົ້ນສະບັບສໍາລັບແຕ່ລະໄຟລ໌. ຄໍາວ່າ "ການເຊື່ອມຕໍ່ຍາກ" ປົກກະຕິແລ້ວແມ່ນໃຊ້ໃນລະບົບໄຟລ໌ທີ່ອະນຸຍາດໃຫ້ມີຫຼາຍກວ່າຫນຶ່ງເຊື່ອມຕໍ່ຍາກສໍາລັບໄຟລ໌ດຽວກັນ.

ການເຊື່ອມຕໍ່ຍາກແມ່ນ replica ທີ່ແນ່ນອນຂອງໄຟລ໌ຕົວຈິງທີ່ມັນຊີ້ໄປຫາ . ທັງການເຊື່ອມຕໍ່ຍາກ ແລະໄຟລ໌ທີ່ເຊື່ອມຕໍ່ນັ້ນແບ່ງປັນ inode ດຽວກັນ. ຖ້າໄຟລ໌ຕົ້ນສະບັບຖືກລຶບ, ການເຊື່ອມຕໍ່ຍາກຍັງເຮັດວຽກແລະທ່ານຈະສາມາດເຂົ້າເຖິງໄຟລ໌ໄດ້ຈົນກ່ວາຈໍານວນຂອງການເຊື່ອມຕໍ່ຍາກຂອງໄຟລ໌ບໍ່ແມ່ນ 0 (ສູນ).

ແມ່ນແລ້ວ. ພວກເຂົາທັງສອງໃຊ້ເວລາຫວ່າງຍ້ອນວ່າພວກເຂົາທັງສອງຍັງມີລາຍການລາຍຊື່.

ໂດຍຄ່າເລີ່ມຕົ້ນ, ຄໍາສັ່ງ ln ສ້າງການເຊື່ອມຕໍ່ຍາກ. ເພື່ອສ້າງລິ້ງສັນຍາລັກ, ໃຫ້ໃຊ້ຕົວເລືອກ -s (–symbolic). ຖ້າໃຫ້ທັງ FILE ແລະ LINK, ln ຈະສ້າງລິ້ງຈາກໄຟລ໌ທີ່ລະບຸໄວ້ເປັນອາກິວເມັນທຳອິດ ( FILE ) ໄປຫາໄຟລ໌ທີ່ລະບຸເປັນອາກິວເມັນທີສອງ ( LINK ).

ເພື່ອສ້າງການເຊື່ອມຕໍ່ສັນຍາລັກຜ່ານທາງເລືອກ -s ໄປຫາຄໍາສັ່ງ ln ຕິດຕາມດ້ວຍໄຟລ໌ເປົ້າຫມາຍແລະຊື່ຂອງການເຊື່ອມຕໍ່. ໃນຕົວຢ່າງຕໍ່ໄປນີ້, ໄຟລ໌ຖືກເຊື່ອມໂຍງເຂົ້າໄປໃນໂຟນເດີ bin. ໃນຕົວຢ່າງຕໍ່ໄປນີ້ ໄດຣຟ໌ທີ່ຕິດຢູ່ພາຍນອກຖືກເຊື່ອມຕໍ່ເຂົ້າກັບໄດເລກະທໍລີເຮືອນ.

ຖ້າທ່ານຊອກຫາສອງໄຟລ໌ທີ່ມີຄຸນສົມບັດດຽວກັນແຕ່ບໍ່ແນ່ໃຈວ່າພວກມັນເຊື່ອມໂຍງຍາກ, ໃຫ້ໃຊ້ຄໍາສັ່ງ ls ​​-i ເພື່ອເບິ່ງຈໍານວນ inode. ໄຟລ໌ທີ່ເຊື່ອມຕໍ່ກັນຍາກຈະແບ່ງປັນຕົວເລກ inode ດຽວກັນ. ເລກ inode ທີ່ແບ່ງປັນແມ່ນ 2730074, ຊຶ່ງຫມາຍຄວາມວ່າໄຟລ໌ເຫຼົ່ານີ້ແມ່ນຂໍ້ມູນດຽວກັນ.

ໄດເລກະທໍລີຂອງໂຄງການຢູ່ໃນຕົວຈັດການໄຟລ໌, ມັນຈະປາກົດວ່າມີໄຟລ໌ພາຍໃນ /mnt/partition/. ໂຄງການ. ນອກເຫນືອຈາກ "ການເຊື່ອມໂຍງສັນຍາລັກ", ເຊິ່ງເອີ້ນກັນວ່າ "ການເຊື່ອມໂຍງອ່ອນ", ທ່ານສາມາດສ້າງ "ການເຊື່ອມຕໍ່ຍາກ". ການເຊື່ອມໂຍງທີ່ເປັນສັນຍາລັກຫຼືອ່ອນໆຊີ້ໃຫ້ເຫັນເສັ້ນທາງໃນລະບົບໄຟລ໌.

ເພື່ອສ້າງລິ້ງທີ່ຍາກໃນລະບົບ Linux ຫຼື Unix ຄື:

  1. ສ້າງການເຊື່ອມໂຍງຍາກລະຫວ່າງ sfile1file ແລະ link1file, ດໍາເນີນການ: ln sfile1file link1file.
  2. ເພື່ອເຮັດໃຫ້ການເຊື່ອມໂຍງສັນຍາລັກແທນທີ່ຈະເປັນການເຊື່ອມໂຍງຍາກ, ໃຊ້: ln -s source link.
  3. ເພື່ອກວດສອບການເຊື່ອມຕໍ່ອ່ອນ ຫຼືແຂງໃນ Linux, ໃຫ້ແລ່ນ: ls -l source link.

16 окт ປີ 2018.

ມັກໂພສນີ້ບໍ່? ກະລຸນາແບ່ງປັນໃຫ້ ໝູ່ ເພື່ອນຂອງທ່ານ:
OS ມື້ນີ້