FreeBSD 13.2 jalan di laptop jadul Thinkpad W520. Dual boot dengan Linux Slackware, masing-masing OS menempati SSD 870 EVO 500GB. Total RAM 24GB, dengan KDE sebagai desktop manager. Ok, meski laptop jadul, ini workstation yang saya pakai sehari-hari :). Apakah FreeBSD layak untuk keperluan desktop? Selama perangkat hardware Anda di support, FreeBSD layak dipakai. Oh ya, saya banyak terinspirasi dari Vermaden. Site yang layak Anda kunjungi juga.

Seandainya hamba ini jadi budak korporat alias tukang sapu kantor / ruang server, FreeBSD sangat sayang dilewatkan :). Entah untuk keperluan server, desktop, ataupun embedded, FreeBSD perlu dipertimbangkan. Memang OS ini bukan model OS klak-klik jalan. Segala konfigurasi model teks file.


Aplikasi htop saat OS menjalankan instruksi pkg check -Ba. FreeBSD melakukan pemisahan ketat antara “core” OS dengan aplikasi lain yang terletak di /usr/local. Pada htop di atas, Konsole dan Firefox bukan bagian core FreeBSD. Tapi devd, syslogd adalah bagian core OS.
KDE Plasma jalan lancar di FreeBSD 13.2 dengan grafik NVIDIA Quadro 2000M.

Karena sebelumnya FreeBSD yang dipakai versi 13.1, maka tinggal upgrade saja ke versi 13.2. Setelahnya, coba cek konsistensi paket yang tertanam. Instruksinya #pkg check -Ba. Versi 13.1 akan tetap disupport sampai 3 bulan setelah versi 13.2 keluar.

Warning dependency Libreoffice libjawt.so kalau tidak salah bagian JRE/JDK yang sebenarnya sudah otomatis terdeteksi di Libreoffice. Libreoffice jalan lancar dilaptop saya. Mysql80-server perlu libprotobuf.so. Yang ini masih jadi “bug”? Baiklah, saya abaikan saja hal ini karena tidak mengganggu aktivitas keseluruhan.
Instruksi pkg audit -F akan memeriksa paket-paket yang “vulnerable”. Ada 6 problem saat ini, tapi belum ada update resmi dari repo FreeBSD.

Karena “grace period” selama 3 bulan dari FreeBSD versi 13.1 ke 13.2, kernel modul Virtualbox tidak kompatibel dengan versi kernel FreeBSD 13.2. Ada 2 solusi : pertama menunggu versi binary official , yang kedua kompile sendiri dari source. Saya memilih yang pertama π santai saja hehe.

FreeBSD punya sistem virtual Bhyve. Tapi kebiasaan pakai Virtualbox sich hehe.

Mencoba GIMP. Loading dengan cepat juga aplikasinya.

Hydrogen π

The One That Got Away π

Tiga file konfigurasi penting di FreeBSD adalah : /boot/loader.conf
,
/etc/rc.conf
, dan /etc/sysctl.conf.
Di bawah ini saya cantumkan versi saya. Comot dari sana-sini hehe. Ambil yang berguna saja. Agak kacau soal urutan tapi jalan lancar kok. Ingin mencoba Realtime kernel untuk urusan musik tapi belum selesai. Jadi sebagian baris konfigurasi ada tanda pagar #.
Patokan sederhana : loader.conf saat booting pertamakali OS. Sedang rc.conf servis atau konfigurasi setelah booting. Sedang sysctl.conf urusan dengan kernel saat OS sedang jalan. Konfigurasi dengan kernel sebaiknya letakkan di sysctl.conf.
Kernel punya fasilitas autotune. Sebaiknya hanya atur parameter kernel yang memang perlu dhttps://vermaden.wordpress.com/iubah. Parameter sisanya biar diatur otomatis oleh kernel itu sendiri.
[mic@Amnesia[mic@Amnesiac /usr/home/mic]$ cat /boot/loader.conf
kern.vty=vt
autoboot_delay=4
#boot_mute=”YES”
#loader_logo=”NONE”
#loader_menu_frame=”NONE”
#screen.font=”6×12″
vfs.zfs.prefetch_disable=1
kern.geom.label.disk_ident.enable=”0″
kern.geom.label.gptid.enable=”0″
cryptodev_load=”YES”
zfs_load=”YES”
#linux_enable=”YES”
acpi_video_load=”YES”
acpi_ibm_load=”YES”
# Shared memory, max process increases
kern.ipc.shmseg=”1024″
kern.ipc.shmmni=”1024″
kern.maxproc=”100000″
# Load MMC/SD card-reader support
mmc_load=”YES”
mmcsd_load=”YES”
sdhci_load=”YES”
# Access ATAPI devices through the CAM subsystem
#atapicam_load=”YES”
# Filesystems in Userspace
fuse_load=”YES”
# Intel Core thermal sensors
coretemp_load=”YES”
# In-memory filesystems
tmpfs_load=”YES”
# Asynchronous I/O
aio_load=”YES”
# Handle Unicode on removable media
libiconv_load=”YES”
libmchain_load=”YES”
cd9660_iconv_load=”YES”
msdosfs_iconv_load=”YES”
# ZFS: the maximum upper limit of RAM used for dirty, “modified”, uncommitted
# data which vfs.zfs.dirty_data_max can not exceed. The server has 64GB of RAM
# in which we will allow up to 16GB, if needed, to cache incoming data before
# TXG commit to the PCIe NVMe array. Note: the dirty_data cache is part of the
# Adaptive Replacement Cache (ARC) and can be viewed in “top” as the “Anon”
# value under ARC.
#
vfs.zfs.dirty_data_max_max=”17179869184″ # (default 4294967296, 4GB)
# ZFS: max percentage of total server RAM allowed to be dirty (Anon in top).
# 25% of 64 GBytes of RAM is 16MB which is equal to vfs.zfs.dirty_data_max_max .
#
vfs.zfs.dirty_data_max_percent=”25″ # (default 10 percent)
vboxdrv_load=”YES”
[mic@Amnesiac /usr/home/mic]$ cat /etc/rc.conf
sendmail_enable=”NONE”
hostname=”Amnesiac”
wlans_iwn0=”wlan0″
ifconfig_wlan0=”WPA DHCP”
sshd_enable=”YES”
powerd_enable=”YES”
dbus_enable=”YES”
#powerd_flags=”-a hiadaptive -b adaptive”
# Set dumpdev to “AUTO” to enable crash dumps, “NO” to disable dumpdev=”AUTO”
zfs_enable=”YES”
#kld_list=”i915kms”
#kld_list=”mac_priority”
kld_list=”nvidia-modeset”
devfs_system_ruleset=”devfsrules_common”
fsck_y_enable=”YES”
growfs_enable=”YES”
#syncthing_enable=”YES”
#jackd_enable=”YES”
#jackd_user=”mic”
#jackd_rtprio=”YES”
#jackd_args=”-r -d oss -r48000 -p1024 -n2 -w16 -i4 -o8 -C /dev/dsp0 -P /dev/dsp0″
ifconfig_em0=”DHCP”
#kld_list=”${kld_list} mac_priority”
vboxnet_enable=”YES”
[mic@Amnesiac /usr/home/mic]$ cat /etc/sysctl.conf
# $FreeBSD$
#
# This file is read when going to multi-user and its contents piped thru
# “sysctl” to adjust kernel values. “man 5 sysctl.conf” for details.
#
# Uncomment this to prevent users from seeing information about processes that
# are being run under another UID.
#security.bsd.see_other_uids=0
#kern.securelevel=1
vfs.zfs.min_auto_ashift=12
vfs.usermount=1
# Enable shared memory
kern.ipc.shm_allow_removed=1
# Enhance desktop responsiveness under high CPU usage
kern.sched.preempt_thresh=224
# Increase VFS read-ahead (better disk performance – particularly for SSDs)
# FreeBSD Default: 64
vfs.read_max=128
kern.coredump=0
hw.syscons.bell=0
kern.vt.enable_bell=0
# ZFS DELETE FUCKUP TRIM (DEFAULT: 64)
vfs.zfs.vdev.trim_max_active=1
# ZFS ARC TUNING
vfs.zfs.arc.min=134217728
vfs.zfs.arc.max=536870912
# ZFS ARC FREE ENFORCE @ 1024 \* 1024 \* 3
vfs.zfs.arc_free_target=3145728
# DESKTOP QUANTUM FOR TIMESHARE THREADS IN stathz TICKS (12) NomadBSD
kern.sched.slice=3
# PERFORMANCE/ALL SHARED MEMORY SEGMENTS WILL BE MAPPED TO UNPAGEABLE RAM
kern.ipc.shm_use_phys=1
# Enhance shared memory X11 interface
kern.ipc.shmmax=1000000000
kern.ipc.shmall=256000
kern.maxfiles=1000000
#kern.maxvnodes=1000000
#kern.maxfilesperproc=500000
#kern.maxprocperuid==500000
#
# KDE5
net.local.stream.recvspace=65536
net.local.stream.sendspace=65536
#Default brightness
hw.acpi.video.lcd0.brightness=60
#
#hw.snd.verbose=2
#hw.snd.default_auto=0
#hw.snd.default_unit=1
#hw.snd.latency=0
#hw.snd.latency_profile=0
#kern.timecounter.alloweddeviation=0
#dev.pcm.3.play.vchans=0
#dev.pcm.3.rec.vchans=0
#dev.pcm.3.bitperfect=1
#dev.pcm.3.play.vchanformat=s24le:2.0
#dev.pcm.3.play.vchanrate=48000
#dev.pcm.3.rec.vchanformat=s24le:2.0
#dev.pcm.3.rec.vchanrate=48000