Корректное завершение работы компьютера через терминал

Многим известны команды shutdown, halt, reboot, но у них есть как минимум два недостатка:

  • для запуска требуются административные привилегии (можно решить через sudoers);
  • хотя для железа завершение работы компьютера происходит вполне корректно, этого нельзя сказать о пользовательских программах: все программы, сохраняющие информацию при выходе из них (например, плееры), скорее всего, потеряют все изменения при таком выключении.

К счастью, мы живём в просвещённый век D-Bus, где это уже решено.