VEOS Administrator Guide

VEOS is a multi-user Linux-based operating system for managing telecom services.
This guide contains basic operating principles, administration commands, and configuration examples.

Key VEOS features:

Compatibility with standard Linux commands and utilities

Management through the bash command shell (default)

File system compliant with the FHS standard

Initialization through systemd

Access control based on users and groups

1. Process management in VEOS

A process is a program loaded into the server memory and currently being executed. Processes are divided into two types:

Process type	Description	Examples
System	Ensure OS operation and services	systemd, kernel, sshd
User	Started on behalf of a user	bash, ls, cat

Commands for process management:

Action	Command	Note
View all processes	ps aux	Shows PID, CPU, memory
Process tree	pstree	Parent-child hierarchy
Run in background	command &	Add & at the end
Stop a process by PID	kill <PID>	Use kill -9 <PID> for forced termination

Background mode

A process can run without user interaction (in the background). Use & to move it to the background. If the process requires input, it will be stopped by the kernel until returned to normal mode.

Example

# Run a script in the background ./backup.sh & # View background jobs in the current session jobs

2. Working with the file system

VEOS uses a hierarchical Linux file system — a single tree starting from the root /. Different partitions and devices are mounted into directories (mount points).

2.1. Root directory structure

Most important directories:

Directory	Contents
/bin	Command shells and basic utilities
/boot	System kernel and bootloader
/dev	Device pseudo-files (created by udev)
/etc	Configuration files
/home	User home directories
/opt/vasexperts	VAS Experts products
/proc	Virtual FS with process information
/root	Administrator home directory
/sbin	System administration utilities
/tmp	Temporary files
/usr	User applications and libraries
/var	Variable data (logs, queues, cache)

2.2. Navigating the directory tree

Command	Action
pwd	Show the current directory
ls [directory]	List files (use the -l option for detailed output)
cd <directory>	Change directory
cd ..	Move one level up
cd /	Go to the root directory
Important: File and directory names are case-sensitive — test.txt and TEST.TXT are different files.

2.3. Disk and partition names

Devices are displayed in /dev/:

Device	Name
First disk	/dev/sda
Second disk	/dev/sdb
Disk partition	/dev/sda1, /dev/sda2, …

Minimum partitions required for VEOS installation:

Root partition /

swap partition (recommended size — from one to two times the amount of RAM)

Optional: separate partitions for /home, /var, /usr

3. The bash shell

Bash (Bourne Again Shell) is the primary shell in VEOS.

3.1. Useful keyboard shortcuts

Shortcut	Action
Ctrl+A	Move to the beginning of the line
Ctrl+U	Delete the entire line
Ctrl+C	Stop the current task
Ctrl+R	Search command history
Tab	Auto-complete command/file name

3.2. Command history

Command	Action
history	Show the list of recent commands
!!	Repeat the last command
!<number>	Execute the command with the specified number

3.3. Grouping and chaining commands

Operator	Purpose	Example
;	Sequential execution	cd /tmp; ls -la
\| (pipe)	Pass stdout of the first command as stdin to the second	ls \| grep .txt
>	Redirect stdout to a file (overwrite)	echo hello > file.txt
>>	Append stdout to the end of a file	echo world >> file.txt
<	Use a file as stdin	sort < file.txt

Example of a pipe with sorting:

# Sort the list of files in /etc in reverse order ls -la /etc | sort -r

4. User and permission management

Users are identified by UID (numeric identifier), groups by GID.

4.1. Basic commands

Action	Command	Note
View information about the current user	id	Shows UID, GID, groups
Change password	passwd	The current user changes their own password
Change another user's password	passwd <login>	Root only
Add a user	useradd <login>	Then set a password using passwd
Modify user parameters	usermod <options> <login>	For example, -G wheel
Delete a user	userdel <login>	Add -r to remove the home directory

4.2. Groups and permissions

Each user belongs to at least one group (with the same name).
Additional groups are assigned using usermod -G.

Example of adding a user to the wheel group (for sudo access):

usermod -G wheel test

View user groups:

id test
Attention: Most privileged utilities in VEOS use the SGID bit rather than SUID. Be careful when changing group permissions on system directories.

5. Superuser mode (root)

The superuser (root) has unrestricted access to all files and processes.

5.1. The ''su'' command

Command	Result
su -	Full login as root (with root environment)
su	Only changes the user, keeps the current environment (not recommended)

Why su - is important:
Without the hyphen, the $PATH and $HOME variables remain from the regular user, and commands from /sbin and /usr/sbin may be unavailable.

5.2. The ''sudo'' command

Allows executing individual commands as root without fully switching users.
To use sudo, the user must belong to the wheel group.

6. systemd initialization system

systemd is the primary initialization system in VEOS. It starts services in parallel and tracks dependencies.

6.1. Basic service management commands

Action	Command (systemd)	Sysvinit equivalent
Start a service	systemctl start <service>	service <service> start
Stop a service	systemctl stop <service>	service <service> stop
Restart a service	systemctl restart <service>	service <service> restart
View service status	systemctl status <service>	service <service> status
Enable autostart	systemctl enable <service>	chkconfig <service> on
Disable autostart	systemctl disable <service>	chkconfig <service> off

Example for the fastdpi service:

systemctl start fastdpi.service systemctl status fastdpi.service systemctl enable fastdpi.service

6.2. Viewing logs (journal)

Command	Action
journalctl	Show the full system journal
journalctl -b	Show logs only from the current boot
journalctl -f	Follow new messages (similar to tail -f)
journalctl -u <service>	Logs for a specific service

Example:

journalctl -u fastdpi.service -b

7. Frequently asked questions (FAQ)

Question: Which command shell is used in VEOS by default?
Answer: bash. You can check it using echo $SHELL.

Question: How do I obtain root privileges with the full environment?
Answer: Run su -. Make sure to include the hyphen.

Question: What is systemd and how is it better than sysvinit?
Answer: systemd starts services in parallel, which speeds up boot time, and it does not stop the entire process if one service hangs.

Question: Which two hard disk partitions are required for VEOS?
Answer: The root partition / and the swap partition.

Question: How do I view logs for a specific service?
Answer: Use journalctl -u service_name.service.

Question: Can sudo be used in VEOS?
Answer: Yes, if the user is added to the wheel group. Example: sudo systemctl restart fastdpi.

Document last reviewed:
Applicable VEOS version:
Author: