# Boot settings and rebooting

HP servers can boot in various ways and from many devices. The functions in this section let you manipulate bootup settings and reboot the server and the iLO. If you need to power off the server hard, take a look at the power documentation.

class `hpilo.``Ilo`
  `reset_rib`()

    Reset the iLO/RILOE board

  `reset_server`()

    Power cycle the server

  `cold_boot_server`()

    Force a cold boot of the server

  `warm_boot_server`()

    Force a warm boot of the server

  `get_one_time_boot`()

    Get the one time boot state of the host

        >>> ilo.get_one_time_boot()
        normal

  `set_one_time_boot`(device)

    Set one time boot device, device should be one of normal, floppy, cdrom, hdd, usb, rbsu or network. Ilo 4 also supports EMB-MENU (Displays the default boot menu), EMB-ACU (Boots into ACU), EMB-HPSUM-AUTO (Boots HPSUM in automatic update mode), EMB-DIAGS (Launches Insight Diagnostics for Linux in interactive mode) and RBSU (Boots into the system RBSU)

  `get_persistent_boot`()

    Get the boot order of the host. For uEFI hosts (gen9+), this returns a list of tuples (name, description. For older host it returns a list of names

        >>> ilo.get_persistent_boot()
        ['cdrom', 'floppy', 'usb', 'hdd', 'network']

  `set_persistent_boot`(devices)

    Set persistent boot order, devices should be comma-separated

  `get_supported_boot_mode`()

        >>> ilo.get_supported_boot_mode()
        LEGACY_ONLY

  `get_current_boot_mode`()

    Get the current boot mode (legaci or uefi)

        >>> ilo.get_current_boot_mode()
        LEGACY

  `get_pending_boot_mode`()

    Get the pending boot mode (legaci or uefi)

        >>> ilo.get_pending_boot_mode()
        LEGACY

  `set_pending_boot_mode`(boot_mode)

    Set the boot mode for the next boot to UEFI or legacy