למד ניהול תלות באמצעות הפקודה ldd כדי לנהל טוב יותר את מחשב הלינוקס שלך ואת החבילות המותקנות.
ניהול תלות הוא חלק בלתי נפרד מתחזוקת מערכת הלינוקס שלך. התוכנה מורכבת ונשענת על מספר רב של ספריות וקבצים משותפים. לפעמים, זה הופך להיות קשה לעקוב אחר הקבצים הנדרשים על ידי יישום.
כאן נכנסת לפעולה פקודת ldd בלינוקס. ldd הוא כלי שורת פקודה רב תושייה למעקב אחר התלות של אובייקטים משותפים הנדרשים על ידי יישום.
בואו ללמוד איך אתה יכול להשתמש בפקודה ldd לטובתך ולהפוך למקצוען בניהול תלות בלינוקס!
מהן תלות בחבילה?
תוכנה היא לא רק קוד מקור עצמאי אלא שילוב של קוד מקור מקורי וקוד מושאל מספריות חיצוניות. כאשר ספריות אלה ואובייקטים משותפים אחרים חסרים במערכת שלך, אפליקציה התלויה בהם עלולה לתפקד או ישר לסרב אפילו להפעיל.
כל הקבצים המשותפים, החבילות, הספריות וכו', נקראים במצטבר תלות בלינוקס. למרות שההגדרה הקצרה הזו נותנת לך מושג גס לגבי תלות, התמונה האמיתית היא קצת יותר מורכבת מזה, וזו הסיבה שחשוב ללמוד מהן תלות בחבילות לעומק.
מהי הפקודה ldd וכיצד היא פועלת?
ldd הוא קיצור של List Dynamic Dependencies. כפי שהשם מרמז, ldd מפרט את כל האובייקטים המשותפים הנדרשים על ידי יישום.
זה עובד על ידי הפעלת המקשר הדינמי עם מוגדר במיוחד משתני סביבה. כאשר אתה מפעיל ldd עם המיקום של קובץ בינארי, הוא מחזיר פלט המכיל את רשימת התלות, מיקומם וערך הקסדצימלי המייצג היכן בזיכרון הם נטענים.
מציאת תלות של אובייקטים משותפים עם הפקודה ldd
עכשיו, כשיש לך מושג ברור על מה זה ldd, בוא נתחיל וללמוד איך אתה יכול למצוא איתו תלות בתוכנה.
לפני שתלמד כיצד להשתמש ב-ldd, ראשית, אשר אם הוא מותקן במערכת שלך על ידי הדפסת הגרסה המותקנת של ldd:
ldd --גרסה
אם זה יחזור שגיאת "פקודה לא נמצאה"., תחילה עליך להתקין את ldd.
במערכות מבוססות אובונטו ודביאן, הפעל:
sudo apt להתקין libc-bin
עבור הפצות מבוססות Arch:
sudo pacman -S glibc
על RHEL ופדורה:
sudo dnf להתקין glibc-common
כאשר ldd מותקן, כעת תוכל להתמקד בלימוד השימוש בו. להלן התחביר הבסיסי של הפקודה ldd:
ldd binary_location
במקרה שאתה לא יודע את מיקומו של הבינארי, אתה יכול לעשות שימוש באחד מה- מפעילי שורת פקודה רבים של לינוקס ולשלב את הפלט של הפקודה which עם ldd כדי למצוא את התלות של החבילה:
ldd -flag $(which binary_name)
הפקודה ldd מציעה ארבע אפשרויות שונות לשינוי הפלט. הם:
- -v: מדפיס פלט מפורט כולל מידע נוסף כגון מידע גרסה עבור כל תלות
- -u: מדפיס את כל התלות שאינה בשימוש, כלומר תלות שנטענות אך לא מיושמות
- -ד: מדפיס חפצים חסרים ומבצע רילוקיישן
- -r: מדפיס אובייקטים ופונקציות חסרים ומבצע רילוקיישן
ניהול תלות בחבילות בלינוקס
עם ldd בארסנל התוכנה שלך, תוכל לפתור בעיות הקשורות לתלות באובייקט משותף ביישום שלך.
יתרה מכך, מכיוון ש-ldd מוציא גם את המיקום שבו נטענת ספרייה, תוכל לבצע ניפוי באגים באפליקציה ולהבין טוב יותר כיצד מיושמת ספרייה מסוימת. ldd גם מדפיסה את הגרסאות של ספריות משותפות המשמשות ביישום.
באמצעות תכונה זו, תוכל לבדוק את היישומים שלך עבור כל פגיעות פוטנציאלית הקשורה לגרסה מיושנת של ספרייה משותפת.
ניהול תלות הוא מיומנות ליבה שחשובה לשמירה על בריאות מערכת הלינוקס שלך. עם זאת, לפעמים, חבילה עלולה להישבר למרות שכל התלות שלה בריאה. חשוב שתדעו איך למצוא ולתקן חבילות שבורות.