m4_changequote()
kathara-lstart(1) -- Start a Kathara network scenario
=============================================

## SYNOPSIS

`kathara lstart` [`-h`] [`--noterminals` \| `--terminals` \| `--privileged`]  
[`-d` <DIRECTORY>] [`-F`] [`-l`] [`-o` [<OPTION> [<OPTION> ...]]] [`--xterm` <XTERM>]  
[`--print`]  [`--no-hosthome` \| `--hosthome`] [`--no-shared` \| `--shared`] [<DEVICE_NAME> [<DEVICE_NAME> ...]]


## DESCRIPTION

In order to ease setting up complex network with Kathara it is possible to completely describe it into special configuration files, creating a so-called **network scenario**. The network scenario can be started with a single command as if it were a virtual network 'laboratory'.

Start a set of devices that are part of a Kathara network scenario and configures them according to the parameters contained in the network scenario description.
By default, all the devices that make up the network scenario are started. If a list of <DEVICE_NAME>s is provided, then only devices with a matching name and that are part of the network scenario are started.

The configuration of a Kathara network scenario consists of some files described in `kathara-lab.conf`(5), `kathara-lab.dep`(5), `kathara-lab.ext`(5) and directories whose names, locations and contents are described in `kathara-lab-dirs`(7).

`kathara-lab.ext`(5) is only available on Linux platforms and need root permissions to be used. In addition, terminals are not open automatically when this file is present. To connect to a device, use `kathara-connect`(1).

## OPTIONS

* `-h`, `--help`:
    Show a help message and exit.

* `--noterminals`:
    Start the network scenario devices without opening terminal windows.

    Override the default setting specified in `kathara.conf`(5) file.

* `--terminals`:
    Start the network scenario devices opening their terminal windows.

    Override the default setting specified in `kathara.conf`(5) file.

* `--privileged`:
    Start the devices in privileged mode. MUST BE ROOT FOR THIS OPTION.

* `-d` <DIRECTORY>, `--directory` <DIRECTORY>:
    Specify the folder containing the network scenario.

    Start the Kathara network scenario that is located inside <DIRECTORY>.  
    If no `-d` option is provided, assume the network scenario is located in the current directory.

* `-F`, `--force-lab`:
    Force the network scenario to start without a lab.conf or lab.dep file.

    As a native behaviour, Kathara starts a device for each directory that it finds in a designated path, by default the current directory. In order to prevent the user from accidentally starting random devices from a directory that does not contain a network scenario, lstart requires the presence of the `kathara-lab.conf`(5) file in the affected directory. If this file is not required for your setting, and you still want to launch your network scenario without creating it, you can use this option to force Kathara starting a network scenario in the affected directory.

* `-l`, `--list`:
    Show information about running devices after the network scenario has been started.

* `-o` [<OPTION> [<OPTION> ...]], `--pass` [<OPTION> [<OPTION> ...]]:
    Apply options to all devices of a network scenario during startup.

    Should be a list of double quoted strings, like `--pass "mem=64m" "image=kathara/frr"`.
    You can specify the same device options described in `kathara-lab.conf`(5).

* `--xterm` <XTERM>, `--terminal-emu` <XTERM>:
    Set a different terminal emulator application (Unix only).

    As an example: `gnome-terminal`(1). Override the default setting specified in `kathara.conf`(5) file. This option is ignored if used in conjunction with `--noterminals` or if `open_terminals` is set to false.

* `--print`, `--dry-mode`:
    Open the lab.conf file and check if it is correct (dry run).

* `--no-hosthome`, `-H`:
    Do not mount `/hosthome` directory inside devices.

    Do not mount the home directory of the current user inside devices. This is the default specified in `kathara.conf`(5) file.

* `--hosthome`:
    Mount `/hosthome` directory inside devices.

    Mount the home directory of the current user inside devices in the special directory `/hosthome`. This option makes the host filesystem accessible from inside devices, overriding the default setting specified in `kathara.conf`(5) file.

* `--no-shared`, `-S`:
    Do not mount `/shared` directory inside devices.

    By default, the `shared` directory inside the network scenario folder is mounted inside all devices in the special directory `/shared`. This option disables this behaviour, making the shared directory not accessible from inside devices. Overrides the default setting specified in `kathara.conf`(5) file.

* `--shared`:
    Mount `/shared` directory inside devices.

    Mount the `shared` directory inside the network scenario folder inside all devices on the special directory `/shared`. This is the default specified in `kathara.conf`(5) file.

* `DEVICE_NAME`:
    A list of device names. Instead of starting the whole network scenario, only specified devices are started.

m4_include(footer.txt)

## SEE ALSO

`kathara`(1), `kathara-lclean`(1), `kathara-lrestart`(1), `kathara-ltest`(1), `kathara-linfo`(1), `kathara-lab.conf`(5), `kathara-lab.dep`(5), `kathara-lab.ext`(5)
