ຂ້ອຍຈະແກ້ໄຂການເຊື່ອມຕໍ່ສັນຍາລັກໃນ Linux ໄດ້ແນວໃດ?
ຫຼັງຈາກນັ້ນ, ມີສາມວິທີທີ່ຈະປ່ຽນ symlink:
- ໃຊ້ ln ດ້ວຍການບັງຄັບ -f ແລະແມ້ກະທັ້ງສໍາລັບໄດເລກະທໍລີ -n (inode ສາມາດຖືກນໍາໃຊ້ຄືນ): ln -sfn /some/new/path linkname.
- ເອົາ symlink ອອກແລະສ້າງໃຫມ່ (ເຖິງແມ່ນວ່າສໍາລັບໄດເລກະທໍລີ): rm linkname; ln -s /some/new/path linkname.
ເຈົ້າສາມາດແກ້ໄຂໄຟລ໌ເຊື່ອມຕໍ່ທີ່ເປັນສັນຍາລັກໄດ້ບໍ?
ບໍ່. ການໂທລະບົບ symlink ຈະກັບຄືນມາ EXIST ຖ້າເສັ້ນທາງໃໝ່ມີຢູ່ແລ້ວ. ທ່ານພຽງແຕ່ສາມາດເຊື່ອມຕໍ່ຈາກ node ໃຫມ່ໃນລະບົບໄຟລ໌.
ເຈົ້າສາມາດປ່ຽນຊື່ການເຊື່ອມຕໍ່ທີ່ເປັນສັນຍາລັກໄດ້ບໍ?
ຈະເກີດຫຍັງຂຶ້ນກັບ symlink ຖ້າພວກເຮົາປ່ຽນຊື່ໄຟລ໌? ເມື່ອທ່ານຍ້າຍໄຟລ໌ໄປຫາຈຸດ symlink, symlink ແມ່ນແຕກ aka dangling symlink. ທ່ານຕ້ອງລຶບມັນອອກແລະສ້າງອັນໃຫມ່ຖ້າທ່ານຕ້ອງການຊີ້ໃຫ້ເຫັນຊື່ໄຟລ໌ໃຫມ່.
ທ່ານ chmod ການເຊື່ອມຕໍ່ສັນຍາລັກແນວໃດ?
ນັບຕັ້ງແຕ່ການເຊື່ອມຕໍ່ສັນຍາລັກບໍ່ມີໂຫມດ chmod ບໍ່ມີຜົນກະທົບ ການເຊື່ອມຕໍ່ສັນຍາລັກ. ຖ້າໄຟລ໌ກໍານົດໄດເລກະທໍລີ, chmod ປ່ຽນໂຫມດຂອງແຕ່ລະໄຟລ໌ໃນຕົ້ນໄມ້ຍ່ອຍທັງຫມົດທີ່ເຊື່ອມຕໍ່ຢູ່ຈຸດນັ້ນ. ຢ່າປະຕິບັດຕາມການເຊື່ອມຕໍ່ສັນຍາລັກ. ນັບຕັ້ງແຕ່ການເຊື່ອມຕໍ່ສັນຍາລັກບໍ່ມີຮູບແບບ chmod ບໍ່ມີຜົນກະທົບກ່ຽວກັບການເຊື່ອມຕໍ່ສັນຍາລັກ.
ຂ້ອຍຈະເອົາການເຊື່ອມຕໍ່ສັນຍາລັກໃນ Linux ໄດ້ແນວໃດ?
ເພື່ອເອົາລິ້ງສັນຍາລັກອອກ, ໃຫ້ໃຊ້ອັນໃດນຶ່ງ rm ຫຼື unlink ຄໍາສັ່ງປະຕິບັດຕາມໂດຍຊື່ຂອງ symlink ເປັນການໂຕ້ຖຽງ. ເມື່ອຖອນຕົວເຊື່ອມຕໍ່ສັນຍາລັກທີ່ຊີ້ໄປຫາໄດເລກະທໍລີ, ບໍ່ໃຫ້ໃສ່ເສັ້ນທັບຊ້ອນທ້າຍໃສ່ຊື່ symlink.
ເປັນຫຍັງບໍ່ມີການເຊື່ອມໂຍງຍາກກັບໄດເລກະທໍລີ?
ເຫດຜົນຂອງໄດເລກະທໍລີທີ່ເຊື່ອມຕໍ່ຍາກແມ່ນ ບໍ່ອະນຸຍາດ ເປັນດ້ານວິຊາການເລັກນ້ອຍ. ໂດຍພື້ນຖານແລ້ວ, ພວກເຂົາທໍາລາຍໂຄງສ້າງລະບົບໄຟລ໌. ໂດຍທົ່ວໄປແລ້ວທ່ານບໍ່ຄວນໃຊ້ການເຊື່ອມຕໍ່ຍາກຢ່າງໃດກໍ່ຕາມ. ການເຊື່ອມຕໍ່ສັນຍາລັກອະນຸຍາດໃຫ້ສ່ວນໃຫຍ່ຂອງການທໍາງານດຽວກັນໂດຍບໍ່ມີການກໍ່ໃຫ້ເກີດບັນຫາ (e.g. ln -s ເຊື່ອມຕໍ່ເປົ້າຫມາຍ).
ເຈົ້າສ້າງການເຊື່ອມໂຍງສັນຍາລັກແນວໃດ?
ເພື່ອສ້າງການເຊື່ອມຕໍ່ສັນຍາລັກ, ໃຊ້ຕົວເລືອກ -s (–symbolic).. ຖ້າໃຫ້ທັງ FILE ແລະ LINK, ln ຈະສ້າງລິ້ງຈາກໄຟລ໌ທີ່ລະບຸໄວ້ເປັນອາກິວເມັນທຳອິດ ( FILE ) ໄປຫາໄຟລ໌ທີ່ລະບຸເປັນອາກິວເມັນທີສອງ ( LINK ).
ຈະເກີດຫຍັງຂຶ້ນຖ້າທ່ານລຶບການເຊື່ອມຕໍ່ທີ່ເປັນສັນຍາລັກ?
ຖ້າການເຊື່ອມຕໍ່ສັນຍາລັກຖືກລຶບ, ເປົ້າໝາຍຂອງມັນຍັງບໍ່ໄດ້ຮັບຜົນກະທົບ. ຖ້າການເຊື່ອມຕໍ່ສັນຍາລັກຊີ້ໄປຫາເປົ້າຫມາຍໃດຫນຶ່ງ, ແລະບາງຄັ້ງຕໍ່ມາເປົ້າຫມາຍນັ້ນຖືກຍ້າຍ, ປ່ຽນຊື່ຫຼືລຶບ, ການເຊື່ອມຕໍ່ສັນຍາລັກບໍ່ໄດ້ຖືກປັບປຸງຫຼືລຶບຖິ້ມໂດຍອັດຕະໂນມັດ, ແຕ່ຍັງຄົງຢູ່ແລະຍັງຊີ້ໄປຫາເປົ້າຫມາຍເກົ່າ, ໃນປັດຈຸບັນສະຖານທີ່ທີ່ບໍ່ມີຢູ່ແລ້ວຫຼື ໄຟລ໌.
ຂ້ອຍຈະຊອກຫາການເຊື່ອມຕໍ່ສັນຍາລັກໄດ້ແນວໃດ?
ເພື່ອເບິ່ງການເຊື່ອມຕໍ່ສັນຍາລັກໃນໄດເລກະທໍລີ:
- ເປີດ terminal ແລະຍ້າຍໄປທີ່ໄດເລກະທໍລີນັ້ນ.
- ພິມຄໍາສັ່ງ: ls -la. ອັນນີ້ຈະເຮັດໃຫ້ລາຍຊື່ໄຟລ໌ທັງໝົດຢູ່ໃນໄດເລກະທໍລີຍາວໆ ເຖິງແມ່ນວ່າຈະຖືກເຊື່ອງໄວ້.
- ໄຟລ໌ທີ່ເລີ່ມຕົ້ນດ້ວຍ l ແມ່ນໄຟລ໌ເຊື່ອມຕໍ່ສັນຍາລັກຂອງເຈົ້າ.