README.txt 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. System services
  2. ---------------
  3. "daemon"
  4. ...this word is used below. It means an application that when executed, runs
  5. continually in the background.
  6. The scripts in /etc/init.d are executed at bootup and shutdown to start and stop
  7. services.
  8. At bootup, the /etc/rc.d/rc.services script will run all executable scripts
  9. found in /etc/init.d, with the commandline parameter 'start'.
  10. At shutdown, the /etc/rc.d/rc.shutdown script will run all executable scripts
  11. found in /etc/init.d, with the commandline parameter 'stop'.
  12. Puppies built from the Woof build system after January 26, 2010, have System
  13. Service Management provided in the BootManager (see Sysytem menu).
  14. This Services Manager controls which of these scripts will run by setting or
  15. clearing their 'executable' flag -- a script flagged as executable will run,
  16. otherwise not.
  17. System Services Management
  18. --------------------------
  19. Most users do not normally need to disable any of the system services, however
  20. sometimes there might be a need.
  21. Each service uses CPU and memory resources, so with a slow CPU there may be
  22. some noticeable gain in not running services that are not needed.
  23. On rare occasions a service may cause trouble, so needs to be disabled.
  24. Here are some notes on particular services:
  25. cups
  26. ----
  27. This runs the CUPS daemon 'dbusd', required for printing. Leave this enabled unless
  28. you don't need to print.
  29. messagebus
  30. ----------
  31. Runs the daemon 'dbusd'.
  32. DBUS is a method for applications to communicate with one another. Only certain
  33. applications use this, and most puppies are built with apps that don't.
  34. If 'messagebus' script is present, it probably means some application is installed
  35. that needs DBUS. An example is 'gecko-mediaplayer' (browser plugin) that uses DBUS
  36. to communicate with 'gnome-mplayer' (multimedia player). So, unless you know
  37. that no apps require this, leave it enabled.
  38. rc.acpi
  39. -------
  40. Runs the daemon 'acpid'.
  41. This is a daemon that provides certain ACPI management functions. Puppy will
  42. still work without it.
  43. rc.firewall
  44. -----------
  45. In most puppies this scipt is actually located at /etc/rc.d. If you have Internet
  46. access then this is essential to provide protection. It doesn't actually launch
  47. any daemon, only loads kernel modules, so runtime resource usage is low.
  48. The only time that you might want to disable it is when testing the Internet
  49. connection.
  50. slmodem
  51. -------
  52. Runs the daemon 'slmodemd'.
  53. This provides support for some analog dialup modems. There are reports that
  54. this can conflict with sound on some PCs, so if you don't use an analog modem
  55. for Internet access, or a different modem driver, consider disabling this.
  56. start_cpu_freq
  57. --------------
  58. This is not a daemon, it just loads kernel modules for "ondemand" CPU frequency
  59. scaling and activates it. This is desirable for modern netbooks and laptops, as
  60. it reduces power consumption and CPU temperature. If you disable this, then the
  61. CPU will run continuously at its maximum frequency, which is probably fine for
  62. desktop PCs.
  63. Note that at the time of writing, the 'start_cpu_freq' script exits immediately
  64. without activating ondemand if the PC BIOS is older than 2006 -- this is because
  65. many older CPUs don't work well with ondemand frequency scaling.
  66. sys_logger
  67. ----------
  68. This runs the daemons 'syslogd' and 'klogd', which log kernel and application
  69. events (espcially error messages) to various log files, mostly to
  70. /var/log/messages. This can be disabled and Puppy will still work.
  71. udev
  72. ----
  73. Runs the daemons 'udevd' and 'pup_event_frontend_d'.
  74. This is a mechanism that receives information about hardware events from the kernel,
  75. such as a USB pen drive being plugged in or removed. If you don't want automatic
  76. detection of hardware changes while Puppy is running, Puppy will still work
  77. and you will save quite a lot of CPU usage and resources -- worth considering
  78. this one on a very slow CPU.
  79. This one is different from those listed above, as 'udevd' is essential during
  80. bootup. However, it can be killed after bootup -- it involves the daemon 'udevd'
  81. and the daemon 'pup_event_frontend_d' and if disabled these two are killed when
  82. X is started. The technical description is that when X starts, /root/.xinitrc
  83. runs, which launches /sbin/pup_event_frontend_d -- look in that latter script
  84. and you will see that it reads /etc/eventmanager which has a variable 'BACKENDON'
  85. that can be set to kill udevd and pup_event_frontend_d.
  86. There is a GUI manager for this, the EventManager (see System menu), and changing
  87. the 'udev' checkbox will cause the EventManager to run.
  88. Technical notes
  89. ---------------
  90. At startup, the system services are executed by /etc/rc.d/rc.services, which
  91. in turn is called from /etc/rc.d/rc.sysinit.
  92. At shutdown, the system servcies are executed (with the 'stop' parameter) by
  93. /etc/rc.d/rc.shutdown.
  94. Puppy does not have runlevels (basically because Busybox doesn't, at least that
  95. was the original reason). Normal Linux distros would have a list of services to
  96. start for each runlevel, but apart from not having runlevels Puppy also only
  97. runs a very minimum essential set of services, that most users would not want
  98. to tamper with.
  99. Note that /etc/rc.d/init.d is a symlink to /etc/init.d
  100. Note, the scripts in /etc/init.d can have any name, but must have their executable
  101. flag set. Any file that does not have the 'x' flag set will be ignored.
  102. Event Management, which is mostly concerned with hardware-related detection and
  103. configuration while X is running, is described in more detail on this web page:
  104. http://puppylinux.com/technical/event-management.htm
  105. Regards,
  106. Barry Kauler
  107. Jan. 2010