Linux є основою сучасної веб-інфраструктури. Більшість серверів у світі працюють на Linux, тому знання базових команд є необхідністю для кожного веб-розробника. У цій статті ми розглянемо найважливіші команди, які ви будете використовувати щодня.
Навігація файловою системою
Перш за все, вам потрібно навчитися переміщуватися по файловій системі. Ось основні команди:
# Показати поточну директорію
pwd
# Перейти в директорію
cd /var/www/html
# Перейти на рівень вище
cd ..
# Перейти в домашню директорію
cd ~
# Показати вміст директорії
ls -la
Порада від досвідченого адміна: використовуйте Tab для автодоповнення шляхів - це економить багато часу та запобігає помилкам.
— Олексій, DevOps інженер з 10-річним досвідом
Робота з файлами та директоріями
Створення, копіювання, переміщення та видалення файлів - базові операції, які ви виконуватимете постійно:
# Створити директорію
mkdir my_project
mkdir -p path/to/nested/directory
# Створити файл
touch index.php
# Копіювати файл
cp source.txt destination.txt
cp -r source_dir/ destination_dir/
# Перемістити/перейменувати
mv old_name.txt new_name.txt
# Видалити файл
rm file.txt
# Видалити директорію з вмістом
rm -rf directory/
rm -rf видаляє файли безповоротно! Завжди двічі перевіряйте шлях перед виконанням.
Перегляд вмісту файлів
# Вивести весь файл
cat config.php
# Перші 20 рядків
head -20 access.log
# Останні 50 рядків
tail -50 error.log
# Слідкувати за файлом в реальному часі
tail -f /var/log/nginx/access.log
# Посторінковий перегляд
less large_file.log
Права доступу
Розуміння прав доступу критично важливе для безпеки вашого сервера:
# Змінити власника файлу
chown www-data:www-data file.php
# Рекурсивно змінити власника
chown -R www-data:www-data /var/www/html
# Встановити права доступу
chmod 755 script.sh
chmod 644 config.php
# Рекурсивно для директорій
find /var/www -type d -exec chmod 755 {} \;
find /var/www -type f -exec chmod 644 {} \;
Пошук файлів та тексту
# Знайти файл за назвою
find /var/www -name "*.php"
# Знайти файли, змінені за останню годину
find . -mmin -60
# Пошук тексту в файлах
grep -r "function getProducts" /var/www/html
# Пошук з номерами рядків
grep -rn "error" /var/log/
Управління процесами
Моніторинг та управління процесами допомагає підтримувати здоров'я сервера:
# Показати всі процеси
ps aux
# Інтерактивний монітор процесів
htop
# Знайти процес за назвою
ps aux | grep nginx
# Завершити процес
kill 1234
kill -9 1234 # примусово
# Перезапустити сервіс
sudo systemctl restart nginx
sudo systemctl restart php8.2-fpm
Мережеві команди
# Перевірити з'єднання
ping google.com
# Перевірити відкриті порти
netstat -tulpn
ss -tulpn
# Завантажити файл
wget https://example.com/file.zip
curl -O https://example.com/file.zip
# Перевірити DNS
nslookup example.com
dig example.com
Корисні комбінації
Потужність Linux розкривається в комбінуванні команд:
# Знайти великі файли
du -h /var/www | sort -rh | head -20
# Порахувати рядки коду в проекті
find . -name "*.php" | xargs wc -l
# Знайти та замінити текст у всіх файлах
find . -name "*.php" -exec sed -i 's/old_text/new_text/g' {} \;
# Архівування проекту
tar -czvf backup.tar.gz /var/www/html
# Моніторинг використання диску
df -h
du -sh /var/www/*
Командний рядок може здаватися складним на початку, але з практикою він стане вашим найпотужнішим інструментом. Почніть з базових команд і поступово розширюйте свій арсенал.
— Linus Torvalds
Висновок
Ці команди покривають 90% повсякденних задач веб-розробника. Рекомендую створити собі шпаргалку та практикуватися щодня. З часом ці команди стануть другою натурою, і ви зможете виконувати складні операції за лічені секунди.