לינוקס היא מערכת הפעלה התומכת בריבוי משתמשים ומשימות, כלומר מספר רב של משתמשים יכולים לעשות שימוש באותו מחשב בעת ובעונה אחת. למען שמירת הסדר במערכת, והבטחת עבודתה התקינה, מרבית המשתמשים מוגבלים לטיפול בקובציהם בלבד, והמערכת מונעת מהם ביצוע שינויים ופעולות אשר עלולים להשפיע על משתמשים אחרים. יחד עם זאת, מפעם לפעם יש צורך לבצע שינויים כאלה (לדוגמה, התקנת תכנה או חומרה חדשים, או לצורך תחזוקה של המערכת). על מנת לבצע פעולות שכאלה, במערכת לינוקס קיים חשבון מיוחד, ששמו root (משתמש השורש), והוא החשבון היחיד המסוגל לבצע פעולות שכאלה.
יחד עם זאת, שימוש בחשבון זה
טומן בחובו סיכון מסוים - ניתן בעזרת
הקשות שגויות ספורות למחוק את כל תכולת המחשב. על כן, מומלץ להימנע ככל
הניתן משימוש בחשבון זה, ולהשתמש בו, בזהירות רבה, רק כאשר הדבר הכרחי.
ראשית, נלמד כיצד להפוך את עצמנו
למשתמש השורש, כך שנוכל לבצע פעולות
תחזוקה. לשם כך, נפתח, כמשתמש רגיל, מסוף, ונקליד בו את הפקודה su
(קיצור ל-"Switch User" או "Super User"). כעת אנו נדרשים להקליד את ססמת
משתמש השורש, אותה קבענו במנהל ההתקנה הראשונית.
[alon@localhost alon]$ su
Password:
[root@localhost alon]#
שימו לב לסימן הסולמית (#), שבד"כ מסמן חשבון של משתמש שורש.
מרבית ההפצות כוללות כלי קונפיגורציה גרפיים לסיוע בביצוע משימות ניהול נפוצות. במערכת מנדריבה (עליה גם מבוססת "אחד") קיים מרכז הבקרה אשר מאפשר לבצע פעולות ניהול מערכת רבות, כגון הגדרת חומרה, אפשור שליטה גרפית מרחוק. מומלץ מאד לנסות להשתמש בכל הקונפיגורציה לפני שכותבים פקודות מורכבות בשורת הפקודה.
בהנחה שהחומרה שאתם משתמשים בה מזוהה על ידי ההפצה, חיבור לאינטרנט בלינוקס הוא פעולה קלה. במקרה זה, חיבור לאינטרנט הנו פשוט כמו לעקוב אחר המסכים של תכנת ההתקנה או במרכז הבקרה.
הבעיה היא במקרה של חומרה בעייתית שאינה נתמכת כראוי, וסומכת על התכנה לבצע את כל החיבור. שימו לב שחומרה כזו היא בדרך כלל פחות אמינה ואם תחליפו אותה תשפרו ביצועים בצורה נמדדת. דוגמה לחומרה כזו הם מודמי ADSL המתחברים באמצעות USB ובראשם מדומים מסוג ALE. המלצתי למי שיש ברשותו מודם כזה בהשאלה מבזק היא לגשת לחנות בזקסטור הקרובה ולבקש להחליף את המודם למודם רשת בטענה שאין לכם חיבור USB במחשב. אם אין לכם כרטיס רשת במחשב יש לרכוש בנוסף כרטיס רשת פשוט בכ- 30 ש"ח.
אם בכל זאת אתם מעדיפים להשתמש במודם USB ניתן להתקין את הדרייברים מאתר זה. את ההתקנה יש לבצע מקוד מקור והיא אינה מומלצת למשתמשים מתחילים. עם זאת, אני מקווה שבסיום הרצאה זו יהיו בידיכם את הכלים הדרושים להתקין את הדרייבר.
בעולם הלינוקס, ניתן להתקין תכנות בארבע דרכים (בסדר יורד של עדיפות):
מנהל החבילות שלכם (במנדריבה - urpmi) מאפשר להתקין תכנות באופן גרפי ופשוט ישירות מתוך שולחן העבודה. המערכת יודעת לטפל באופן אוטומטי בתלויות (dependencies) בין חבילות ולהתקין את כל החבילות הנדרשות על ידי חבילה מסוימת שבחרתם להתקין.

כדי לאפשר את מנהל החבילות יש צורך בתקליטורי התקנה או בחיבור לרשת. להגדרת התקנה מהרשת עבור מנדריבה (ו"אחד לינוקס") יש להקיש מספר פקודות בשורת הפקודה בתור root. את הפקודות האלה ניתן להשיג באמצעות Easy URPMI ו- אתר המראה של עמותת "המקור", או להשתמש בפקודות שרשומות כאן. קיים גם ממשק גרפי להגדרת המקורות.
urpmi.addmedia plf-free ftp://plf.time4t.net/pub/plf/mandrake/free/2006.0 with hdlist.cz
urpmi.addmedia plf-nonfree ftp://plf.time4t.net/pub/plf/mandrake/non-free/2006.0 with hdlist.cz
urpmi.addmedia --update updates \
http://mirror.hamakor.org.il/pub/mirrors/mandriva/official/updates/2006.0/main_updates \
with media_info/hdlist.cz
urpmi.addmedia main \
http://mirror.hamakor.org.il/pub/mirrors/mandriva/official/2006.0/i586/media/main \
with media_info/hdlist.cz
urpmi.addmedia contrib \
http://mirror.hamakor.org.il/pub/mirrors/mandriva/official/2006.0/i586/media/contrib \
with media_info/hdlist.cz
urpmi.addmedia jpackage \
http://mirror.hamakor.org.il/pub/mirrors/mandriva/official/2006.0/i586/media/jpackage \
with media_info/hdlist.cz
ניתן לבצע התקנת חבילות גם משורת הפקודה על ידי הקלדת urpmi packagename, לדוגמה:
[root@localhost alon]# urpmi locales-ru
Please insert the medium named "disc 1 Download Edition Installation CD (x86)
(cdrom1)" on device [/dev/scsi/host0/bus0/target0/lun0/cd]
Press Enter when it's done...
installing /mnt/cdrom/Mandrake/RPMS/locales-ru-2.3.1.2-8mdk.i586.rpm
Preparing... ##################################################
locales-ru ##################################################
[root@localhost alon]#
בשביל להסיר חבילה, ניתן להשתמש
בפקודה rpm -e packagename.
לדוגמה:
[root@localhost alon]# rpm -e locales-ru
[root@localhost alon]#
פקודה זאת לא תאפשר לנו להסיר חבילה, כל עוד מותקנות חבילות אשר משתמשות בחבילה זאת.
במערכות מבוססות APT (למשל, אובונטו), מנהל החבילות הגרפי נקרא synaptic.
אם לא מצאתם את החבילה שברצונכם
להתקין במנהל החבילות, לפעמים ניתן למצוא קובץ חבילה (RPM) שאינו חלק
מההפצה. שיטה זו פחות מומלצת כי היא אינה מטפלת בתלויות באופן אוטומטי.
בשביל להתקין חבילה, יש להקיש את הפקודה הבאה rpm -Uvh packagename.rpm, לדוגמה:
[root@localhost alon]# rpm -Uvh foobar-1.0-3mdk.i586.rpm
Preparing... ########################################### [100%]
1:foobar ########################################### [100%]
[root@localhost alon]#
במערכות מבוססות APT (למשל, אובונטו) הפקודה להתקנת חבילות deb היא dpkg -i file.deb.
לעתים, ניתן למצוא תכנה רק כקוד מקור, או שהגרסה שזמינה בפורמט קוד מקור עדיפה על החבילות המוכנות מראש. בד"כ קוד המקור הוא בשפות C או ++C, ארוז ודחוס לקובץ אחד גדול. במערכות לינוקס, נהוג להשתמש באחת משתי מתכונות דחיסה שונות: gzip או bzip2, כאשר קודם לכן הקבצים אוחדו לקובץ אחד בעזרת התכנה tar. תכנה זאת מכילה תמיכה מובנית בפתיחת קבצים דחוסים שכאלה. כדי לפתוח קובץ tar.gz או tgz , יש להשתמש בפקודה "tar -xzvf file.tar.gz". בשביל לפתוח קובץ tar.bz2 , יש להשתמש בפקודה "tar -xjvf file.tar.bz2".
בדרך כלל, הקובץ הדחוס מכיל מדריך בעל שם זהה, ובתוכה נמצאים כל קבצי קוד המקור והתיעוד של התכנה. בתוך המדריך בד"כ יהיה קובץ בשם README . מאוד חשוב לקרוא קובץ זה. בנוסף, לעתים קרובות יהיה קובץ בשם INSTALL , המכיל הוראות בנוגע לאופן התקנת התכנה. באופן כללי מומלץ להסתכל בכל הקבצים ששמותיהם כתובים באותיות ראשיות.
שימו לב: לא כל קבצי ה-tar בנויים נכון - חלק מהם יפרסו כך שהקבצים שבתוכם ייווצרו במדריך הנוכחי, מבלי ליצור מדריך קודם. על מנת למנוע אבדן מידע ותאונות מצערות, מומלץ להתרגל לפתוח קבצים אלה במדריך חדש וריק. ניתן להזיז את הקבצים מאוחר יותר למדריך אחר.
מרבית התכנות כיום משתמשות במערכת הנקראת autoconf, המפשטת את תהליך הקומפילציה של תכנות ללינוקס. בשביל להתקין תכנה שמנגנון הבניה שלה מבוסס על autoconf, יש לבצע את הפעולות הבאות כמשתמש רגיל:
[alon@localhost ~]$ tar -xzvf foobar-1.0.tar.gz
[alon@localhost ~]$ cd foobar-1.0
foobar-1.0/
foobar-1.0/README
foobar-1.0/Makefile
(... lots of output ...)
[alon@localhost foobar-1.0]$ ./configure
(... lots of output ...)
[alon@localhost foobar-1.0]$ make
(... lots of output ...)
[alon@localhost foobar-1.0]$ su
Password:
[root@localhost foobar-1.0]# make install
(... lots of output ...)
[root@localhost foobar-1.0]# exit
[alon@localhost foobar-1.0]$
| מדריך | תוכן |
|---|---|
| /bin |
קבצי הרצה חיוניים,
המשמשים את כל משתמשי המערכת. |
| /boot |
קבצים הנחוצים לשם
אתחול המערכת. בין קבצים אלו, יש את ליבת המערכת |
| /dev |
אוסף קבצים
וירטואליים, המשמשים כממשקים להתקני חומרה |
| /etc |
קבצי קונפיגורציה,
לכלל המערכת ולרוב התכנות (שקול ל-registry בחלונות) |
| /home |
תיקיות הבית של
המשתמשים, המכילות את הקבצים שלהם |
| /lib |
ספריות (DLL-ים)
חיוניות ומודולים (מנהלי התקנים) בשביל ליבת המערכת. |
| /mnt |
נקודות עגינה (mount)
למערכות קבצים זרות (שאינן חלק מעץ התיקיות של לינוקס). עוד על עגינה,
בהמשך. |
| /media |
נקודת
עגינה להתקנים ניתנים להסרה
(תקליטור, דיסקט וכו') |
| /opt |
קבצים ותכנות
אופציונליים (בד"כ ריק) |
| /proc |
מערכת קבצים
וירטואלית, המתפקדת כממשק לליבת המערכת ולתהליכים הרצים |
| /root |
תיקיית הבית של המשתמש
root. |
| /sbin |
קבצי הרצה חיוניים,
המשמשים בעיקר את משתמש השורש, וכן נעשה בהם שימוש בתהליך האתחול |
| /tmp |
מקום אחסון קבצים
זמניים. ניתן לכתיבה על ידי כל המשתמשים במערכת. |
| /usr |
כל התכניות והמידע
שאינם חיוניים לצורך אתחול המערכת. |
| /var |
קבצי מערכת שונים,
כדוגמת לוגים, דואר אלקטרוני ועבודות הדפסה בתור. |
המדריך usr/ גם כן מחולקת בהתאם לשימוש של הקבצים השונים המאוחסנים בה:
| מדריך | תוכן |
|---|---|
| /usr/bin |
קבצי הרצה של תכנות
מותקנות |
| /usr/doc |
דוקומנטציה ותיעוד של המערכת. מסמכים נוספים מאוחסנים ב- usr/share/doc/ |
| /usr/games |
קבצים השייכים למשחקים
שונים |
| /usr/include |
קבצי כותרות (ב-C++/C)
עבור התכנות והספריות המותקנות |
| /usr/lib |
ספריות וקבצים אחרים,
שהנם בינריים אך לא נועדו להרצה ישירה |
| /usr/local |
תכנות שהותקנו באופן
מקומי (מקוד מקור, ולא מ-RPM) |
| /usr/man |
דפי מדריך בשביל
הפקודה man
|
| /usr/sbin |
קבצי הרצה של
תכנות מותקנות, שנועדו בעיקר לשימוש משתמש השורש |
| /usr/share |
מידע של תכנות, שיכול
להיות משותף בין התכנות השונות, כגון תמונות, מסמכים וצלילים |
| /usr/src | קוד מקור. בד"כ יכיל את קוד המקור של ליבת המערכת. |
| /usr/X11R6 |
קבצים הקשורים למערכת
X Windows (הממשק הגרפי) |
ביוניקס, בניגוד לחלונות, יש רק עץ תיקיות אחד, המתחיל ממדריך השורש (/). מדריך השורש ממופה (או מעוגן - mounted) למחיצה מסוימת בדיסק. מחיצות אחרות עשויות להיות מעוגנות בתור כל מדריך קיים (אך בד"כ ריק) במערכת הקבצים. עגינה עשויה לשמש בכדי לפרוס את תיקיות המערכת לדיסקים שונים, או בשביל לגשת למערכות קבצים זרות (חלונות, דיסקט, תקליטור ואפילו רשתות שיתוף קבצים). מערכות קבצים זרות בד"כ עגונות תחת mnt/ או media/.
מקומות העגינה הרגילים של המדריכים מוגדרים בקובץ בשם etc/fstab/ (קיצור ל- file-system table). הקובץ בעל מבנה כדלהלן:
/dev/hda8 / reiserfs notail 1 1
none /dev/pts devpts mode=0620 0 0
none /dev/shm tmpfs defaults 0 0
/dev/cdrom /mnt/cdrom auto user,umask=0,exec,ro,noauto 0 0
/dev/fd0 /mnt/floppy auto user,umask=0,sync,exec,noauto 0 0
/dev/hda1 /mnt/win_c vfat defaults 0 0
/dev/hda5 /mnt/win_d vfat defaults 0 0
none /proc proc defaults 0 0
none /tmp tmpfs defaults 0 0
/dev/hda6 /usr ext3 defaults 1 2
/dev/hda7 swap swap defaults 0 0
העמודה הראשונה היא ההתקן (או המחיצה) אותה אנו מעוניינים לעגון, או none בשביל מערכות קבצים מיוחדות. dev/hda/ הוא הכונן הקשיח הראשון, והמספר הוא מספר המחיצה. בכדי לברר את רשימת המחיצות שבכונן מסוים, ניתן להשתמש בפקודה fdisk -l. בכדי לערוך את המחיצות, מומלץ להשתמש ב-parted. שימו לב: עריכת מחיצות היא פעולה מסוכנת, שעלולה להביא לאבדן כל המידע שעל המחשב. יש לבצע פעולות אלו בזהירות מרובה.
העמודה השנייה היא התיקייה אליה אנו מעוניינים לעגון את המחיצה, כלומר מהי נקודת ההתחלה של מערכת הקבצים המאוחסנת במחיצה העגונה בתוך מערכת הקבצים של כלל המערכת. swap היא נקודת עגינה וירטואלית, שמשמשת לצורך זיכרון וירטואלי.
העמודה השלישית מתארת את סוג מערכת הקבצים, או auto שמנחה את המערכת לנסות לזהות בעצמה את סוג מערכת הקבצים.
העמודה הרביעית מכילה פרמטרים לעגינה. למידע נוסף על תוכן עמודה זאת והעמודות הבאות ראו את דפי המדריך עבור mount ו-fstab.
בלינוקס, ניתן לשנות את עגינת מערכות הקבצים בזמן ריצה. יכולת זאת שימושית לצורך עגינת התקני אחסון ניתנים להסרה כגון תקליטורים ודיסקטים. שימו לב כי עליכם לבטל את עגינת מערכת הקבצים לפני שתוכלו להסיר את המדיה. אם לא תעשו כך, קיים סיכון לאבדן מידע.
מצב העגינה הנוכחי מאוחסן ב-etc/mtab/ וב- proc/mounts/, וניתן לבחון אותו על ידי הרצת mount ללא פרמטרים. הפורמט של הקבצים דומה לפורמט של etc/fstab/.
בשביל לעגון מערכת קבצים המצוינת ב- etc/fstab/ יש להקליד (כמשתמש השורש): mount mountpoint. בשביל לבטל עגינה, הקלד: umount mountpoint.לדוגמה, בשביל לגשת לתקליטור:
[root@localhost alon]# mount /mnt/cdrom # Mount the CD-ROM and lock the drive
[root@localhost alon]# ls /mnt/cdrom # List files on CD-ROM
Mandrake/
[root@localhost alon]# umount /mnt/cdrom # Unmount CD-ROM (drive unlocked)
[root@localhost alon]# eject /mnt/cdrom # Open CD-ROM tray
הערה: מרבית מנהלי ממשקי המשתמש הגרפיים יעגנו תקליטורים שהוכנסו לכונן התקליטורים באופן אוטומטי, לנוחותכם. כמו כן, בדרך כלל ניתן לבטל עגינה באמצעות הקשת מקש ימני על ההתקן ובחירת האפשרות "נתק".
להלן טבלה של פקודות שימושיות
ביוניקס ומה הפעולה שהן מבצעות. מומלץ
לקרוא את דפי המדריך המתאימים לכל פקודה לפני שימוש בה.
| פקודה | שימוש |
|---|---|
| cd |
מחליפה את מדריך העבודה |
| pwd |
מציגה את מדריך העבודה
הנוכחית |
| ls |
מציגה את התוכן של
מדריך |
| cp |
מעתיקה קובץ או מדריך |
| mv |
מזיזה קובץ או מדריך |
| rm |
מוחקת קובץ או מדריך |
| mkdir |
יוצרת מדריך |
| rmdir |
מסירה מדריך |
| grep |
מוצאת קבצים המכילים
טקסט מסוים או תבנית מסוימת |
| ps |
מציגה את התהליכים
הרצים (התכניות הרצות) |
| top |
מציגה את ניצול במעבד
באופן אינטראקטיבי |
| kill |
מפסיקה ("הורג") תהליך
רץ, או שולח לו איתות |
| df |
מראה את שטח הדיסק
המנוצל והזמין |
| du |
מראה את ניצול הדיסק
של מדריך מסוים ותת המדריכים שלו |
| which |
מאתרת תכנית תוך
שימוש במסלול (path) |
| locate |
מוצאת קבצים בכונן
הקשיח של המחשב |
| less | לצפייה בקבצי טקסט |
במערכות יוניקס, לכל קובץ יש משתמש וקבוצה שמוגדרים כבעלים של הקובץ. בד"כ הבעלים הוא המשתמש שיצר את הקובץ והקבוצה שאליה הוא משתייך. המשתמש שהוא הבעלים של הקובץ, וכן משתמש בשורש, יכולים לשנות את ההרשאות של הקובץ, ולציין מה מותר למשתמשים לעשות עם הקובץ.
ניתן להציג את ההרשאות של קובץ
בעזרת ls
-l. הפלט נראה כך:
-rwxr-xr-x 1 root root 579384 Feb 25 2002 /bin/bash
-r-------- 1 root root 1594 Aug 25 23:09 /etc/shadow
drwxr-xr-x 18 root root 4096 Sep 1 14:41 /usr
drwx--x--x 212 alon alon 28816 Sep 19 00:47 /home/alon/
העמודה הראשונה מתארת את ההרשאות של הקובץ, ואילו העמודות הרביעית והחמישית מפרטות את המשתמש והקבוצה להן שייך הקובץ.
האות הראשונה בהרשאות מתארת את סוג הקובץ: "-" מסמן קובץ רגיל, "d" מסמן מדריך. שלוש האותיות הבאות מסמנות את הרשאות הקריאה (r), כתיבה (w) והרצה (x) של המשתמש שהוא בעל הקובץ. שלוש האותיות שאחריהן מפרטות את ההרשאות למשתמשים השייכים לקבוצה שיש לה את הבעלות על הקובץ, ושלוש האותיות האחרונות מסמנות את ההרשאות שיש לשאר המשתמשים במערכת. שימו לב שהרשאות הרצה לגבי מדריך מסמנות למעשה הרשאה להיכנס למדריך ולמדריכי המשנה שלו.
ניתן לשנות את הרשאות של קובץ או
מדריך בעזרת הפקודה chmod,
וניתן לשנות בעלות בעזרת הפקודה chown
. ניתן לקבוע את ברירת
המחדל של ההרשאות עבור קבצים חדשים בעזרת הפקודה umask.
למידע
נוסף על פקודות אלה, ראו את דפי המדריך המתאימים (או בואו להרצאה עליהם).
עיקר הפרטים - בהרצאה הבאה.
לעתים אנו רוצים לעשות דברים מסוימים, ואיננו יודעים כיצד לעשותם. מה עלינו לעשות אז?
מומחי לינוקס בד"כ שמחים לעזור למתחילים. יחד עם זאת, המומחים לא יהיו מסוגלים לענות על שאלתך ועלולים להתרגז עליך אלא אם תעקבי אחרי העקרונות הבאים: