FMADIO CLI is a easy console only switch like interface to configure / operate and monitor the FMADIO devices.
Running the console using the below command
fmadiocli
This will return a prompt as shown below
fmadio@fmadio100v2-228U:~$ fmadiocli
fmad fmadlua Oct 17 2024 (/opt/fmadio/bin/fmadiolua --nocal /opt/fmadio/bin/fmadiocli )
Disable cycle calibration
[Thu Oct 17 01:22:37 2024] _____ .___.__
[Thu Oct 17 01:22:37 2024] _/ ____\_____ _____ __| _/|__| ____
[Thu Oct 17 01:22:37 2024] \ __\/ /\ \__ \ / __ | | | / _ \
[Thu Oct 17 01:22:37 2024] | | | Y Y \ / __ \_/ /_/ | | |( <_> )
[Thu Oct 17 01:22:37 2024] |__| |__|_| /(____ /\____ | |__| \____/
[Thu Oct 17 01:22:37 2024] \/ \/ \/
[Thu Oct 17 01:22:37 2024] ============================================
[Thu Oct 17 01:22:37 2024] -+ Packets confiscated by Customs +-
[Thu Oct 17 01:22:37 2024]
[Thu Oct 17 01:22:37 2024] type 'help' for command information
[Thu Oct 17 01:22:37 2024]
[Thu Oct 17 01:22:37 2024] History: 576
[Thu Oct 17 01:22:37 2024] >
The console is TAB aware
Help
Running help
returns the full list of all commands avaliable
[Thu Oct 17 01:23:10 2024] > help
[Thu Oct 17 01:23:11 2024] search []
[Thu Oct 17 01:23:11 2024] config : enter configuration mode
[Thu Oct 17 01:23:11 2024] config analytics 247-disable <schedule row name> : configures the analytics name to NOT run 247
[Thu Oct 17 01:23:11 2024] config analytics 247-enable <schedule row name> : configures the analytics name to run 247
[Thu Oct 17 01:23:11 2024] config analytics add <analytics name> : Creates a new analytics scheduler row
[Thu Oct 17 01:23:11 2024] config analytics del <schedule row name> : Deletes a analytics scheduler row
[Thu Oct 17 01:23:11 2024] config analytics schedule mod <schedule row name> : configures the analytics scheduler
[Thu Oct 17 01:23:11 2024] config capture flush <mode> <timeout secconds> : configures flush behaviour
[Thu Oct 17 01:23:11 2024] config capture roll <hours> : configures roll behaviour
[Thu Oct 17 01:23:11 2024] config capture schedule del <schedule row name> : Deletes a capture scheduler row
[Thu Oct 17 01:23:11 2024] config capture schedule mod <schedule row name> : configures the capture scheduler
[Thu Oct 17 01:23:11 2024] config capture schedule new <schedule row name> : Creates a new capture scheduler row
[Thu Oct 17 01:23:11 2024] config capture start <capture name> : Starts a capture
[Thu Oct 17 01:23:11 2024] config capture stop : Stops a capture
[Thu Oct 17 01:23:11 2024] config disk format : runs a quick format on the entire disk
[Thu Oct 17 01:23:11 2024] config disk lock : lock all data drives with TCG OPAL2
[Thu Oct 17 01:23:11 2024] config disk no-lock : disable locking on all data drives with TCG OPAL2
[Thu Oct 17 01:23:11 2024] config disk password : sets the disks password with TCG OPAL2
[Thu Oct 17 01:23:11 2024] config disk sanitize : sanitizes all the disk via sed-utils TCG OPAL2
[Thu Oct 17 01:23:11 2024] config disk unlock : unlock all data drives with TCG OPAL2
[Thu Oct 17 01:23:11 2024] config interface dns <interface name> <dns> : sets the interfaces dns
[Thu Oct 17 01:23:11 2024] config interface fec <interface name> : forces fec setting on the specified interface
[Thu Oct 17 01:23:11 2024] config interface gateway <interface name> <gateway> : sets the interfaces gateway
[Thu Oct 17 01:23:11 2024] config interface ip <interface name> <ip address> : sets the interfaces IP address
[Thu Oct 17 01:23:11 2024] config interface mode <interface name> <disabled|static> : sets the interfaces IP mode static or disabled
[Thu Oct 17 01:23:11 2024] config interface netmask <interface name> <netmask> : sets the interfaces netmask
[Thu Oct 17 01:23:11 2024] config interface no fec <interface name> : disable forcing fec setting on the specified interface
[Thu Oct 17 01:23:11 2024] config interface no shutdown <interface name> : re-enables the specified interface
[Thu Oct 17 01:23:11 2024] config interface shutdown <interface name> : shutdown the specified interface
[Thu Oct 17 01:23:11 2024] config lxc add <container name> : adds the specified container to the system configuration
[Thu Oct 17 01:23:11 2024] config lxc attach <container name> : attaches tothe specified container
[Thu Oct 17 01:23:11 2024] config lxc boot <container name> : sets the boot flag of the lxc container
[Thu Oct 17 01:23:11 2024] config lxc del <container name> : removes the specified container to the system configuration
[Thu Oct 17 01:23:11 2024] config lxc desc <container name> "<description>" : sets human description
[Thu Oct 17 01:23:11 2024] config lxc no-boot <container name> : disables the boot flag of the lxc container
[Thu Oct 17 01:23:11 2024] config lxc start <container name> : starts the specified container
[Thu Oct 17 01:23:11 2024] config lxc stop <container name> : stops the specified container
[Thu Oct 17 01:23:11 2024] config pcap timestamp <capture port> <timestamp mode> : configures timestamp decoding behaviour
[Thu Oct 17 01:23:11 2024] config push lxc add <target name> : creates a new lxc push target
[Thu Oct 17 01:23:11 2024] config push lxc decap <target name> : Enable de-encapsulation for a push LXC target
[Thu Oct 17 01:23:11 2024] config push lxc del <target name> : deletes an lxc push target
[Thu Oct 17 01:23:11 2024] config push lxc desc <target name> "<description>" : set lxc push description
[Thu Oct 17 01:23:11 2024] config push lxc disable <target name> : lxc target disable
[Thu Oct 17 01:23:11 2024] config push lxc enable <target name> : lxc target enable
[Thu Oct 17 01:23:11 2024] config push lxc filter-bpf <target name> "<bpf>" : lxc target bpf filter. use double quotes around the expression
[Thu Oct 17 01:23:11 2024] config push lxc filter-frame <target name> "<frame>" : lxc target frame filter. use double quotes around the expression
[Thu Oct 17 01:23:11 2024] config push lxc from-now <target name> : lxc target start from the current capture position
[Thu Oct 17 01:23:11 2024] config push lxc from-start <target name> : lxc target start from the begining of the capture (not current capture position)
[Thu Oct 17 01:23:11 2024] config push lxc no-decap <target name> : Disable de-encapsulation for a push LXC target
[Thu Oct 17 01:23:11 2024] config push lxc restart : starts the push pcap processes
[Thu Oct 17 01:23:11 2024] config push pcap add <target name> : creates a new push pcap target
[Thu Oct 17 01:23:11 2024] config push pcap cpu <target name> <cpu number> : sets the cpu assignment for this split
[Thu Oct 17 01:23:11 2024] config push pcap del <target name> : deletes the specified push pcap target
[Thu Oct 17 01:23:11 2024] config push pcap del_all : deletes all pcap targets
[Thu Oct 17 01:23:11 2024] config push pcap filename <target name> <format> : sets the filename format of each split
[Thu Oct 17 01:23:11 2024] config push pcap filter-bpf <target name> "<bpf filter>" : sets the splits bpf filter
[Thu Oct 17 01:23:11 2024] config push pcap filter-frame <target name> "<frame filter>" : sets the splits frame filter
[Thu Oct 17 01:23:11 2024] config push pcap name <target name> <new name> : modifies an existing push pcap name
[Thu Oct 17 01:23:11 2024] config push pcap path <target name> <write path> : sets the write path of the push pcap
[Thu Oct 17 01:23:11 2024] config push pcap restart : starts the push pcap processes
[Thu Oct 17 01:23:11 2024] config push pcap split-size <target name> <size> : sets the split size
[Thu Oct 17 01:23:11 2024] config push pcap split-time <target name> <time> : sets the pcap split time
[Thu Oct 17 01:23:11 2024] config ring add <ring name> : create an lxc ring
[Thu Oct 17 01:23:11 2024] config ring del <ring name> : deletes an lxc ring
[Thu Oct 17 01:23:11 2024] config ring desc <ring name> <description> : sets the description for an lxc ring
[Thu Oct 17 01:23:11 2024] config security auth <model> : configures the security authentication model
[Thu Oct 17 01:23:11 2024] config security http <true|false> : configures enabling un-encrypted HTTP
[Thu Oct 17 01:23:11 2024] config security timeoutSSH <#s|#m|#h|disable> : configures idle timeout for SSH
[Thu Oct 17 01:23:11 2024] config security timeoutWWW <#s|#m|#h|disable> : configures session timeout for WWW
[Thu Oct 17 01:23:11 2024] config system fpga firmware <capture-2x100G capture-2x40G capture-8x10G> : configures the system firmware to the specified port speed (requires reboot)
[Thu Oct 17 01:23:11 2024] config timezone "<city name>" : sets the timezone of the system
[Thu Oct 17 01:23:11 2024] config userlist add <user name> : add a new web user
[Thu Oct 17 01:23:11 2024] config userlist del <user name> : delete a new web user
[Thu Oct 17 01:23:11 2024] config userlist password : sets the specified users web password
[Thu Oct 17 01:23:11 2024] config userlist permission <user name> <full|user> : sets the specified userlevel permission
[Thu Oct 17 01:23:11 2024] copy backup-config startup-config : copies the backup config to startup-config (requires reboot)
[Thu Oct 17 01:23:11 2024] copy factory-config startup-config : copies the factory config to startup-config (requires reboot)
[Thu Oct 17 01:23:11 2024] copy running-config backup-config : copies the current config to the backup config
[Thu Oct 17 01:23:11 2024] copy running-config factory-config : copies the current config to the factory config
[Thu Oct 17 01:23:11 2024] exit : Exit the shell
[Thu Oct 17 01:23:11 2024] help : Command Line Help Info
[Thu Oct 17 01:23:11 2024] history : shows all command history
[Thu Oct 17 01:23:11 2024] show analytics schedule : Displays the current analytics schedule (if any)
[Thu Oct 17 01:23:11 2024] show capture flush : Displays the current capture flush behaviour
[Thu Oct 17 01:23:11 2024] show capture list : Displays all captures on the current file system
[Thu Oct 17 01:23:11 2024] show capture roll : Displays the current capture roll behaviour
[Thu Oct 17 01:23:11 2024] show capture schedule : Displays the current capture schedule (if any)
[Thu Oct 17 01:23:11 2024] show capture status : Displays the current capture status
[Thu Oct 17 01:23:11 2024] show disk status : shows current disk status
[Thu Oct 17 01:23:11 2024] show interface counter : shows all capture interfaces counters
[Thu Oct 17 01:23:11 2024] show interface ip : shows all capture interfaces ip state
[Thu Oct 17 01:23:11 2024] show interface status : shows all capture interfaces status
[Thu Oct 17 01:23:11 2024] show lxc config <container> : shows lxc container configuration
[Thu Oct 17 01:23:11 2024] show lxc status : shows all lxc containers status
[Thu Oct 17 01:23:11 2024] show pcap timestamp : Displays the current capture timestamp behaviour
[Thu Oct 17 01:23:11 2024] show push lxc status : shows push lxc configuration
[Thu Oct 17 01:23:11 2024] show push pcap status : shows push pcap configuration
[Thu Oct 17 01:23:11 2024] show push schedule : Displays the current push schedule (if any)
[Thu Oct 17 01:23:11 2024] show ring status : shows currently configured rings
[Thu Oct 17 01:23:11 2024] show security : shows the security access model
[Thu Oct 17 01:23:11 2024] show timezone : shows the current timezone
[Thu Oct 17 01:23:11 2024] show userlist : Displays web users
[Thu Oct 17 01:23:11 2024] >
Additional help and documentation can be found using
<command> help
For example to get further information on the command
show interface status
Can run as shown below
[Thu Oct 17 01:24:46 2024] > show interface status help
[Thu Oct 17 01:24:47 2024] search [show interface status]
[Thu Oct 17 01:24:47 2024]
[Thu Oct 17 01:24:47 2024] Example Usage:
[Thu Oct 17 01:24:47 2024] > show interface status : shows the status of all interfaces
[Thu Oct 17 01:24:47 2024]
[Thu Oct 17 01:24:47 2024] >
History
FMADIO CLI keeps a full history, this can be viewed using
history
Example is shown below
[Thu Oct 17 01:25:24 2024] > history
Tue Dec 5 12:57:04 2023 | config push lxc restart
Tue Dec 5 12:57:09 2023 | show capture status
Tue Dec 5 12:57:11 2023 | show capture status
Tue Dec 5 12:59:03 2023 | config push lxc restart
Wed Dec 6 13:34:32 2023 | show push lxc
.
.
The history file is located in
/opt/fmadio/etc/fmadiocli.history