If I
sudo poweroff, I can see rc.shutdown being run (saying that all services are stopping, etc).If I
sudo reboot, none of the rc.shutdown output is generated (and I don't see some things executed in rc.shutdown.local as a test).sudo poweroff, I can see rc.shutdown being run (saying that all services are stopping, etc).sudo reboot, none of the rc.shutdown output is generated (and I don't see some things executed in rc.shutdown.local as a test). shutdown -r now signals init, which tears down services nicely (with real waits / cleanup as needed for each server process specified by rc.d/* files) and...reboot in Linux runs systemctl reboot and does the orderly shutdown. I think reboot on Linux is a wrapper for that. To power down a FreeBSD machine on architectures and systems that support power management, use shutdown -p now to turn the power off immediately. To reboot a FreeBSD system, use shutdown -r now. One must be root or a member of operator in order to run shutdown(8). One can also use halt(8) and reboot(8). Refer to their manual pages and to shutdown(8) for more information.
Normally, the shutdown(8) utility is used when the system needs to be halted or restarted, giving users advance warning of their impending doom and cleanly terminating specific programs.
The shutdown utility provides an automated shutdown procedure for super-users to nicely notify users when the system is shutting down, saving them from system administrators, hackers, and gurus, who would otherwise not bother with such niceties. In order to use the shutdown command, the user must have root privileges or be a member of the operator group.
As others said, making an assumption that FreeBSD is like Linux (or like Windows or like VMS) is unjustified. And the single most important thing about FreeBSD is that it has good documentation, because it is well engineered. As a consumer of FreeBSD, one has to read that documentation.This is a bit of a nightmare for the avalanche of Linux users who are ditching Linux for FreeBSD as we speak.
Underlying this is an important architectural observation, which is often forgotten by amateurs. An orderly shutdown is much less important than one thinks. Here's why: The system has to function correctly when it crashes hard, like someone pulls the power plug or the CPU just halts. So the things that are executed in an orderly shutdown have to be designed to be optional. They can make the system more efficient: for example, a restart becomes faster when the system was shutdown, while the restart can be slow, for example with fsck or log recovery when the system crashed. But the orderly shutdown can not affect correctness.This frivolity on the part of FreeBSD has wasted me time during the migration - running reboot and not knowing I'm not getting a proper shutdown.