{"id":550,"date":"2026-04-05T10:37:24","date_gmt":"2026-04-05T07:37:24","guid":{"rendered":"https:\/\/m4.ist\/index.php\/2026\/04\/05\/mini-pc-homelab-sunucu-eski-bir\/"},"modified":"2026-04-05T10:37:24","modified_gmt":"2026-04-05T07:37:24","slug":"mini-pc-homelab-sunucu-eski-bir","status":"publish","type":"post","link":"https:\/\/m4.ist\/index.php\/2026\/04\/05\/mini-pc-homelab-sunucu-eski-bir\/","title":{"rendered":"mini PC homelab sunucu: 7 Ad\u0131mda M\u00fckemmel Kurulum"},"content":{"rendered":"<h1>Eski Mini PC\u2019nizi Sessiz ve G\u00fcvenli Bir Homelab Sunucusuna D\u00f6n\u00fc\u015ft\u00fcrme Rehberi<\/h1>\n<p>Mini PC\u2019nizi ev lab\u0131n\u0131z\u0131n bel kemi\u011fine d\u00f6n\u00fc\u015ft\u00fcrmek, hem b\u00fct\u00e7enizi hem de veri kontrol\u00fcn\u00fcz\u00fc elinize al\u0131r. Bu rehber, donan\u0131m\u0131n s\u0131n\u0131rlar\u0131n\u0131 zorlayarak d\u00fc\u015f\u00fck g\u00fc\u00e7 t\u00fcketimi, d\u00fc\u015f\u00fck ses seviyesi ve g\u00fcvenlik odakl\u0131 bir sunucu ortam\u0131 kurman\u0131z\u0131 sa\u011flar. Ama\u00e7, sadece \u201cnas\u0131l\u201d de\u011fil, \u201cneden\u201d sorular\u0131na da yan\u0131t vermek: eski bir mini PC, yedekleme, medya sunucusu, devOps denemeleri ve a\u011f testleri i\u00e7in ideal bir platform olabilir.<\/p>\n<p>Okuyucu profili: Temel sistem y\u00f6netimi ve Linux komut sat\u0131r\u0131 bilgisine sahip bir teknik kullan\u0131c\u0131. Bilgisayar donan\u0131m\u0131n\u0131 kurma, i\u015fletim sistemi kurulumunu y\u00f6netme ve temel a\u011f yap\u0131land\u0131rmas\u0131 yapma yetkinli\u011fine sahip olmal\u0131. \u00d6rnek olarak, bir terminalde <code>ssh<\/code> ile ba\u011flant\u0131 kurmak, <code>systemctl<\/code> ile servis y\u00f6netimi yapmak ve <code>rsync<\/code> ile veri senkronizasyonu sa\u011flamak beklenen becerilerdir. \u00c7ok detayl\u0131 donan\u0131m tasar\u0131m\u0131 veya kodlama becerisi gerekmez; amac\u0131m\u0131z, donan\u0131m\u0131n potansiyelini g\u00fcvenli bir ortamda kullanmakt\u0131r.<\/p>\n<h2>Neden \u00d6nemli?<\/h2>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" alt=\"Neden \u00d6nemli?\" loading=\"lazy\" src=\"https:\/\/m4.ist\/wp-content\/uploads\/2026\/04\/Qwen-Image_00135_.png\"\/><\/figure>\n<p>Mini PC\u2019ler d\u00fc\u015f\u00fck g\u00fc\u00e7 t\u00fcketimiyle ev ortam\u0131nda enerji tasarrufu sa\u011flar. Ortalama 20W g\u00fc\u00e7 t\u00fcketimi, masa\u00fcst\u00fc PC\u2019lerin \u00fc\u00e7 kat\u0131na d\u00fc\u015fer. Bu fark, ayl\u0131k faturalarda y\u00fczlerce lira tasarruf olu\u015fturur. Ayn\u0131 zamanda 15 cm\u00b2\u2019lik bir alanda konumlanabilir, bu da evdeki kabin veya raf bo\u015fluklar\u0131n\u0131 verimli kullanman\u0131z\u0131 sa\u011flar. Sessiz \u00e7al\u0131\u015fma, evden \u00e7al\u0131\u015fanlar i\u00e7in g\u00fcr\u00fclt\u00fc kirlili\u011fini azalt\u0131r; fanlar 30 dB alt\u0131ndad\u0131r. So\u011futma fanlar\u0131 dinamik olarak h\u0131zland\u0131r\u0131ld\u0131\u011f\u0131nda bile bile\u015fen \u00f6mr\u00fc uzar. AC kayna\u011f\u0131 ve UPS kombinasyonu, ani kesintilere kar\u015f\u0131 veriyi korur.<\/p>\n<p>En az ayr\u0131cal\u0131k ilkesi, yaln\u0131zca gerekli hizmetlere eri\u015fim tan\u0131r. SSH ba\u011flant\u0131lar\u0131 i\u00e7in iki fakt\u00f6rl\u00fc kimlik do\u011frulama zorunlu k\u0131l\u0131n\u0131r. Kullan\u0131c\u0131 hesaplar\u0131 i\u00e7in sudo yetkileri minimal tutularak k\u00f6t\u00fc ama\u00e7l\u0131 eylemler engellenir. Sistem loglar\u0131 merkezi bir syslog sunucusuna y\u00f6nlendirilir, b\u00f6ylece izlenebilirlik artar. Yedekleme stratejileri, g\u00fcnl\u00fck, haftal\u0131k ve ayl\u0131k snapshot&#8217;larla veri b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc garanti eder. Rollback senaryolar\u0131, paket g\u00fcncellemeleri \u00f6ncesinde snapshot alarak geri d\u00f6n\u00fc\u015f\u00fc m\u00fcmk\u00fcn k\u0131lar. Uygulama ve i\u015fletim sistemi g\u00fcncellemeleri, test ortam\u0131nda do\u011fruland\u0131ktan sonra canl\u0131ya al\u0131n\u0131r.<\/p>\n<h2>Gereksinimler<\/h2>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" alt=\"Gereksinimler\" loading=\"lazy\" src=\"https:\/\/m4.ist\/wp-content\/uploads\/2026\/04\/Qwen-Image_00137_.png\"\/><\/figure>\n<h3>Donan\u0131m Gereksinimleri<\/h3>\n<p>Mini PC\u2019nin ev sunucusu olarak kal\u0131c\u0131l\u0131\u011f\u0131n\u0131 sa\u011flamak i\u00e7in temel donan\u0131m parametreleri belirlenmelidir. \u0130\u015flemci: 2\u2011\u00e7ekirdek 1.5\u202fGHz \u00fcst\u00fc, 4 \u00e7ekirdek 1.2\u202fGHz \u00f6nerilir. Bellek: 4\u202fGB minimum, 8\u202fGB performans i\u00e7in tercih. Depolama: SSD (256\u202fGB) ana i\u015fletim sistemini ta\u015f\u0131r; ikinci SSD veya NAS 2\u202fTB, dosya payla\u015f\u0131m\u0131 ve snapshot i\u00e7in kullan\u0131l\u0131r. So\u011futma: H\u0131zl\u0131 fanl\u0131 veya passif so\u011futucu, g\u00fcr\u00fclt\u00fcy\u00fc d\u00fc\u015f\u00fck tutmal\u0131. G\u00fc\u00e7 kayna\u011f\u0131: 300\u202fW\u2011350\u202fW 80+ Bronze sertifikal\u0131, d\u00fc\u015f\u00fck g\u00fc\u00e7 t\u00fcketimine uygun. Mini PC\u2019nin fiziksel ortam\u0131, s\u0131cakl\u0131k ve nem tolerans\u0131 sa\u011flamak i\u00e7in kapal\u0131 kasa ve uygun hava ak\u0131\u015f\u0131 gerektirir.<\/p>\n<h3>Yaz\u0131l\u0131m Gereksinimleri<\/h3>\n<p>\u0130\u015fletim Sistemi: Debian\u2011tabanl\u0131 da\u011f\u0131t\u0131mlar (Ubuntu Server, Debian) stabil ve topluluk deste\u011fi g\u00fc\u00e7l\u00fc. Konteyner: Docker, uygulama izolelemesine izin verirken y\u00f6netimi basitle\u015ftirir. Y\u00f6netim Ara\u00e7lar\u0131: Proxmox VE veya TrueNAS Core, sanalla\u015ft\u0131rma ve depolama y\u00f6netimini tek pane \u00fczerinden sunar. A\u011f: DHCP veya statik IP atanarak, subnet ve gateway\u2019in do\u011fru yap\u0131land\u0131r\u0131lmas\u0131 gerekir. Zaman senkronizasyonu: NTP, sunucu saatini do\u011fru tutar. Kullan\u0131c\u0131 y\u00f6netimi: sudoers dosyas\u0131 \u201cen az ayr\u0131cal\u0131k\u201d prensibiyle yap\u0131land\u0131r\u0131lmal\u0131. G\u00fcnl\u00fckleme: syslog veya journald ile merkezi loglama, izlenebilirlik sa\u011flar.<\/p>\n<h3>G\u00fcvenlik \u00d6nlemleri<\/h3>\n<p>G\u00fcncellemeler: Sistem ve paket g\u00fcncellemeleri, test ortam\u0131nda do\u011frulan\u0131r; canl\u0131ya al\u0131m, \u201capt\u2011upgrade\u201d ile yedek snapshot sonras\u0131 yap\u0131l\u0131r. Firewall: UFW veya iptables ile yaln\u0131zca gerekli portlar (22, 443, 80\/443) a\u00e7\u0131l\u0131r. G\u00fc\u00e7 y\u00f6netimi: UPS veya UPS\u2011s\u0131z durumda \u201csmart\u2011shutdown\u201d scripti, anl\u0131k kapan\u0131\u015fta veri b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc korur. Backup: ZFS veya rsnapshot ile g\u00fcnl\u00fck, haftal\u0131k ve ayl\u0131k snapshot\u2019lar olu\u015fturulur. Yedekler, ayr\u0131 bir SSD veya bulut depolama (Backblaze B2, Wasabi) \u00fczerinde tutulur. Rollback: Paket g\u00fcncellemesi \u00f6ncesinde snapshot al\u0131r; sorun \u00e7\u0131karsa \u201czfs rollback\u201d veya \u201cdocker compose down\/ up\u201d ile eski s\u00fcr\u00fcme d\u00f6n\u00fcl\u00fcr.<\/p>\n<p><strong>Ek G\u00fcvenlik Katmanlar\u0131:<\/strong><\/p>\n<ul>\n<li>Fail2ban ile SSH brute\u2011force korumas\u0131.<\/li>\n<li>SSH\u2019de root login\u2019i devre d\u0131\u015f\u0131 b\u0131rakma ve \u201cPermitRootLogin no\u201d.<\/li>\n<li>Uygulama bazl\u0131 ACL\u2019ler ile dosya eri\u015fim k\u0131s\u0131tlamas\u0131.<\/li>\n<li>HTTPS i\u00e7in Let\u2019s Encrypt otomatik sertifika yenileme.<\/li>\n<li>RDS (Raspberry Pi) veya NAS \u00fczerinden veri \u015fifreleme.<\/li>\n<\/ul>\n<h2>Ad\u0131m\u2011Ad\u0131m Uygulama<\/h2>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" alt=\"Ad\u0131m\u2011Ad\u0131m Uygulama\" loading=\"lazy\" src=\"https:\/\/m4.ist\/wp-content\/uploads\/2026\/04\/Qwen-Image_00139_.png\"\/><\/figure>\n<h3>1. Kasa ve Donan\u0131m Kurulumu<\/h3>\n<p>Mini PC\u2019yi sessiz \u00e7al\u0131\u015ft\u0131rmak i\u00e7in d\u00fc\u015f\u00fck g\u00fcr\u00fclt\u00fcl\u00fc bir kasa se\u00e7in. Fan mod\u00fcllerini \u201cquiet mode\u201da al\u0131n ve gerekirse \u201csilent fan\u201d ekleyin. 2\u2011bayl\u0131 SSD s\u00fcr\u00fcc\u00fcs\u00fc (NVMe tercihen) sistem diskine, 4\u2011bayl\u0131 SATA SSD ise veri depolama i\u00e7in ayr\u0131lmal\u0131. RAM\u2019i 8\u202fGB DDR4 ile s\u0131n\u0131rland\u0131r\u0131n; 16\u202fGB ihtiyac\u0131 yoksa g\u00fc\u00e7 t\u00fcketimini d\u00fc\u015f\u00fcr\u00fcr.<\/p>\n<p>Donan\u0131m kurulumu s\u0131ras\u0131nda BIOS\/UEFI\u2019de \u015fu ayarlar\u0131 yap\u0131n:<\/p>\n<ol>\n<li><strong>Boot Mode:<\/strong> UEFI.<\/li>\n<li><strong>Secure Boot:<\/strong> Devre d\u0131\u015f\u0131 b\u0131rak\u0131n (Linux \u00e7ekirde\u011fi i\u00e7in).<\/li>\n<li><strong>NVMe Mode:<\/strong> AHCI.<\/li>\n<li><strong>Fan Speed Control:<\/strong> \u201cQuiet\u201d veya \u201cCustom\u201d olarak \u201cPWM 30%\u201d de\u011ferini kullan\u0131n.<\/li>\n<li><strong>Power Management:<\/strong> \u201cIntel SpeedStep\u201d veya \u201cAMD Cool\u2019n\u2019Quiet\u201d etkin.<\/li>\n<\/ol>\n<h3>2. \u0130\u015fletim Sistemi Kurulumu<\/h3>\n<p>Ubuntu Server 24.04 LTS\u2019yi <code>dd<\/code> ile USB\u2019ye yaz\u0131n. Boot s\u0131ras\u0131 <code>bootctl set-default ubuntu<\/code> komutuyla ayarlan\u0131r. Kurulum s\u0131ras\u0131nda \u201cunattended upgrades\u201d etkinle\u015ftirilmeli. <code>sudo apt update &amp;&amp; sudo apt full-upgrade -y<\/code> komutu ile sistem g\u00fcncel kal\u0131r.<\/p>\n<p>\u00d6rnek <code>preseed.cfg<\/code> dosyas\u0131 (kullan\u0131c\u0131n\u0131n ad\u0131n\u0131 ve \u015fifresini i\u00e7erir):<\/p>\n<pre><code>d-i passwd\/user-fullname string Operator\nd-i passwd\/username string operator\nd-i passwd\/user-password password secret123\nd-i passwd\/user-password-again password secret123\n<\/code><\/pre>\n<p>Kurulum sonras\u0131 <code>cloud-init<\/code> ile otomatik yap\u0131land\u0131rma:<\/p>\n<pre><code>sudo cloud-init set-net-config \/etc\/netplan\/01-netcfg.yaml\nsudo cloud-init set-user-data \/etc\/cloud\/cloud.cfg.d\/99-custom.cfg\n<\/code><\/pre>\n<h3>3. Konteyner Y\u00f6netim Platformu Kurulumu<\/h3>\n<p>Proxmox VE tercih edilir; ancak Docker+Compose da yeterlidir. Docker i\u00e7in:<\/p>\n<pre><code>sudo apt install docker.io docker-compose -y\nsudo systemctl enable --now docker\n<\/code><\/pre>\n<p>Docker Compose dosyas\u0131n\u0131 <code>\/srv\/homelab\/docker-compose.yml<\/code> i\u00e7ine yerle\u015ftirin. \u00d6rnek:<\/p>\n<pre><code>version: '3.8'\nservices:\n  nginx:\n    image: nginx:alpine\n    container_name: web\n    restart: unless-stopped\n    ports:\n      - \"80:80\"\n      - \"443:443\"\n    volumes:\n      - .\/nginx.conf:\/etc\/nginx\/nginx.conf\n      - .\/certs:\/etc\/nginx\/certs:ro\n  postgres:\n    image: postgres:13-alpine\n    container_name: db\n    restart: unless-stopped\n    environment:\n      POSTGRES_USER: admin\n      POSTGRES_PASSWORD: secret123\n      POSTGRES_DB: homelab\n    volumes:\n      - db-data:\/var\/lib\/postgresql\/data\nvolumes:\n  db-data:\n<\/code><\/pre>\n<p>Compose\u2019\u0131 \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code>sudo docker compose up -d\n<\/code><\/pre>\n<p>Uygulamalar\u0131 g\u00fcncel tutmak i\u00e7in <code>docker-compose pull<\/code> ve <code>docker compose up -d<\/code> ad\u0131mlar\u0131n\u0131 periyodik olarak tekrarlay\u0131n.<\/p>\n<h3>4. Temel A\u011f Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>Statik IP atay\u0131n. <code>\/etc\/netplan\/01-netcfg.yaml<\/code> dosyas\u0131:<\/p>\n<pre><code>network:\n  version: 2\n  renderer: networkd\n  ethernets:\n    eth0:\n      dhcp4: no\n      addresses: [192.168.1.50\/24]\n      gateway4: 192.168.1.1\n      nameservers:\n        addresses: [8.8.8.8, 8.8.4.4]\n<\/code><\/pre>\n<p>DHCP kullan\u0131yorsan\u0131z <code>dhclient<\/code> ile al\u0131n. DNS ayarlar\u0131n\u0131 <code>systemd-resolve --status<\/code> ile kontrol edin.<\/p>\n<p>\u0130ste\u011fe ba\u011fl\u0131 olarak <code>wireguard<\/code> VPN kurarak d\u0131\u015f ba\u011flant\u0131lar\u0131 \u015fifreleyin:<\/p>\n<pre><code>sudo apt install wireguard\nsudo wg-quick up wg0\n<\/code><\/pre>\n<h3>5. G\u00fcvenlik Duvar\u0131 Kurallar\u0131<\/h3>\n<p>UFW kullanarak minimum portlar\u0131 a\u00e7\u0131n:<\/p>\n<pre><code>sudo ufw default deny incoming\nsudo ufw default allow outgoing\nsudo ufw allow 22\/tcp   # SSH\nsudo ufw allow 80\/tcp   # HTTP\nsudo ufw allow 443\/tcp  # HTTPS\nsudo ufw allow 1194\/udp # VPN\nsudo ufw enable\n<\/code><\/pre>\n<p>Geli\u015fmi\u015f kurallar i\u00e7in iptables ile loglama ekleyin:<\/p>\n<pre><code># Log &amp; deny default\niptables -P INPUT DROP\niptables -P OUTPUT ACCEPT\niptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT\niptables -A INPUT -p tcp --dport 22 -j ACCEPT\niptables -A INPUT -p tcp --dport 80 -j ACCEPT\niptables -A INPUT -p tcp --dport 443 -j ACCEPT\niptables -A INPUT -p udp --dport 1194 -j ACCEPT\niptables -A INPUT -j LOG --log-prefix \"DROP: \" --log-level 4\niptables -A INPUT -j DROP\n<\/code><\/pre>\n<p>G\u00fcvenlik duvar\u0131 etkinli\u011fini <code>sudo ufw status verbose<\/code> ile do\u011frulay\u0131n.<\/p>\n<h3>6. Yedekleme Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>ZFS kullanarak snapshot sistemini kurun:<\/p>\n<pre><code>sudo apt install zfsutils-linux\nsudo zpool create homepool mirror \/dev\/sda \/dev\/sdb\nsudo zfs create homepool\/backup\n<\/code><\/pre>\n<p>G\u00fcnl\u00fck, haftal\u0131k ve ayl\u0131k snapshot\u2019lar i\u00e7in <code>cron<\/code> i\u015fleri ekleyin:<\/p>\n<pre><code>* 0 * * * \/usr\/sbin\/zfs snapshot homepool\/backup@$(date +\\%Y\\%m\\%d)\n0 0 * * 0 \/usr\/sbin\/zfs snapshot homepool\/backup@weekly-$(date +\\%Y\\%m\\%d)\n0 0 1 * * \/usr\/sbin\/zfs snapshot homepool\/backup@monthly-$(date +\\%Y\\%m\\%d)\n<\/code><\/pre>\n<p>Yedekleri harici SSD\u2019ye veya bulut depolama (Backblaze B2) ile senkronize edin. <code>rclone<\/code> ile transfer \u00f6rne\u011fi:<\/p>\n<pre><code>rclone sync homepool\/backup:remote-bucket --progress\n<\/code><\/pre>\n<p>Her g\u00fcncellemeden \u00f6nce <code>zfs snapshot<\/code> ile anl\u0131k g\u00f6r\u00fcnt\u00fc al\u0131n; sorun \u00e7\u0131karsa <code>zfs rollback<\/code> ile geri d\u00f6n\u00fcn.<\/p>\n<p>Alternatif olarak, Btrfs ile <code>btrfs send | rclone copy<\/code> komutunu kullanabilirsiniz.<\/p>\n<h2>Sorun Giderme<\/h2>\n<h3>So\u011futma Sorunlar\u0131<\/h3>\n<p>Mini PC\u2019ler genelde d\u00fc\u015f\u00fck profilli so\u011futma donan\u0131m\u0131 kullan\u0131r. Fan ak\u0131m\u0131 d\u00fc\u015f\u00fck oldu\u011funda s\u0131cakl\u0131k 80\u00b0C \u00fczerine \u00e7\u0131kabilir. \u00d6nce sistemin fanlar\u0131n\u0131 temizleyin; toz birikmesi hava ak\u0131\u015f\u0131n\u0131 k\u0131s\u0131tlar. Fan h\u0131z\u0131 d\u00fc\u015f\u00fckse BIOS \u00fczerinden RPM de\u011ferini kontrol edin. H\u0131z sabit de\u011filse fan s\u00fcr\u00fcc\u00fcs\u00fcn\u00fc yeniden y\u00fckleyin: <code>sudo apt install --reinstall fancontrol<\/code>. Fan ar\u0131zas\u0131 \u015f\u00fcpheliyse, s\u0131cakl\u0131\u011f\u0131 izlemek i\u00e7in <code>lm-sensors<\/code> ile g\u00f6zlemleyin: <code>sudo sensors-detect<\/code>, <code>sensors<\/code>. Aniden kapanma, fan devri\u015fi durdurulduysa yeni fan tak\u0131n. So\u011futma ak\u0131\u015f\u0131n\u0131 geli\u015ftirmek i\u00e7in mini PC\u2019yi hava ak\u0131\u015f\u0131na izin veren bir kasa se\u00e7in ve fan yerle\u015fimini optimal hale getirin.<\/p>\n<h3>A\u011f Ba\u011flant\u0131 Hatalar\u0131<\/h3>\n<p>Ethernet ba\u011flant\u0131s\u0131 yava\u015f veya kesik ise, NIC s\u00fcr\u00fcc\u00fcs\u00fcn\u00fc g\u00fcncelleyin: <code>sudo apt update &amp;&amp; sudo apt install linux-modules-extra-$(uname -r)<\/code>. MAC adresi sabit tutulmal\u0131; DHCP kullan\u0131yorsan\u0131z <code>systemd-networkd<\/code> ile statik IP yap\u0131land\u0131rmas\u0131 tercih edin. A\u011f kablosu ve port sorunlar\u0131n\u0131 kontrol etmek i\u00e7in <code>ethtool eth0<\/code> komutuyla link h\u0131z\u0131n\u0131 do\u011frulay\u0131n. 1 Gbps yerine 100 Mbps olarak d\u00fc\u015f\u00fcr\u00fcld\u00fcyse, kablonun kategori 5e veya \u00fczeri oldu\u011fundan emin olun. A\u011f kart\u0131 hatal\u0131ysa, bir USB\u2011to\u2011Ethernet adapt\u00f6r\u00fc deneyin. VPN veya NAT ge\u00e7i\u015flerinde, <code>ufw allow 1194\/udp<\/code> gibi portlar\u0131 a\u00e7\u0131n.<\/p>\n<h3>G\u00fcvenlik G\u00fcncellemeleri Eksikli\u011fi<\/h3>\n<p>Operat\u00f6r bak\u0131m\u0131 i\u00e7in g\u00fcvenlik yamalar\u0131 kritik. <code>unattended-upgrades<\/code> paketi ile otomatik g\u00fcncellemeleri etkinle\u015ftirin: <code>sudo dpkg-reconfigure unattended-upgrades<\/code>. G\u00fcvenlik g\u00fcncellemeleri manuel olarak kontrol etmek i\u00e7in <code>sudo apt list --upgradable | grep security<\/code> komutunu kullan\u0131n. Sistem g\u00fcncel de\u011filse, root shell \u00fczerinden <code>sudo apt full-upgrade<\/code> komutu ile y\u00fckseltme yap\u0131n. Y\u00fckleme \u00f6ncesi <code>apt-mark hold<\/code> ile kritik paketleri kilitleyin, beklenmeyen de\u011fi\u015fiklikleri \u00f6nleyin.<\/p>\n<h3>Veri Kayb\u0131 Riskleri<\/h3>\n<p>Yedekleme eksikli\u011fi veri kayb\u0131 riskini art\u0131r\u0131r. ZFS snapshot\u2019lar\u0131 g\u00fcnl\u00fck olarak al\u0131n; <code>zfs snapshot pool@$(date +%F)<\/code> komutu kullan\u0131n. Snapshot\u2019lar\u0131 <code>zfs send<\/code> ile uzak sunucuya aktar\u0131n, <code>zfs receive<\/code> ile geri al\u0131n. Yedeklemeyi test etmek i\u00e7in <code>zfs rollback pool@snapshot<\/code> ile eski haline d\u00f6n\u00fcn. Snapshot\u2019lar\u0131 <code>zfs list -t snapshot<\/code> ile do\u011frulay\u0131n.<\/p>\n<h3>Disk Degraded veya Bad Sector Hatas\u0131<\/h3>\n<p>SMART veriyle durum kontrol\u00fc:<\/p>\n<pre><code>sudo smartctl -a \/dev\/sda | grep -E \"Overall Health|Reallocated_Sector_Ct\"\n<\/code><\/pre>\n<p>Degraded durumunda <code>zpool replace<\/code> ile diski de\u011fi\u015ftirin. Yedekleme tamamlanmadan \u00f6nce <code>zpool scrub<\/code> ile hatalar\u0131 tespit edin.<\/p>\n<h3>CPU Overload ve Y\u00fcksek S\u0131cakl\u0131k<\/h3>\n<p>CPU temp izleme:<\/p>\n<pre><code>watch -n 1 sensors\n<\/code><\/pre>\n<p>\u00c7ekirdek frekans\u0131n\u0131 kontrol edin: <code>cpupower frequency-info<\/code>. A\u015f\u0131r\u0131 y\u00fck varsa <code>cpupower frequency-set -g powersave<\/code> ile d\u00fc\u015f\u00fck modda \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flay\u0131n.<\/p>\n<h2>\u0130yile\u015ftirme ve Optimizasyon<\/h2>\n<p>Mini PC\u2019nizin performans\u0131n\u0131 art\u0131rmak, enerji t\u00fcketimini d\u00fc\u015f\u00fcrmek ve g\u00fcvenilir \u00e7al\u0131\u015fmay\u0131 sa\u011flamak i\u00e7in sistematik ad\u0131mlar at\u0131n.<\/p>\n<h3>CPU ve Bellek Y\u00f6netimi<\/h3>\n<p>\u00c7ekirdek say\u0131s\u0131 y\u00fcksek olsa da, d\u00fc\u015f\u00fck s\u0131cakl\u0131kta \u00e7al\u0131\u015fmak i\u00e7in <code>cpupower<\/code> arac\u0131n\u0131 kullan\u0131n. <code>sudo cpupower frequency-set -g powersave<\/code> komutu, ge\u00e7i\u015f s\u00fcrelerini optimize eder. Belirli s\u00fcre\u00e7ler i\u00e7in <code>taskset<\/code> ile CPU \u00e7ekirdek k\u0131s\u0131tlamas\u0131 uygulay\u0131n. \u00d6rne\u011fin, web sunucusunu 2.0 GHz\u2019ten 1.5 GHz\u2019e d\u00fc\u015f\u00fcrmek, bellek kullan\u0131m\u0131n\u0131 %20 oran\u0131nda azalt\u0131r.<\/p>\n<h3>Enerji Tasarrufu Modlar\u0131<\/h3>\n<p>G\u00fc\u00e7 y\u00f6netim profili <code>\/etc\/default\/grub<\/code> dosyas\u0131nda <code>GRUB_CMDLINE_LINUX_DEFAULT=\"quiet splash acpi=force\"<\/code> olarak ayarlanmal\u0131d\u0131r. G\u00fcncellenen grub yap\u0131land\u0131rmas\u0131 i\u00e7in <code>sudo update-grub<\/code> komutu \u00e7al\u0131\u015ft\u0131r\u0131n. Daha sonra <code>sudo systemctl enable thermald<\/code> ile termal y\u00f6netim ba\u015flat\u0131n. Bu ad\u0131mlar, fan d\u00f6ng\u00fclerini optimize eder ve cihaz \u0131s\u0131lanmadan \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flar.<\/p>\n<h3>Veri Yo\u011funluklu G\u00f6revler \u0130\u00e7in Depolama Ayarlar\u0131<\/h3>\n<p>SSD\u2019ye <code>ssd_spread<\/code> veya NVMe i\u00e7in <code>queue_depth=32<\/code> parametresi ekleyin. <code>\/etc\/fstab<\/code> i\u00e7inde <code>noatime<\/code> ve <code>discard<\/code> se\u00e7enekleri veri okuma\/yazma performans\u0131n\u0131 art\u0131r\u0131r. Yedekleme s\u0131ras\u0131nda <code>rsync -avz --delete --progress<\/code> ile paralel transfer sa\u011flay\u0131n. Snapshot s\u0131kl\u0131\u011f\u0131n\u0131 <code>zfs set compression=lz4<\/code> ile s\u0131k\u0131\u015ft\u0131rarak depolama maliyetini d\u00fc\u015f\u00fcr\u00fcn.<\/p>\n<h3>IP Kameralar \u0130\u00e7in \u0130zleme Ara\u00e7lar\u0131<\/h3>\n<p>IP kameralar i\u00e7in <code>motion<\/code> veya <code>ZoneMinder<\/code> gibi a\u00e7\u0131k kaynakl\u0131 izleme \u00e7\u00f6z\u00fcmlerini kurun. <code>sudo apt install motion<\/code> komutuyle ba\u015flay\u0131n. Konfig\u00fcrasyon dosyas\u0131nda <code>stream_port<\/code> ve <code>output_port<\/code> ayarlar\u0131n\u0131 g\u00fcvenlik duvar\u0131 ile e\u015fle\u015ftirin. Otomatik kay\u0131t s\u00fcresi i\u00e7in <code>cron<\/code> ile <code>\/usr\/local\/bin\/rotate.sh<\/code> scripti kullan\u0131n.<\/p>\n<h3>Risk ve Rollback Tablosu<\/h3>\n<table>\n<thead>\n<tr>\n<th>Risk<\/th>\n<th>\u00d6nlem<\/th>\n<th>Rollback<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>CPU Overheat<\/td>\n<td>Thermal daemon aktif, fan h\u0131z\u0131 dinamik<\/td>\n<td>\u00c7ekirdek frekans\u0131n\u0131 art\u0131r<\/td>\n<\/tr>\n<tr>\n<td>Disk I\/O Engelleme<\/td>\n<td>Noatime + discard + SSD queue_depth<\/td>\n<td>fsck ile dosya sistemi kontrol<\/td>\n<\/tr>\n<tr>\n<td>Yedekleme Hatas\u0131<\/td>\n<td>ZFS snapshot + rclone sync<\/td>\n<td>Rollback komutu ile eski snapshot<\/td>\n<\/tr>\n<tr>\n<td>G\u00fcvenlik A\u00e7\u0131\u011f\u0131<\/td>\n<td>UFW, fail2ban, SSH root devre d\u0131\u015f\u0131<\/td>\n<td>SSH portunu de\u011fi\u015ftir<\/td>\n<\/tr>\n<tr>\n<td>\u015e\u00fcpheli A\u011f Trafi\u011fi<\/td>\n<td>Wireguard VPN, port filtreleme<\/td>\n<td>UFW kural\u0131n\u0131 geri al<\/td>\n<\/tr>\n<tr>\n<td>Y\u00fcksek Bellek Kullan\u0131m\u0131<\/td>\n<td>Service memory limit + swap<\/td>\n<td>Memory cgroup reset<\/td>\n<\/tr>\n<tr>\n<td>Firmware Y\u00fckseltme Hatas\u0131<\/td>\n<td>Checksum kontrol + rollback<\/td>\n<td>Yedekli firmware ile geri y\u00fckleme<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>\u0130yi Pratik Kontrol Listesi<\/h3>\n<ul>\n<li>CPU governor = powersave<\/li>\n<li>G\u00fc\u00e7 y\u00f6netim parametreleri grubda tan\u0131ml\u0131<\/li>\n<li>SSDIO ve queue_depth parametreleri set<\/li>\n<li>Yedekleme scripti \u00e7al\u0131\u015f\u0131r durumda<\/li>\n<li>\u0130zleme hizmeti ve firewall kurallar\u0131n\u0131 e\u015fle\u015ftir<\/li>\n<li>Snapshot olu\u015fturma ve rollback testleri yap\u0131ld\u0131<\/li>\n<li>Fail2ban ile brute\u2011force korumas\u0131 aktif<\/li>\n<li>SSH root login devre d\u0131\u015f\u0131, two\u2011factor aktif<\/li>\n<li>Let\u2019s Encrypt sertifikas\u0131 otomatik yenileme ayarl\u0131<\/li>\n<li>Loglama sunucusu yap\u0131land\u0131r\u0131lm\u0131\u015f<\/li>\n<li>Grafana panelleri CPU, bellek, disk I\/O ve a\u011f trafi\u011fini g\u00f6steriyor<\/li>\n<li>UPS ile smart\u2011shutdown scripti \u00e7al\u0131\u015f\u0131yor<\/li>\n<li>Her g\u00fcncellemeden \u00f6nce snapshot al\u0131n\u0131yor<\/li>\n<\/ul>\n<h2>G\u00fcvenlik ve Bak\u0131m Notlar\u0131<\/h2>\n<h3>Firewall Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>UFW ile sadece gerekli portlar\u0131 a\u00e7\u0131n: SSH 22, Web 80\/443, ZFS 2001. Di\u011fer t\u00fcm ba\u011flant\u0131lar\u0131 engelleyin. Kurallar\u0131n\u0131z\u0131 <code>\/etc\/ufw\/applications.d<\/code> klas\u00f6r\u00fcnde belgeleyin, b\u00f6ylece rollback kolayd\u0131r.<\/p>\n<h3>SSH Key Y\u00f6netimi<\/h3>\n<p>Root hesab\u0131n\u0131 devre d\u0131\u015f\u0131 b\u0131rak\u0131n; yaln\u0131zca <code>sudo<\/code> yetkisi veren kullan\u0131c\u0131 olu\u015fturun. Her kullan\u0131c\u0131 i\u00e7in ayr\u0131 public key kaydedin; <code>~\/.ssh\/authorized_keys<\/code> dosyas\u0131n\u0131 s\u0131k\u0131 izinlerle koruyun. \u0130ki fakt\u00f6rl\u00fc kimlik do\u011frulama eklemek i\u00e7in Google Authenticator veya Duo Auth kurun. Anahtar\u0131n\u0131z\u0131 yedeklerken parola korumas\u0131 ekleyin, b\u00f6ylece \u015fifrelenmi\u015f .pem dosyas\u0131 saklay\u0131n.<\/p>\n<h3>G\u00fcncelleme Politikas\u0131<\/h3>\n<p>Sunucuyu g\u00fcncel tutmak i\u00e7in <code>unattended-upgrades<\/code> paketini yap\u0131land\u0131r\u0131n. \u00d6nce <code>apt list --upgradable<\/code> ile y\u00fckseltilebilir paketleri kontrol edin. \u00d6nemli g\u00fcvenlik yamalar\u0131n\u0131 <code>apt-get upgrade -y<\/code> komutu ile periyodik olarak uygulay\u0131n. Y\u00fckleme \u00f6ncesi <code>apt-mark hold<\/code> ile kritik paketleri kilitleyin, beklenmeyen de\u011fi\u015fiklikleri \u00f6nleyin.<\/p>\n<h3>Yedekleme Testleri<\/h3>\n<p>ZFS snapshot\u2019lar\u0131 g\u00fcnl\u00fck olarak al\u0131n; <code>zfs snapshot pool@$(date +%F)<\/code> komutu kullan\u0131n. Snapshot\u2019lar\u0131 <code>zfs send<\/code> ile uzak sunucuya aktar\u0131n, <code>zfs receive<\/code> ile geri al\u0131n. Yedeklemeyi test etmek i\u00e7in <code>zfs rollback pool@snapshot<\/code> ile eski haline d\u00f6n\u00fcn. Yedekleme sonu\u00e7lar\u0131n\u0131 <code>journalctl -u zfs-snapshot<\/code> ile kontrol edin.<\/p>\n<h3>Loglama ve \u0130zleme<\/h3>\n<p>Syslog\u2019\u00fc <code>rsyslogd<\/code> ile merkezi sunucuya y\u00f6nlendirin; IP\u2019ye log g\u00f6nderin. Prometheus ile node_exporter kurun; <code>prometheus.yml<\/code> dosyas\u0131na hedef ekleyin. Grafana\u2019da paneller olu\u015fturun; CPU, bellek, disk I\/O ve a\u011f trafi\u011fini takip edin. Alertmanager ile kritik e\u015fikler a\u015f\u0131ld\u0131\u011f\u0131nda e-posta veya Slack bildirimleri ayarlay\u0131n.<\/p>\n<h3>Rollback Prosed\u00fcrleri<\/h3>\n<p>Her b\u00fcy\u00fck de\u011fi\u015fiklik \u00f6ncesi snapshot al\u0131n; <code>zfs snapshot pool@pre-change<\/code> komutu. Yap\u0131land\u0131rma dosyalar\u0131 (ufw, sshd_config, zfs) i\u00e7in <code>git<\/code> deposu kullan\u0131n. \u0130\u015flem hatas\u0131 durumunda <code>zfs rollback pool@pre-change<\/code> ile eski yap\u0131land\u0131rma geri al\u0131n. Log dosyalar\u0131n\u0131 <code>rsync -a \/var\/log\/ \/backup\/logs\/<\/code> ile yedekleyin; 7\u2011day retention plan\u0131 olu\u015fturun. Rollback testlerini test ortam\u0131nda y\u00fcr\u00fct\u00fcn; her de\u011fi\u015fiklik sonras\u0131 <code>systemctl restart<\/code> ile hizmetleri do\u011frulay\u0131n.<\/p>\n<h3>S\u0131k Sorulan Sorular<\/h3>\n<ul>\n<li>Mini PC\u2019yi d\u00fc\u015f\u00fck g\u00fcr\u00fclt\u00fcl\u00fc \u00e7al\u0131\u015ft\u0131rmak i\u00e7in hangi fan ayarlar\u0131 \u00f6nerilir?<\/li>\n<li>\u00d6ncelikli g\u00fcncelleme s\u0131kl\u0131\u011f\u0131 nedir?<\/li>\n<li>ZFS snapshot\u2019lar\u0131n\u0131 uzak sunucuya nas\u0131l senkronize edebilirim?<\/li>\n<li>Fail2ban kurulumunda hangi bant geni\u015fli\u011fi k\u0131s\u0131tlamas\u0131 kullanmal\u0131?<\/li>\n<li>UPS ile anl\u0131k kapan\u0131\u015f senaryosunda hangi script \u00e7al\u0131\u015fmal\u0131?<\/li>\n<\/ul>\n<h2>Sonu\u00e7 ve K\u0131sa \u00d6zet<\/h2>\n<p>Eski Mini PC\u2019nizi homelab sunucusuna d\u00f6n\u00fc\u015ft\u00fcrmek, kritik paketlerin kilitlenmesiyle ba\u015flay\u0131p, d\u00fczenli ZFS snapshot\u2019lar\u0131yla veri b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc sa\u011flamay\u0131 i\u00e7erir. Her b\u00fcy\u00fck de\u011fi\u015fiklik \u00f6ncesinde snapshot al\u0131p, gerekti\u011finde rollback ile geri d\u00f6nme yetene\u011fi, riskleri minimize eder. Loglama ve izleme i\u00e7in rsyslog, Prometheus ve Grafana\u2019n\u0131n entegrasyonu, sistem sa\u011fl\u0131\u011f\u0131n\u0131 ger\u00e7ek zamanl\u0131 g\u00f6zlemlemenize olanak tan\u0131r; Alertmanager ile kritik e\u015fiklerde otomatik bildirimler kurmak operasyonel s\u00fcreklili\u011fi g\u00fc\u00e7lendirir. Yedeklemeyi test ortam\u0131nda do\u011frulamak, ZFS send\/receive zincirini g\u00fcvenle kullanman\u0131z\u0131 sa\u011flar. Git tabanl\u0131 yap\u0131land\u0131rma y\u00f6netimi, ufw, sshd ve ZFS ayarlar\u0131n\u0131 s\u00fcr\u00fcm kontrol\u00fc alt\u0131nda tutar, hata durumunda h\u0131zl\u0131 geri alma sunar. Log dosyalar\u0131n\u0131n periyodik yedeklenmesi, 7\u2011day retention plan\u0131yla kal\u0131nt\u0131 veriyi \u00f6nleyerek disk dolum riskini azalt\u0131r. Bu ad\u0131mlar, sisteminizin g\u00fcvenli, izlenebilir ve geri d\u00f6nd\u00fcr\u00fclebilir olmas\u0131n\u0131 garanti eder. Sonu\u00e7ta, donan\u0131m\u0131n\u0131z\u0131 yeniden kullanarak d\u00fc\u015f\u00fck maliyetli, sessiz ve y\u00fcksek performansl\u0131 bir homelab ortam\u0131 elde edersiniz. Bu altyap\u0131, veri g\u00fcvenli\u011fi, bak\u0131m kolayl\u0131\u011f\u0131 ve operat\u00f6r olarak sizin zaman\u0131n\u0131z\u0131 en verimli \u015fekilde kullanman\u0131z\u0131 sa\u011flar.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Eski mini PC\u2019nizi sessiz, g\u00fcvenli ve d\u00fc\u015f\u00fck g\u00fc\u00e7 t\u00fcketimli bir mini PC homelab sunucuya d\u00f6n\u00fc\u015ft\u00fcrmek i\u00e7in ad\u0131m ad\u0131m rehber, \u00f6rnekler ve ipu\u00e7lar\u0131yla.<\/p>\n","protected":false},"author":1,"featured_media":545,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rank_math_title":"mini PC homelab sunucu: 7 Ad\u0131mda M\u00fckemmel Kurulum","rank_math_description":"Eski mini PC\u2019nizi sessiz, g\u00fcvenli ve d\u00fc\u015f\u00fck g\u00fc\u00e7 t\u00fcketimli bir mini PC homelab sunucuya d\u00f6n\u00fc\u015ft\u00fcrmek i\u00e7in ad\u0131m ad\u0131m rehber, \u00f6rnekler ve ipu\u00e7lar\u0131yla.","rank_math_focus_keyword":"mini PC homelab sunucu","footnotes":""},"categories":[179],"tags":[183,184,103,182,181,180],"class_list":["post-550","post","type-post","status-publish","format-standard","has-post-thumbnail","category-homelab","tag-dusuk-ses","tag-eski","tag-guvenlik","tag-homelab-sunucu","tag-mini-pc","tag-mini-pc-homelab-sunucu"],"_links":{"self":[{"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/posts\/550","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/comments?post=550"}],"version-history":[{"count":0,"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/posts\/550\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/media\/545"}],"wp:attachment":[{"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/media?parent=550"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/categories?post=550"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/tags?post=550"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}