انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید

نویسنده موضوع: دلیل خرابی لینک های نرم ایجاد شده توسط ln در پوشه ای که در آن نیستیم؟(حل شد)  (دفعات بازدید: 331 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین 🇬🇧بریتانیای کبیر🇬🇧

  • High Hero Member
  • *
  • ارسال: 2658
  • جنسیت : پسر
  • GOD SAVE THE KING/QUEEN
من وقتی با ln لینک می‌سازم:
لینک های سخت که هیچ مشکلی ندارند
ولی برای لینک های نرم باید حتما او لینک نرمرو در پوشه ای که در اون هستم ایجاد کنم و اگه در پوشه ثالثی( مثلا در پوشه دسکتاپ  باشم و یه لینک نرم از یه فایل داخل پوشه dir درون پوشه dir2 بسازم) یا اینکه حتی درون پوشه دسکتاپ باشم و یه لینک از یکی از فایلهای درون پوشه دسکتاپ  در پوشه dir بسازم، لینکه بروکن (شکسته و خراب میشه) میشه.
چرا؟
« آخرین ویرایش: 27 آبان 1401، 03:00 ب‌ظ توسط درود بر امپراتوری بریتانیا کبیر »
🇬🇧🏴󠁧󠁢󠁥󠁮󠁧󠁿🏴󠁧󠁢󠁷󠁬󠁳󠁿🏴󠁧󠁢󠁳󠁣󠁴󠁿🇬🇧

آفلاین سودو.

  • High Hero Member
  • *
  • ارسال: 3095
  • جنسیت : پسر
  • :(){ :|:& };:
نمی‌دونم دقیقا داستان چیه ولی من یه بار قدیما با لینکا به مشکل خوردم و کشف کردم که باید آدرس دقیق ( absolute path ) فایل رو بدی! هم تارگت و هم سورس!
آرچ و گنوم!

آفلاین 🇬🇧بریتانیای کبیر🇬🇧

  • High Hero Member
  • *
  • ارسال: 2658
  • جنسیت : پسر
  • GOD SAVE THE KING/QUEEN
ابسلوت ترجمش میشه مطلق. ؛)
 مگه ابزار ln تافته جدا بافتس که با ریلیتیو پس کار نکنه؟ دلیلش چرا؟
ویرایش: رفتم امتحان کردم فقط لازمه تارگت ابسلوت پس باشه. سورس رو ریلیتیو هم قبول میکنه. چرا ولی لینک سخت نباید این جوری باشه؟ 
ویرایش ۲ : رفتم با cp یه لینک نرم بشازم و اونم همینو گفت:
cp -s dir/file dir1cp: dir1/file: can make relative symbolic links only in current directory
« آخرین ویرایش: 26 آبان 1401، 11:24 ب‌ظ توسط درود بر امپراتوری بریتانیا کبیر »
🇬🇧🏴󠁧󠁢󠁥󠁮󠁧󠁿🏴󠁧󠁢󠁷󠁬󠁳󠁿🏴󠁧󠁢󠁳󠁣󠁴󠁿🇬🇧

آفلاین سودو.

  • High Hero Member
  • *
  • ارسال: 3095
  • جنسیت : پسر
  • :(){ :|:& };:
می‌دونم، من‌م ترجمش نکردم.
تاکید کردم که نمی‌دونم داستان چیه! فقط کشف کردم که این‌جوری درست کار می‌ده!
« آخرین ویرایش: 26 آبان 1401، 11:14 ب‌ظ توسط سودو »
آرچ و گنوم!

آفلاین M!lad

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 1757
لینک relative دقیقا با آدرس relativeای که شما بهش می‌دید ساخته می‌شه و انتظار داره فایلی که بهش اشاره می‌کنه در همون آدرس وجود داشته باشه. اینکه محل ذخیره شدن لینک کجا هست تاثیری در لینک نداره، به همین دلیل در زمانی که می‌خواید لینک رو با آدرس‌دهی relative بسازید باید آدرس رو از محل قرارگیری لینک بدید.

cd ~
mkdir dir1 dir2
touch dir1/file
ln -s dir1/file dir2/mylink
ln -s ../dir1/file dir2/mynewlink

mylink کار نمی‌کنه چون انتظار داره در dir2 یک دایرکتوری و فایل با آدرس dir1/file وجود داشته باشه که نداره.
mynewlink اما با آدرس‌دهی درست ساخته شده.

بحث hardlink هم که کلا متفاوت هست چون صرفا با inode فایل سر و کار داریم.
..I feel no fault for the fault I feel..