لینوکس سالهاست که به عنوان محبوبترین سیستمعامل میان برنامهنویسان شناخته میشود. از توسعه وب و اپلیکیشنهای موبایل گرفته تا هوش مصنوعی، علم داده، DevOps و امنیت، تقریبا در هر حوزهای میتوان ردپای لینوکس را پیدا کرد. اما پس از نصب یک توزیع لینوکسی، سیستم هنوز برای برنامهنویسی کاملا آماده نیست و بهتر است چند مرحله مهم را انجام دهید تا محیط توسعهای پایدار، امن و حرفهای داشته باشید.
در این مقاله قدمبهقدم بررسی میکنیم که بعد از نصب لینوکس چه کارهایی باید انجام دهید و دستورات مورد نیاز برای توزیعهای محبوب مانند Debian، Ubuntu، Fedora، Arch Linux و OpenSUSE را نیز ارائه خواهیم کرد.
قدم اول: بهروزرسانی سیستم
اولین کاری که باید بعد از نصب لینوکس انجام دهید، بهروزرسانی مخازن نرمافزاری و بستههای نصبشده است. این کار باعث میشود آخرین وصلههای امنیتی، رفع باگها و نسخههای جدید نرمافزارها را دریافت کنید.
Ubuntu و Debian
sudo apt update
sudo apt upgrade -y
برای بهروزرسانی کامل سیستم:
sudo apt full-upgrade -y
Fedora
sudo dnf upgrade --refresh -y
Arch Linux
sudo pacman -Syu
OpenSUSE
sudo zypper refresh
sudo zypper update
پس از پایان بهروزرسانی، بهتر است سیستم را یک بار راهاندازی مجدد کنید.
قدم دوم: نصب ابزارهای پایه توسعه
بسیاری از نرمافزارها هنگام نصب نیاز دارند که کدهایشان روی سیستم شما کامپایل شوند. به همین دلیل بهتر است ابزارهای توسعه را از همان ابتدا نصب کنید.
Ubuntu و Debian
sudo apt install build-essential -y
این بسته شامل مواردی مانند:
- GCC
- G++
- Make
- libc-dev
است.
Fedora
sudo dnf groupinstall "Development Tools" -y
Arch Linux
sudo pacman -S base-devel
OpenSUSE
sudo zypper install -t pattern devel_basis
قدم سوم: نصب Git
تقریبا هیچ برنامهنویسی بدون Git نمیتواند کار کند. Git ابزار اصلی مدیریت نسخه و همکاری روی پروژههاست.
Ubuntu و Debian
sudo apt install git -y
Fedora
sudo dnf install git -y
Arch Linux
sudo pacman -S git
OpenSUSE
sudo zypper install git
پس از نصب:
git config --global user.name "Your Name"
git config --global user.email "your@email.com"
تنظیمات را بررسی کنید:
git config --list
قدم چهارم: نصب SSH
SSH برای اتصال به سرورها و همچنین ارتباط با GitHub و GitLab ضروری است.
بررسی کنید که نصب باشد:
ssh -V
در صورت نیاز:
Ubuntu و Debian
sudo apt install openssh-client openssh-server -y
Fedora
sudo dnf install openssh-server -y
Arch Linux
sudo pacman -S openssh
ساخت کلید SSH:
ssh-keygen -t ed۲۵۵۱۹ -C "your@email.com"
نمایش کلید عمومی:
cat ~/.ssh/id_ed۲۵۵۱۹.pub
قدم پنجم: نصب زبانهای برنامهنویسی مورد نیاز
بسته به حوزه کاری شما، ممکن است به زبانهای مختلفی نیاز داشته باشید.
Python
Ubuntu و Debian
sudo apt install python۳ python۳-pip python۳-venv -y
Fedora
sudo dnf install python۳ python۳-pip -y
Arch Linux
sudo pacman -S python python-pip
بررسی نسخه:
python۳ --version
Node.js
Ubuntu و Debian
sudo apt install nodejs npm -y
Fedora
sudo dnf install nodejs npm -y
Arch Linux
sudo pacman -S nodejs npm
بررسی نسخه:
node -v
npm -v
Rust
curl --proto '=https' --tlsv۱.۲ -sSf https://sh.rustup.rs | sh
Go
Ubuntu و Debian
sudo apt install golang-go -y
Fedora
sudo dnf install golang -y
Arch Linux
sudo pacman -S go
قدم ششم: نصب ویرایشگر یا IDE
بدون یک ویرایشگر مناسب، تجربه توسعه چندان دلچسب نخواهد بود.
Visual Studio Code
Ubuntu و Debian
sudo snap install code --classic
Fedora
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
سپس مخزن VS Code را اضافه کرده و نصب کنید.
Neovim
Ubuntu و Debian
sudo apt install neovim -y
Fedora
sudo dnf install neovim -y
Arch Linux
sudo pacman -S neovim
Vim
sudo apt install vim
یا:
sudo dnf install vim
قدم هفتم: نصب Docker
داکر یکی از مهمترین ابزارهای توسعه مدرن است. با استفاده از آن میتوانید محیطهای توسعه را ایزوله و قابل انتقال نگه دارید.
Ubuntu و Debian
sudo apt install docker.io -y
فعالسازی سرویس:
sudo systemctl enable docker
sudo systemctl start docker
اضافه کردن کاربر به گروه Docker:
sudo usermod -aG docker $USER
بررسی نصب:
docker --version
قدم هشتم: نصب ابزارهای کاربردی ترمینال
برخی ابزارها کار با ترمینال را بسیار راحتتر میکنند.
Curl
sudo apt install curl
Wget
sudo apt install wget
HTOP
sudo apt install htop
Tree
sudo apt install tree
Tmux
sudo apt install tmux
Zsh
sudo apt install zsh
قدم نهم: تنظیم فایروال
حتی اگر سیستم شما فقط برای برنامهنویسی استفاده میشود، بهتر است فایروال فعال باشد.
Ubuntu و Debian
sudo apt install ufw
فعالسازی:
sudo ufw enable
بررسی وضعیت:
sudo ufw status
Fedora
فدورا به صورت پیشفرض از Firewalld استفاده میکند:
sudo systemctl status firewalld
قدم دهم: نصب ابزارهای فشردهسازی
در توسعه نرمافزار دائما با فایلهای فشرده سروکار خواهید داشت.
sudo apt install zip unzip rar unrar p۷zip-full
در فدورا:
sudo dnf install zip unzip p۷zip
قدم یازدهم: ساخت پوشههای کاری
بهتر است از همان ابتدا ساختار مشخصی برای پروژههای خود داشته باشید.
mkdir ~/Projects
mkdir ~/Projects/Python
mkdir ~/Projects/Web
mkdir ~/Projects/Learning
این کار باعث میشود پروژهها و فایلهای آموزشی شما منظم باقی بمانند.
قدم دوازدهم: نصب فونتهای برنامهنویسی
فونت مناسب میتواند خوانایی کد را به شکل محسوسی افزایش دهد.
برخی از محبوبترین فونتها عبارتاند از:
- JetBrains Mono
- Fira Code
- Cascadia Code
- Hack
- Source Code Pro
اگر از VS Code استفاده میکنید، JetBrains Mono و Fira Code انتخابهای فوقالعادهای هستند.
قدم سیزدهم: نصب ابزارهای حوزه تخصصی
در این مرحله بهتر است ابزارهای مرتبط با حوزه کاری خود را نصب کنید.
توسعه وب
npm
nodejs
docker
postgresql
nginx
علم داده و هوش مصنوعی
python
jupyter
numpy
pandas
matplotlib
scikit-learn
DevOps
docker
kubectl
terraform
ansible
امنیت
nmap
wireshark
burpsuite
یک چکلیست سریع برای برنامهنویسان
بعد از نصب لینوکس بهتر است موارد زیر را انجام داده باشید:
- آپدیت و آپگرید سیستم
- نصب ابزارهای توسعه
- نصب Git
- تنظیم SSH
- نصب زبانهای برنامهنویسی مورد نیاز
- نصب VS Code یا Neovim
- نصب Docker
- نصب ابزارهای ترمینال
- فعالسازی فایروال
- نصب ابزارهای فشردهسازی
- ایجاد ساختار پوشههای پروژه
- نصب فونتهای برنامهنویسی
سخن پایانی
یکی از مزیتهای بزرگ لینوکس این است که تقریبا تمام ابزارهای مورد نیاز برنامهنویسان به راحتی از طریق مدیر بسته توزیع قابل نصب هستند. اگر پس از نصب سیستمعامل چند دقیقه زمان برای پیکربندی صحیح محیط توسعه خود صرف کنید، در ادامه مسیر توسعه نرمافزار با مشکلات بسیار کمتری مواجه خواهید شد.
فرقی نمیکند توسعهدهنده پایتون باشید، برنامهنویس وب، متخصص DevOps یا فعال حوزه هوش مصنوعی؛ داشتن یک محیط لینوکسی تمیز، بهروز و مجهز میتواند بهرهوری شما را به شکل چشمگیری افزایش دهد و تجربه برنامهنویسی لذتبخشتری برایتان رقم بزند.
هشتگها: #لینوکس #برنامه_نویسی