ลิงก์สัญลักษณ์: ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว


17

ฉันสร้างลิงก์สัญลักษณ์จากไฟล์ที่ "/ opt / bladir / bla" เป็น "bla" ดังนั้น "bla" จึงอยู่ใน "/ usr / bin / bla" แต่ถ้าฉันต้องการเรียกว่า "bla" ที่เทอร์มินัลไม่มีไฟล์หรือไดเรกทอรีผิดพลาดเกิดขึ้น ฉันค้นหาที่ "/ usr / bin / bla" และไฟล์เชื่อมโยงอย่างถูกต้องที่ "/ opt / bladir / bla"

ข้อผิดพลาดคืออะไร

PS ที่นี่คือ "รายการ" terminal ของฉัน: sudo ln -s /opt/bladir/bla bla

ขอบคุณ!

€: แก้ไขปัญหาแล้ว ตามรายการคุณสมบัติ 12.04 ควรมีการสนับสนุน Multiarch ... 'ควร' ฉันได้รับ ia32-libs จาก synaptic และตอนนี้โปรแกรมก็ทำได้ดี ลิงก์สัญลักษณ์ของฉันถูกต้องตามที่เห็น

ขอบคุณสำหรับคำตอบทั้งหมด!

คำตอบ:


13

แก้ไข: การแก้ปัญหาด้านล่างไม่ทำงาน เห็นได้ชัดว่าลิงก์สัญลักษณ์เสียหายเนื่องจากfile -Lไม่สามารถเปิดลิงก์สัญลักษณ์ / usr / bin / bla ในกรณีนี้ให้ทำดังนี้

sudo ln -sf /opt/bladir/bla /usr/bin/bla

การใช้เส้นทางแบบเต็ม (-f คือบังคับให้เขียนทับลิงก์สัญลักษณ์ก่อนหน้าถ้ามี)

ฮึ่ม ฉันคิดว่าโปรแกรม "bla" อาจกำลังมองหาสิ่งที่ติดตั้งใน / opt / bladir และหาไม่พบ ตัวอย่างเช่นมันอาจเป็นเชลล์สคริปต์ตัวห่อหุ้มรอบปฏิบัติการ Java ที่มีเส้นทางที่เกี่ยวข้องกับไดเรกทอรีปัจจุบัน: แต่ไดเรกทอรีปัจจุบันของคุณคือ / usr / bin / และไม่ / opt / bladir /

หากงานดังต่อไปนี้

file -L /usr/bin/bla

... แล้วมันเป็นแน่นอนไม่ได้มีปัญหากับการเชื่อมโยงสัญลักษณ์ของคุณ

ตรวจสอบว่า "bla" เป็นเชลล์สคริปต์ที่คุณสามารถแก้ไขลองดูข้างใน - บางทีคุณอาจจะพบปัญหา อาจเป็นไปได้ว่าการเพิ่ม / opt / bladir ใน PATH ของคุณจะเป็นทางออกที่ดีกว่า


คำสั่งที่ระบุบอกว่า: ข้อผิดพลาด: ไม่สามารถเปิด `/ usr / bin / bla ' ฉันไม่สามารถมองเข้าไปใน "bla" มันเป็นโปรแกรมไม่ใช่แค่เชลล์สคริปต์
Sehe

ตกลงทำซ้ำลิงก์สัญลักษณ์ที่มีเส้นทางแบบเต็มโปรด
มกราคม

ฉันมาถึงความคิดนั้นก่อนหน้านี้ด้วยตัวเอง แม้จะมีลิงก์เก่าและสร้างใหม่ แต่ข้อผิดพลาดก็ยังคงปรากฏอยู่ - เอสเอฟก็ใช้งานไม่ได้
Sehe

ตกลง. โปรดเรียกใช้ls -l /usr/bin/blaและls -l /opt/bladir/blaรายงานผลลัพธ์ที่แน่นอนของคำสั่งเหล่านี้
มกราคม

@ มกราคมคุณต้องการแนะนำแนวทางfile -L ใดหากไม่ได้ผล
dbliss

0

บ่อยครั้งที่ข้อความแสดงข้อผิดพลาดนี้แสดงขึ้นหากคุณไม่ได้เปิดใช้งานบิตการเรียกใช้งาน ตรวจสอบว่าไฟล์หลักเช่นเดียวกับลิงค์ที่ได้รับอนุญาตการดำเนินการ

ฉันสงสัยว่าคุณ/optอาจถูกเมาท์จากพาร์ติชั่นแยกต่างหากและมันไม่ได้ถูกเมาท์ด้วยexecตัวเลือกเมานท์


บิต excecution ถูกตั้งค่าและ / opt / ไม่ได้อยู่ในพาร์ติชันแยกต่างหาก: /
Sehe
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.