Freebsd dünya üzerinde ve ülkemizde bir çok temel ve uzman seviyede kullanıcısı bulunan AMD64, IA-64, PC-98 ve UltraSPARC® mimarileri için geliştirilen ileri seviye bir işletim sistemidir. Özellikle oyun sunucuları (metin2 vb.) için sıkça tercih edilmektedir.
Freebsd, Linux dağıtımlarına nazaran ports ağacı sayesinde çok daha güvenilir bir uygulama kurulum merkezine sahiptir. Aynı zamanda Linux binary desteği bulunmaktadır.
Bu yazıda neler var?
Freebsd Ports Kurulumu
Freebsd üzerinde uygulamalar iki şekilde kurulmaktadır. PKG paket yönetim sistemi ve ports ağacı (ports tree) üzerinden. Pkg ile ports ağacı üzerinden uygulama kurmanın farkı ise, ports ağacı size zengin bir içerik sunarken, kurulumları da dilediğiniz gibi özelleştirme şansına sahipsinizdir. Ayrıca port ağacı üzerinden bir uygulamayı derlerken, bağımlı olduğu kütüphaneyi de kurarken, özelleştirmenizi sağlayacaktır. Böylece sistemde gereksiz dosya ve paketler olmayacaktır.
Freebsd üzerinde port ağacının kontrolü için portsnap komutu kullanılır. Ports ağacını çekmek için;
portsnap fetch
Çektiğimiz port ağacını açmak için;
portsnap fetch
Port ağacı varsayılan olarak /usr/ports dizinine açılır. Her uygulama şekline göre kategoriye ayrılmıştır. Python dilini kurmak isterseniz /lang dizinine mysql kurmak isterseniz /databases dizinine girersiniz.
Port ağacında uygulamaları bulmak için https://www.freebsd.org/ports/ veya https://www.freshports.org/ sitelerini de kullanabilirsiniz.
Şu anda freebsd ports üzerinde 33637 adet uygulama buluyor.
Freebsd Apache – PHP Kurulumu
Öncelikle Freebsd sistemimizi ve kernelimizi güncelleyelim;
freebsd-update fetch install
İşlem bağlantı hızınıza göre 5-10 dakika arasında sürecektir. Çekme işlemi bittikten sonra güncellenecek paketleri görebilirsiniz.
Güncelleme işlemi bittikten sonra, kurulumlara geçebiliriz. Yukarıda değindiğimiz gibi, kurulum için pkg ve port ağacını kullanabilirsiniz. Kurulumları şu an için port ağacı üzerinden yapacağız ve basitçe ilerleyeceğiz.
Apache ve mod_php Kurulumu
Apache’yi mod_php ile çalıştıracağız. mod_php kurmaya başladıktan sonra, Freebsd apache ve php paketlerini otomatik olarak derleyecektir.
cd /usr/ports/www/mod_php72
make install clean
Kurulum esnasında, sistem ncurses ekranları çıkartacak ve onay vermenizi isteyecektir. Böylelikle bağımlılık gerektiren paketleri de seçebilirsiniz. Eğer hepsi varsayılan kurulsun derseniz alttaki komutu da çalıştırabilirsiniz;
cd /usr/ports/www/mod_php72
make install clean BATCH=yes
Eğer “batch=yes” parametresi ile kurarsanız, Freebsd varsayılan ayarlarda apache’yi de kuracaktır. Parametre vermeden kurduğunuzda, her paket içinde size aşağıdaki, şekilde ncurses ekranı getirecektir.
Seçimleri yaptıktan sonra Freebsd kurulumları yapmaya başlayacaktır.
Apache PHP yapılandırma ayarları için httpd.conf dosyasını açalım;
ee /usr/local/etc/apache24/httpd.conf
ve aşağıdaki satırları kopyalayıp, kaydedip dosyadan çıkalım.
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
Apache’nin çalışması için rc.conf dosyasına ayarını girelim.
sysrc apache24_enable="YES"
PHP Kurulumu
cd /usr/ports/lang/php72
make install clean
PHP Extension Kurulumu
/usr/ports/lang/php72-extensions
make config
İhtiyacınız olan php bileşenlerini seçip, “OK” diyelim ve ardından;
make install clean
diyerek, bileşenlerin kurulumunu başlatalım. Yine aynı şekilde varsayılan kurulum isterseniz;
make install clean BATCH=yes
Mysql Kurulumu
cd /usr/ports/databases/mysql57-server/
make install clean
rc.conf dosyasına mysql_enable satırını girelim;
sysrc mysql_enable="YES"
Mysql servisini başlatalım;
service mysql-server start
Mysql root şifresini öğrenelim;
cat $HOME/.mysql_secret
Güvenli kurulumu çalıştıralım;
mysql_secure_installation
Komut, root şifresini otomatik olarak okuyacaktır, aşağıdaki şekilde ayarları yapabiliriz;
mysql_secure_installation
Securing the MySQL server deployment.
Connecting to MySQL server using password in '/root/.mysql_secret'
VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of the password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin?
Press y|Y for Yes, any other key for No: y
There are three levels of password validation policy:
LOW Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary file
Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 1
Daha sonra root şifresini değiştirmek istediğinizi soracaktır. [Y] ile değiştirebilir [N] ile aynı şekilde bırakabilirsiniz.
Remove anonymous users? (Press y|Y for Yes, any other key for No) :
Anonymous kullanıcıları silmek istediğinizi sorar. [Y] ile silebilirsiniz.
Disallow root login remotely? (Press y|Y for Yes, any other key for No) :
root kullanıcı uzaktan mysql’e oturum açacak mı diye sorar. Y ve N ile cevap verebilirsiniz.
Remove test database and access to it? (Press y|Y for Yes, any other key for No) :
Test veritabanı silinsin mi? [Y]
Reload privilege tables now? (Press y|Y for Yes, any other key for No)
Yetki tablosu yeniden yüklensin mi? [Y]
Mysql servisi böylece kurulmuş olacaktır.
PHP YAPILANDIRMASI
php.ini dosyası /usr/local/etc dizininde php.ini-production.ini ismiyle bulunur. Öncelikle dosya adını değiştirelim;
cd /usr/local/etc
mv php.ini-production php.ini
PHP.ini dosyasını açıp basit ayarları yapılandıralım;
ee /usr/local/etc/php.ini
Display_errors = Off yapıp hataları kapatalım.
expose_php = Off yapıp php sürüm bilgisini saklayalım.
memory_limit = 128MB (veya kullandığınız ram durumuna göre)
phpmyadmin Kurulumu
cd /usr/ports/databases/phpmyadmin
make install clean
httpd.conf dosyamızda pma için gerekli işlemleri yapalım;
ee /usr/local/etc/apache24/httpd.conf
Alias /phpmyadmin/ "/usr/local/www/phpMyAdmin/"
<Directory "/usr/local/www/phpMyAdmin/">
Options None
AllowOverride Limit
Require local
Require host .example.com
</Directory>
IP adresiniz üzerinden web sunucuya ve http://IP:phpmyadmin yazarak pma arayüzüne ulaşabilirsiniz.
Bu makalede yer alan kurulumları bursa datacenter üzerinde bulunan pendc.com’dan sanal sunucu satın alarak uygulayabilirsiniz.
Add Comment