π₯οΈ Bash ΡΠΊΡΠΈΠΏΡ Π·Π° Π½Π°ΡΠ°Π»Π΅Π½ setup ΡΠ»Π΅Π΄ ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΡ Π½Π° Ubuntu Server

След инсталиране на нов Ubuntu Server, често следва серия от повтарящи се ръчни действия – инсталиране на инструменти, настройка на .vimrc
и др.
Този скрипт автоматизира основните стъпки и подготвя сървъра за работа, включително поддръжка на кирилица във Vim.
🎯 Какво прави скриптът:
- Инсталира полезни инструменти (
vim
,curl
,git
,wget
,htop
,nmap
, и др.) - Създава
.vimrc
файл с поддръжка на UTF-8 и кирилица (cp1251, koi8-r) - Активира подсветка и удобна индентация за писане на код
📜 Скрипт: postinstall.sh
#!/bin/bash
echo "Настройвам часовата зона..."
sudo timedatectl set-timezone "Europe/Sofia"
echo "Инсталирам полезни инструменти..."
sudo apt update
sudo apt install -y vim curl git wget pwgen htop nmap whois net-tools
echo "Създавам .vimrc с настройки за кирилица и кодиране..."
cat <<EOF > ~/.vimrc
set encoding=utf-8
set fileencoding=utf-8
set fileencodings=utf-8,cp1251,koi8-r
syntax on
set autoindent
set tabstop=4
set shiftwidth=4
set expandtab
EOF
echo "Готово! Системата е подготвена за работа."
🛠️ Как да го използвам?
- Създайте файл на сървъра:
nano postinstall.sh
2. Поставете съдържанието на скрипта.
3. Направете го изпълним:
chmod +x postinstall.sh
4. Стартирайте:
./postinstall.sh
💬 Заключение
Този скрипт е чудесна отправна точка за всеки нов Ubuntu Server. Можете лесно да го разширите с SSH настройки, hostname, timezone и други персонални предпочитания.
Ето някои предложения:
1. Системни инструменти и утилити
tmux
илиscreen
– за сесии, които продължават да работят в background.iotop
– мониторинг на дисков I/O.iftop
– мониторинг на мрежовия трафик.dstat
– комбиниран мониторинг на системата.unzip
/zip
– работа с архиви.tree
– показва файловата структура в дървовиден формат.ncdu
– анализ на дисковото пространство.rsync
– ефективно копиране на файлове.jq
– работа с JSON данни от командния ред.neofetch
– показва основна информация за системата (по-красив изглед).
2. Мрежови инструменти
iputils-ping
–ping
команда (понякога не е инсталирана по подразбиране).dnsutils
– съдържаdig
,nslookup
и други DNS инструменти.traceroute
– проследяване на мрежовия път.mtr-tiny
– комбинация отping
иtraceroute
.telnet
– за тестване на портове (старо, но полезно).tcpdump
– мрежов анализатор.ncat
илиsocat
– напреднали мрежови инструменти.
3. Сигурност
fail2ban
– защита срещу brute force атаки.ufw
– Uncomplicated Firewall (лесен firewall).openssh-server
– ако не е инсталиран по подразбиране.sudo
– проверете дали е конфигуриран правилно.logwatch
– анализ на логове.rkhunter
/lynis
– инструменти за проверка на сигурността.
4. Системен мониторинг и логване
sysstat
– събира статистики за системата (sar
,iostat
и др.).glances
– мониторинг на системата (по-модерен алтернативен наhtop
).prometheus-node-exporter
– ако използвате Prometheus за мониторинг.
5. Разработка и автоматизация
python3
/python3-pip
– ако ще използвате Python скриптове.ansible
– за конфигурационен мениджмънт (ако ще го използвате за автоматизация).docker.io
– ако ще използвате Docker контейнери.build-essential
– ако ще компилирате програми (съдържаgcc
,make
и др.).
6. Други полезни пакети
mlocate
– за бързо търсене на файлове (updatedb
+locate
).bash-completion
– автоматично допълване в терминала.zsh
+oh-my-zsh
– ако предпочитате Zsh вместо Bash.ack
/silversearcher-ag
– бързо търсене в текстови файлове.
Благодарим ви за прочитането на статията! Ако намерихте информацията за полезна, можете да дарите посредством бутоните по-долу:
Donate ☕️ Дарете с PayPalDonate 💳 Дарете с Revolut