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:
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 |
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.
# Run a script in the background ./backup.sh & # View background jobs in the current session jobs
VEOS uses a hierarchical Linux file system — a single tree starting from the root /.
Different partitions and devices are mounted into directories (mount points).
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) |
| 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 |
test.txt and TEST.TXT are different files.
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:
/swap partition (recommended size — from one to two times the amount of RAM)/home, /var, /usrBash (Bourne Again Shell) is the primary shell in VEOS.
| 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 |
| Command | Action |
|---|---|
history | Show the list of recent commands |
!! | Repeat the last command |
!<number> | Execute the command with the specified number |
| 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
Users are identified by UID (numeric identifier), groups by GID.
| 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 |
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
The superuser (root) has unrestricted access to all files and processes.
| 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.
Allows executing individual commands as root without fully switching users.
To use sudo, the user must belong to the wheel group.
systemd is the primary initialization system in VEOS. It starts services in parallel and tracks dependencies.
| 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
| 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
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: 2026-05-12
Applicable VEOS version: 8.6 and later
Author: VAS Experts