כיצד ליצור לינוקס קישורים קשים?

How Create Hard Links Linux



קישור הוא תכונה מעניינת בלינוקס. במערכות הפעלה דומות ל- UNIX, הכל הוא קובץ. קובץ הוא ביסודו קישור לאנודה, סוג מיוחד של מבנה נתונים המאחסן כל מה שקשור לקובץ מסוים, למעט שמו המקורי ותוכנו בפועל. זוהי התכונה המקשרת מינופים. יצירת קישור היא יצירת קובץ נוסף המצביע על אותו אינודו הבסיסי של קובץ אחר. במצבים רבים, זוהי שיטה שימושית להפליא.

בדוק כיצד ליצור קישורים קשים ב- Linux.







קישורים קשים בלינוקס

לפני שצוללים לעומק, בואו נדבר קצת על קישורים קשים ורכים. ישנם כמה הבדלים מהותיים ביניהם. במקרה של קישור קשיח, הוא יכול להתקיים רק באותה מערכת קבצים, בעוד שהקישור הסמלי יחזיק במערכות קבצים חוצות. יתר על כן, ניתן לבצע אותו רק על קבצים רגילים. אתה גם לא יכול ליצור קישורים קשים לספרייה, כך שהוא לא יוצר לולאת ספריות.



אם קובץ אחד של הקישור הקשה נמחק, הוא מסיר את הקישור מהאודיה הבסיסית.



הפקודה ls יכולה להדפיס את קוד הקובץ/ספריית היעד.





$ls <file_or_dir>

יצירת קישורים קשים

יצירת קישור קשה היא די פשוטה. ליצירת קישורים, ln הוא הכלי הייעודי הזמין כמעט בכל הפצות לינוקס.



השתמש במבנה הפקודה הבא ליצירת קישור קשיח. שים לב שהיעד צריך להיות בתוך אותה מערכת קבצים. הדגל -v מיועד למצב מילולי.

$ב- -v <מָקוֹר> <קישור>


אמת את התוצאה.

$ls <יַעַד>


באשר לקישור קשה לספרייה, זה אסור. מבחינה היפותטית, עדיין ניתן ליצור, אך רוב הפצות לינוקס משביתות את התכונה הזו, גם אם אתה מפעיל את הפעולה עם הרשאת שורש. לקישור מדריכים, השתמש בקישורים רכים.

קישורים רכים

קישור רך מכונה בדרך כלל קישורים סמליים. קישור רך יכול להיות חוצה קבצים. בהגדרה, זה לא קובץ סטנדרטי, אלא קובץ שמצביע על קובץ קיים. כאן, לקובץ הקישור הרך יהיה ערך אינוד שונה, אך הוא מצביע על הקובץ המקורי.

בדיוק כמו יצירת קישורים קשים, נשתמש בכלי ln. כדי להכריז על יצירת קישור רך, הוסף את הדגל -s.

$ב- -לעומת <מָקוֹר> <יַעַד>


אמת את התוצאה.

$ls <יַעַד>

אם כבר קיים קישור, תוכל לעדכן אותו באמצעות הדגל -f שמאלץ את ln לעדכן את הקישור ללא כל אישור. לחלופין, תוכל להשתמש בדגל -i ליצירת קישורים אינטראקטיביים.

$ב- -sf <מָקוֹר> <יַעַד>


אל תשכח לאמת את התוצאה.

$ls <יַעַד>

מציאת קישורים

בהנחה שישנם מספר קישורים לאותו קובץ, מעקב אחריהם עלול להיות קשה. במצב כזה, השתמש בשיטה זו כדי לברר את כל הקישורים.

לשם כך אנו זקוקים לערך ה- inode של הקובץ המקורי. השתמש בפקודה הבאה כדי לברר את מספר ה- inode.

$ls <קובץ מטרה>


כעת, השתמש במספר ה- inode כדי לברר את כל הקישורים לקובץ זה. כאן, הספרייה הפעילה הנוכחית צריכה להיות הספרייה שבה נמצא הקובץ המקורי.

$למצוא.-יינם <ערך inode>

מחיקת קישורים

אם ברצונך להשבית קישור קשיח, הדרך לעשות זאת היא על ידי מחיקת הקובץ המקושר.

$rm <קישור>

מחשבות אחרונות

קישור הוא כלי רב עוצמה שניתן להשתמש בו במצבים רבים. למרות שיש לו מגבלות משלו, הוא יכול להציע יתרונות מצוינים להרבה תרחישים.

מעוניינים להעמיק יותר לגבי הפקודה ln? בדוק כיצד להשתמש בפקודה ln.

מחשוב שמח!