אני מלמד הכרות עם שפת Bash באופן פרטי למי שמעוניין להקים סביבת שרתים לאחסון לינוקס של אתר ווב (website). אינני מכיר עבודה עם Bash בהקשרים אחרים ואינני האיש הנכון ללמד אותם.
אני מלמד עבודה עם Bash אך ורק לצורך הקמת סביבת שרתים מסוג LAMPP שזה ראשי תיבות של:
Linux, Apache, MySQL, PHP, PHPMyAdmin
אלו הן חמישה תוכנות שיחדיו מהוות סביבת שרתים כזו, בדרך כלל על כחלק מתוכנית אחסון אתרים מסוג VPS שזה ראשי תיבות של Virtual Private Server.
אני מדגיש שההוראה שלי ממוקדת לגבי הקמת סביבת שרתים לאחסון לינוקס מסוג LAMPP בלבד ואין לי ניסיון בעבודה עם Bash בנושאים אחרים אז מי שצריך מורה פרטי ל Bash שעובד כ SysAdmin או DevOp או Information Security Advisor אני כבר אומר שאינני האיש המתאים לכך.
למה חשוב להכיר את Bash לצורך הקמת סביבת שרתים מסוג LAMP
עבודה עם Bash חשובה ביותר בהקמת סביבת אחסון אתרים סטנדרטית כי היא השפה שאיתה מתפעלים מחשב מרוחק (מחשב ענן) או יחידת אחסון המותקנת עליו.
שכירת מחשב מרוחק אחד ויחיד רק עבורנו (אחסון dedicated) זה דבר יקר מאד אז ברוב המקרים מה שנשכור זה למעשה מחיצה ספציפית שלנו במחשב מרוחק שאנחנו חולקים עם עוד משתמשים.
אני מלמד עבודה עם מערכות מבוססות Debian, בעיקר Ubuntu ואפשר לקחת ידע שנרכש בהקשר זה לגבי מערכות מבוססות CentOS.
אז מה לומדים?
נושאי יסוד בלינוקס, פקודות יסוד בשפת Bash ופקודות יסודיות בתוכנות נלוות.
- digital ocean droplet
- ssh public and private key creation
- ssh client
- kernel, shell, utility
- cd
- cd ~
- apt update
- apt install
- apt upgrade
- sshguard
- ufw
- unattended-upgrades
- tree
- zip
- unzip
- curl
- wget
- git
- at
- apt install lamp-server^
- composer
- heredocument
- Background variables and functions for future comfortability
- read
- set variable
domain
- set variable
web_application_root_dir
- set variable
web_application_dir
- winscp OR filezilla
- phpmyadmin
- softlink
- virtual host
- certbot encryption certification
- composer
- unset domain variable
- cron
- manual backup
- and more.