In this tutorial, user iceflatline shows us how to replace MySQL with MariaDB in FreeBSD.
In my post on how to install and configure Apache, MySQL, PHP and phpMyAdmin on FreeBSD (FAMP) for basic local web development activities, one of the components is the MySQL database server. But what if you prefer to use MariaDB?
MariaDB is an open source alternative to MySQL, and available under the terms of the GPL v2 license. It is developed by the MariaDB community with oversight by the MariaDB Foundation. For all practical purposes MariaDB is a drop-in replacement for the same MySQL version. All commands, interfaces, libraries and APIs that exist in MySQL also exist in MariaDB. For example, MySQL 5.1 and MariaDB 5.1 are compatible, as are MySQL 5.5 and MariaDB 5.5. MariaDB 10.0 is the drop-in replacement for MySQL 5.6, and can also replace MySQL 5.5.
This post will use the aforementioned post on how to install and configure Apache, MySQL, PHP and phpMyAdmin on FreeBSD as an example implementation and demonstrate how to install and configure MariaDB as a replacement for MySQL. I strongly encourage you to test these steps first before using them on your development or production environment. At the very least you should backup your database(s).
The versions of software discussed in this post are as follows:
- FreeBSD 10.1-RELEASE (running as a guest OS under VMWare ESXi hypervisor 6.0.0
- apache24 2.4.12
- mysql56-server 5.6.24
- mariadb55-server 5.5.43
- mariadb100-server 10.0.17
- mod_php56 5.6.11
- php56 5.6.10
- php56-extensions 1.0 [Read more…]
NVIDIA Linux Graphics developer aplattner has released the latest update to their NVIDIA driver. For those using the Tesla K80 or GeForce 910M GPUs, support has been added for FreeBSD. Follow the link below to download for your distribution.
Release highlights since 352.21:
- Added support for the following GPU:
- Tesla K80
- GeForce 910M
- Fixed a bug that caused poor video post-processing performance in VDPAU when operating on a large number of video streams simultaneously.
- Updated nvidia-installer to use modprobe(8) when leaving the NVIDIA kernel module loaded after installation, instead of insmod(8) or libkmod. This allows the kernel module to honor any configuration directives that apply to it in /etc/modprobe.d when it is loaded.
- Fixed a bug that allowed console messages from the Linux kernel to be drawn over the user interface of nvidia-installer.
NVIDIA Linux Graphics
Adrian Chadd, known for his extensive WiFI work, writes about his findings of NUMA (non-uniform memory access) in FreeBSD.
I just committed “NUMA” to FreeBSD. Well, no, I didn’t. I did almost no actual NUMA-y work in FreeBSD. I just exposed the existing NUMA stuff in FreeBSD out and re-enabled it.
FreeBSD-9 introduced basic NUMA awareness in the physical allocator (sys/vm/vm_phys.c.) It implemented first-touch page allocation, and then fell back to searching through the domains, round-robin style. It wasn’t perfect, for some workloads it was apparently okay. But it had some shortcomings – it wasn’t configurable, UMA and other subsystems didn’t know about NUMA domains, and the scheduler really didn’t know about NUMA domains. So I’m sure there are plenty of workloads which it didn’t work for.
That was all ripped out before FreeBSD-10. FreeBSD-10 NUMA just implements round-robin physical page allocation. It still tracks the per-domain physical memory regions, but it doesn’t do any kind of NUMA aware allocation. From what I can gather, it was removed until something ‘better’ would land.
However, nothing (yet) has landed. So I decided I’d take a look into it. I found that for a lot of simple workloads (ie, where you’re doing lots of anonymous memory allocation – eg, you’re doing math crunching) the FreeBSD-9 model works fine. It’s also a perfectly good starting point for experimenting.
So all my NUMA work in -HEAD does is provide an API to exactly the above. It doesn’t teach the kernel APIs about domain aware allocations – there’s currently no way to ask for memory from a specific domain when calling UMA, or contigmalloc, etc. The scheduler doesn’t know about NUMA, so threads/processes will migrate off-socket very quickly unless you explicitly limit things. Devices don’t yet do NUMA local work – the ACPI code is in there to enumerate which NUMA domain they’re in, but it’s not used anywhere just yet.
Then what is it good for?
FreeBSD user /u/aedigix shows us how to get Ethereum set up on FreeBSD. Ethereum is a virtualized platform for decentralized applications.
For go-ethereum If you install go 1.4 you can just do the following:
git clone email@example.com:ethereum/go-ethereum.git cd go-ethereum && git checkout tags/<latest stable> && make geth
For cpp-ethereum/solidity compiler This is a little bit more involved but I am able to build on FreeBSD 10 and 11 using the following steps:
Dependencies which should be available in Fedora’s yum repo, FreeBSD/Gentoo ports, etc….
llvm35 gcc48 cmake boost-all-1.55.0 ncurses automake libtool unzip gmp leveldb yasm miniupnpc readline curl cryptopp libmicrohttpd libjson++ argtable opencl ode npm doxygen gmake cmake
On FreeBSD I have to build jsoncpp and libjson-rpc-cpp manually with the following steps:
git clone firstname.lastname@example.org:open-source-parsers/jsoncpp.git cd jsoncpp && git checkout tags/1.6.2 mkdir build && cd build cmake -DCMAKE_CXX_FLAGS="-fPIC" .. gmake gmake install
cd libjson-rpc-cpp git checkout tags/v0.5.0 mkdir build && cd build cmake -DCMAKE_CXX_FLAGS="-fPIC" .. gmake gmake install
Then build cpp-ethereum:
git clone email@example.com:ethereum/cpp-ethereum.git cd cpp-ethereum && git checkout develop mkdir build && cd build cmake -DFATDB=1 -DUSENPM=1 -DETHASHCL=1 -DEVMJIT=1 -DLLVM_DIR=/usr/local/lib/llvm-3.5/share/llvm/cmake .. gmake -j8
The developers of OPNsense have released version 15.7.4. Changes noted are updated sudo, FreeBSD, languages, menu, firmware, and dashboard fixes, etc. Follow the link below to download the latest version.
another week it is, this time with a rather exciting TCP state fix in the FreeBSD kernel. We’ve also taken the time to work through most of the code base to eradicate code warnings and now enable them by default in the crash reporter. We’re half-expecting another stable update early next week just to make sure your infrastructure keeps running as smoothly as possible.
Here are the the full patch notes:
- updated sudo 1.8.14p3 , pcre 8.37_2 , and FreeBSD 10.1-RELEASE-p15 
- firmware: fix upgrade when using opnsense-devel package
- proxy: fix config write for multiple interfaces
- crash reporter: raise PHP log level to warnings after an extensive cleanup
- dashboard: made widgets translatable (contributed by Fabian Franz)
- firewall logs: usability improvements (contributed by Fabian Franz)
- languages: Simplified Chinsese 64% complete
- languages: German 40% complete
- menu: fixed navigation for PPPoE edit
Your OPNsense team
In this BSD Now episode, hosts Kris Moore and Allan Jude interview Ryan Lortie and Baptiste Daroussin regarding GNOME on BSD. They discuss the recent upstream developments made that allow GNOME to work more efficiently on BSD. Hit the play button below to tune in:
The developers of FreeBSD have made available version 10.2-BETA2. See below for the documented changes.
The second BETA build of the 10.2-RELEASE release cycle is now available. Installation images are available for: o amd64 GENERIC o i386 GENERIC o ia64 GENERIC o powerpc GENERIC o powerpc64 GENERIC64 o sparc64 GENERIC The image checksums follow at the end of this email. FreeBSD/arm SD card images are available for: o BEAGLEBONE o CUBOX-HUMMINGBOARD o GUMSTIX o RPI-B o PANDABOARD o WANDBOARD Note: For convenience for those without console access to supported arm devices, a default 'freebsd' user exists for ssh(1) login. The password is 'freebsd', which it is strongly recommended to change after gaining access to the system. Additionally, the 'root' user password is 'root', which is also recommended to change.
This short tutorial by user Vivek Gite (nixCraft) shows us how to figure out your FreeBSD version and patch level number.
How do I find out my FreeBSD server version and patch level of the installed system using command line option?
Tutorial details Difficulty Easy (rss) Root privileges No Requirements None Estimated completion time 1m
You can use any one of the following command to display the FreeBSD operating system version and patch level:a) freebsd-version command – Show the version and patch level of the installed system
b) uname command – Show information about the system
Say hello to freebsd-version command
The freebsd-version command appeared in FreeBSD version 10.0. To see the version and patch level of the installed kernel:
To see the version and patch level of the installed userland:
(Fig.01: freebsd-version and other commands in action)
You can see a system being repaired using a live CD:
mount -rt ufs /dev/ada0p2 /mnt
env ROOT=/mnt /mnt/bin/freebsd-version -ku
You can also use the following command to find out if FreeBSD kernel is running in 32bit or 64bit mode:
# getconf LONG_BIT
Old good uname command
Type the following command (it works on all versions of FreeBSD):
FreeBSD 10.1-RELEASE-p10 amd64
The developers of GhostBSD have made available version 10.1 BETA2. Some changes noted are hybrid ISO image for DVD/USB, XFCE re-added, UI improvement of installer partition editor, options to choose boot manager, and more.
We are pleased to announce the availability GhostBSD 10.1 BETA2 MATE & XFCE which is available on SourceForge for the amd64 and i386 architectures.
Before going further I will like to say a special thanks Ovidiu who recently join back the project and Andrea who join the project, they have help to make GhostBSD better, add up new feature and fixed issue.
Changes and fix between 10.1-BETA1 and 10.1-BETA2 include:
- GhostBSD ISO image is hybrid that can be install on DVD or USB stick
- XFCE as been added back to the project
- The installer partition editor have been improved at the UI and at the system level
- The user can chose to install the BSD boot manager, Grub boot manager or simply None and use their Linux Grub
- The installation process failed to copy has been improved and fix
- Software from pkg or ports can be now installed from live DVD/USB session
- PCDM Locales and Keyboard Layout are now functional
- Some Radon/ATI and Intel issue has been fix
- Qt development tool has been removed from the default system
- SpiderOak has been removed from the default system
Where to download:
The image checksums, hybrid ISO(DVD, USD) images are available here: