Tag Archives: linux

Basic Linux Commands for Beginners to Advanced

Dear friends, the big day has finally arrived. If you are reading basic Linux commands for beginners I suppose that you have already read our previous article, Linux tutorial for beginners, and if not yet I suggest you have a look at it in order to be on the same level otherwise continue reading. You will get the chance to write your first command in the console! Okay, not too stressed?

I assure you, we will start with simple things to become familiar with the console. We’ll really see the ABC, the basic survival guide of kits.

Basic Linux Commands for beginners

Then, let us see what this article is going to cover.

  • First Commands on Linux command Line
  • Understand Super User on Linux
  • Commands & parameters
  • File operation Commands
  • Directory Commands
  • account manager commands
  • Permission Commands
  • System Command
  • Networking commands

What is the Linux shell?

Before we continue let me remind you what a Linux shell is. A Linux shell is a command-line interpreter or shell that provides a traditional user interface for the Linux operating system and for Linux-like systems. The shell understands plenty of shell commands and their options which change their action. The typical syntax of shell command looks like this: command –option argument (parameter).

In our previous article, we saw the history of Linux and other things, we also discussed Linux distributions and I’m very sure you have chosen what you found the best for you. Also, if you weren’t able to choose a distribution of your choice, you might find this article interesting for you, the top 6 best Linux operating systems for hacking and penetration testing.

First basics Linux commands for Beginners.

Then, the time of testing your first command is now; open your Linux command line to write your first command. Also, know that for my side I use Kali Linux and all command you will find on this article was tested on kali.

This is a command prompt. It is a message that prompts you to enter a command by giving you at the same time a lot of information. This command prompt is displayed before each command you type. 

Now let us explain something about what you are seeing in command line.

Anonymous: The first element is your nickname. This is the user name under which you are logged. Indeed, know that you can create multiple user accounts on Linux

@: This symbol indicates nothing special. It’s the symbol “at’”.

DESKTOP-4312L0R: That’s the name of the computer on which you are working. In my case it’s called DESKTOP-4312L0R, but I could give any name during OS installation.

~: That’s the folder where you currently are. You can also navigate folder to folder in the console and it’s very useful that you always be reminded where you are before each command.

$: Also, that symbol is very important, because it shows you your authority level. This symbol means you are currently a normal user with limited rights. If you are curious and you want to know why limited rights read the previous post about Linux tutorial for beginners-Linux guide in 2021.

Tasksel: This is a command to install some additional Linux components.

Understand Super User in Linux

In this part, we are going to see who is a root. Then, let us see what really Superuser means. know that in some distribution of Linux you are not allowed to log in as a superuser because of the security matters, the reason why by default Linux let you log in as a normal user.

Then, once you have log in, you can now run commands as a root but first, you have to run the command sudo su, and then it will ask you to confirm with the password. When typing a password it won’t show if you are typing, but if you write the right password confirm with the button enter. 

$: This symbol means you are currently using a user “normal” account with limited rights (he cannot change the most important system files).

Also, if the symbol is “#” that mean you are in super user mode. That is to say, you are connected under the pseudonym “root”.The root is the master who has the right to do everything on the computer he can even run harmful commands.

parameters & Basic Linux Commands .

Command: It is a directive to a computer program acting as an interpreter of some kind, in order to perform a specific task. In Linux when you are typing command you are ordering the terminal to execute task for you.

Example: mkdir genius – here you ask the computer to create a folder named genius.

Parameters: Parameters are options that are written after the command. The command and parameters are separated by a space. The parameters themselves can contain spaces, letters, numbers … a bit of everything, really. There is no real rule on how the settings, but fortunately programmers have adopted a sort of “agreement” so that we can recognize the different types of parameters.

Also, know that there are two differents of parameters.

  • Short parameters: The most common parameters are constituted by a single letter preceded by a dash. For instance: -d, –l, –a.

If you have to give several parameters, you can do it like this: -d, –a, –U, –h. Also, you have to know that each parameter has different meanings.

  • Long parameters: The parameters consist of several letters are preceded by two dashes like this: –all, –version, –help

Commands and parameters Examples

Then, let’s have a further look about the commands and their parameters.

  1. Su –l: switch user, (su:  login as the root super user and –l: is a parameter meaning “login”).
  2. Ls a: list all contents, (ls: list content and –a: is a parameter meaning “all contents”.
  3. rm -ri genius: (rm: removes a file or a directory, ri: is a parameter meaning remove a non-empty directory and its contents, and genius is the name of the directory to remove.)
  4. usermod -l anonymous genius: (usermod: modify an existing user account, -l: is a parameter meaning “login name change”, anonymous: is the old user name, and genius: is the new user name we want to set).
  5. whoami: shows the current user name, the output is “Anonymous”

File operation Basic Linux Commands

Then, let discuss how we can manage files on CL. Managing files on the Linux command line is not as complicate as beginners may think.

  • cp myfile/genius: the command cp: copy, myfile: is the name of file you want to copy, and genius: is the directory where you want to copy myfile.
  • mv myfile/genius: mv: command to move a file, myfile: is the name of file you want to move, and genius: is the directory where you want to move myfile.
  • rm genius: rm: command to remove a file or directory, and genius: name of the file you want to remove. Also, you can use –ri as parameters if you want to remove a directory with all its contents.
  • wc myfile.txt: This is a command to count words on a given file. wc: show word count, and myfile.txt: Name and extension of the file.
  • lpr myfile.txt: the command of sending the myfile.txt to the printer. lpq command help to display the print queue
  • diff myfile1.txt myfile2.txt: the command diff: show the differences between two files, myfile1.txt: is the file to compare to myfile2.txt.
  • cmp file1.text file2.txt: this is the command to compare two files byte by byte.
  • Md5sum myfile.txt: this command will create an md5 checksum number. Output: f7tkgu5orj1fjt8kelc2os95nd57jf8r myfile2.txt.
  • grep hacking myfile.txt: the command grep: show all lines that contain “hacking” string. It shows a specified string.
  • egrep excellent myfile.txt: It seems similar with grep but the difference is that this command show the unique lines in the file.
  • look ab: this command show words matching a given prefix. The output will be: aba,abb,abc,abd…

you may also like to know the difference between termux from Linux

Directory basic Linux commands for beginners

Also, you may find that managing directories is simple as a beginner. Then, in this part we won’t see many commands but you can do research to get more.

  • mkdir genius: this command hell to create a new directory with the name genius.
  • rmdir genius: help to remove an empty directory. That mean you ask to the CL to remove the directory genius.
  • zip myfile.txt: this file help to compress a file to zipe format.
  • unzip myfile.zip: Also, this command help to unzip a file from zip format.

Account manager Commands

Let us see how we can manage users accounts using Command line.

  • useradd username: add a new user account.
  • usermod -l oldname newname: Also, help to change the username.
  • userdel username: this command help to delete a user account.
  • passwd username: set a user account password

permission basic Linux commands

  • chmod 752 myfile.txt: the command chmod: change the mode of access permission for myfile1.txt, 7: set user permission with write, read, execute, 5: set group permission with read, execute, 2: set others permission with write only.
  • chgrp groupname myfile.txt: chgrp: change group membership of a file. Also, groupname is the name of a given group if you created a group.
  • chown username myfile2.txt: the command chown: change ownership of myfile2.txt.

System basic Linux commands

  • job: this command displays the status of all jobs.
  • fg: Also, this command run a suspended job in foreground.
  • bg: run a suspended job in background
  • kill %4: this command kill a job by number or a process by pid
  • at 9:30 pm: Also, this command help to schedule a job run at a specified time. You can also display the scheduled jobs wit at command, and if you want remove a schedule use atrm command.
  • uptime: It also shows the system uptime.
  • top: Also, help to view the top active or specified process.
  • tar -xf archive.tar: it also help to extract an archived tar file.
  • tar -cf archive.tar: create an archived tar file
  • date: also, help to display the date and time.
  • cal: it also help to display a calendar of month.
  • df: This command help to show disk usage of file system

Networking commands

  • host tgeniusclub.com: display remote hostname and IP
  • ifconfig: Also, display local network configuration
  • ping -c3 tgeniusclub.com: it also send packets to test if remote is reacheable
  • ssh: securely connect to a remote computer ftp: files transfer by “File Transfer Protocol”
  • mesg: it also enable or disable messaging
  • write: write a messages to other users
  • open: it help to connect to an ftp server
  • mail: Also, send and receive mails locally and globally.
  • dhclient: provides a means for configuring one or more network interfaces
  • nslookup: query internet name servers interactively for IP information.


Well done, this article was only for basic Linux commands hope now you are able to use your CL. If you want to know more about a command just use command man “name of command””

Linux tutorial for beginners – Linux guide in 2021

If you are reading this article it’s because you want to have a general idea about Linux. This article Linux tutorial for beginners is not only for beginners, but it can be also for advanced.

Also, we will explain to you the different elements of Linux that you ought to know about before you go and delve into the Linux world. In the previous article, we discuss the difference between Termux from Linux, because most Termux users are confused about that.

Linux tutorial for beginners

Linux has many benefits. However, it also has numerous little aspects that can leave you perplexed. In this Linux tutorial, we will start from the basics of Linux and learn all the major Linux concepts you should know. Also, the good news is that if you are having already the kills on these points you can read Basic Linux commands for beginners to advanced

  • What is Linux
  • Historic of Linux
  • Definition of Linux concepts
  • GNU Linux
  • Linux distributions
  • Open-source
  • Linux vs Windows
  • Why use Linux?
  • Servers vs Desktop
  • Linux Commands

What is Linux?

The first thing that we need to talk about is that Linux is an operating system. For those who do not know what an operating system is. OS is the software layer that is between your hardware, and the software that allows you to get something productive done on a computer.

Linux is an operating system that acts as an intermediary as a bridge between the physical device and the instruction code of the program. The main thing that you just need to realize is that in the Linux world, the software that you will be running is a completely different type compared to the one of Microsoft Windows.

Historic of Linux – Linux tutorial for beginners

Linux did not begin as an Operating system, however. Linux was a kernel created by Linus Torvalds while he was a student at the University of Helsinki. The kernel is essential but in itself, it is useless. It can only function in the context of a complete operating system.

The Linux kernel was used in combination with the GNU operating system. It is important to understand what the Kernel is as this is the defining component of Linux, we are going to see it in concept definition.

And, so between 1991 and 1994, Linus Torvalds created Linux operating system by combining the GNU OS with the Linux kernel. Basically, Linus Torvalds wanted an operating system that is not only free but also something that he can customize.

The big thing with Linux is, because it has a “UX” suffix and because most of the commands that you use look a lot like UNIX commands, people think that Linux is a type of UNIX operating system. This is totally not the case. UNIX is its own type of operating system. Linux is its own type of operating system.

Definition of Linux concepts

When we talk about Linux there are plenty of concepts that you must know. Here we are going to discuss some of them.

What is kernel?

Now, this is the time you are going to know what kernel is. The kernel is a computer program at the core of a computer’s operating system that has complete control over everything in the system.

There are two major types of kernels competing in today’s market: Windows and Unix-like Kernels. The Linux kernel falls under the latter as does BSD, Mac OS, and Solaris. Kernels tend to fall under three categories;

  • Micro kernel:  A micro kernel only manages what it has to CPU, Memory and IPC or Inter-process communications.
  • Monolithic kernel: like Linux are the opposite of Micro kernels
  • Hybrid: The Windows kernel falls into Hybrid because it has the ability to pick and choose what to run in both user and super user mode.  

Linux command Line Interface (LCLI)

The Linux command line is a text interface to your computer. Often referred to as the shell, terminal, it can give the appearance of being complex and confusing to use.

Operating system (OS)

 Also, an operating system (OS) is the system software that manages computer hardware, software resources, and provides common services for computer programs.

Linux Graphical Interface (LGUI)

A Linux GUI application or a Linux graphical Interface is basically that part you can interact with using your mouse, touchpad, or touch screen. You also, have icons and other visual prompts that you can activate with your mouse pointer to access the functionalities.

Terminal User Interface (TUI)

TUI is also known as a Text-based User Interface. This is the most uncommon term of the three.

Open-Source – Linux tutorial for beginners

Open source software is software with source code that anyone can inspect, modify, and enhance.

GNU Linux

As mentioned below, the most important part of an operating system is the kernel. In a GNU Linux system, Linux is the kernel component.

Because the Linux kernel alone does not form a working operating system, it’s better to use the term GNU Linux to refer to systems that many people can refer to as Linux.

Linux Distributions

Major companies and educational institutions like Linux. And since Linux is Open source, they are able to see the source code. This gives the ability to developers to start creating their own versions. And today, you have Red Hat Linux, Ubuntu Linux, Google Android, Kali Linux, and many more. Making Linux source code available to the public facilitated the creation of something called distributions (distros).

Now when you want to decide which Linux distribution you want you use, you are going first to think about what you will be working with it. It is much important to know first your need before to choose which distribution you want to use before you install it on your pc. You can also look at our article 6 Best distribution of Linux mostly used by hackers.

Linux Distribution list.

  • Red hat: The last official release of the non-split distribution was Red Hat Linux 9 in March 2003.
  • CentOs: Community-supported Linux distribution designed as an Open-Source version of RHEL and well suited for servers
  • Fedora: Community-supported Linux distribution sponsored by Red Hat.
  • OpenSUSE: A community-developed Linux distribution, sponsored by SUSE.
  • Mandriva: Open-source distribution (with exceptions), discontinued in 2011.
  • Kali Linux: Developed by Offensive Security and designed for penetration testing.
  • Parrot OS: A Linux distribution based on Debian used by penetration testers.

You may also like top 6 Best operating system linux for hacking and penetration testing

Open-source – Linux tutorial for beginners

Now that we have talked basically about the Historic of Linux, the next thing we have to talk about is Open source. Of course, at this point in time, you have probably heard of open-source software.

You are also probably under the wrong idea that open source software is free software. This is not the case. Open software is not free software. As I mentioned above open-source software is software with source code that anyone can inspect, modify, and enhance.

What is the difference between open source and other types of software?

Normal software

Some software has source code that only the developer or team who created it only can maintain and modify. Only the original authors of proprietary software can legally copy, inspect and modify that software.

And in order to use proprietary software, computer users must agree the terms of contract. The user must agree that he will not do anything with the software that the developer has not permitted. Microsoft Office is an example.


Then, know that open source software is different. Its authors make its source code available to others who would like to view that code, copy it, learn from it, change or share it. LibreOffice is an example.

Linux vs Windows – Linux tutorial for beginners

Now it’s time to see what the difference between windows and Linux is.

Windows is a group of several OS families and each of its versions GUI (graphical user interface) with a desktop that enables users to view folders and files in this OS. Below here is the picture which illustrates the comparison between Windows and Linux.

Why to use Linux?

The best assets of Linux when compared with other operating systems are its reliability, price, and the freedom it provides you. Now, it’s time for us to gain some knowledge about why you should use Linux OS.

  • Support programing language

Almost all programming languages (Ruby, Perl, Java, C/C++, Python, etc.) are supported by Linux. It also offers many applications that are useful for programming.

  • Open-source

You can add new features, delete things that you don’t like, and customize some features. You can customize it as you wish.

  • Stability

Linux systems are very stable and they won’t freeze up like other systems.

  • Security

Most viruses that attack an operating system are developed via the Active X software framework, and Linux doesn’t have this. The same principle applies to various other viruses like worms, Trojans, or spyware.

  • Free

Also you can download most Linux distributions freely from the web. Additionally, the Linux distributions can be downloaded freely and installed legally on any number of computers and can be given freely to other people.

Server vs Desktop

Now in this part we are going to see the difference between server versions to Desktop version. There are generally two versions of Linux that everybody is going to provide. Whether you get Kali Linux, Ubuntu, Fedora or whatever distribution that may be they will normally have two versions of distribution.

One is going to be the server version while the other is going to be the desktop version. The main difference between the server versions and the desktop versions of any of these Linux operating systems is that, the server version is a stripped down version of Linux. Also, the sever version has no graphical user interface that mean you will deal only with the command line.

Different from the Desktop version, when you install it you’ll immediately be able to navigate the operating system using the graphical user interface, much like Microsoft Windows.

You may also like how to install windows subsystem for linux complete guide

Linux command

This is the part where we are going to see some basics Linux command. With Linux command line you can install applications, update, start services etc…

Then, know that everything that will be showing in this article will be on kali Linux. You are free to use any distribution of your choice, but remember that some command will not work on other distros consider to make some research about the command if doesn’t work on your distribution.

Sudo:  basically it means “super user do”. In Linux you can’t login as Root, now to have access of what an admin can do you have to turn on a super user by using sudo command.

Man pages: it stands for manual pages. When you do not understand how a command works, the man page is where you look up information about command. $ Man ping.

Tasksel: it means “Task select” you can use this command to install an additional part of Linux distribution. $ sudo tasksel

Apt-get: This is the command that you use in Linux to install a given program. You don’t need to have a cd driver or a set up. $ sudo apt-get install hydra.

Top: if you are coming from windows world, think of top as a basically your task manger. With this command you will see how much your memory is being used, how much of your CPU is being used, and then list all process currently running on your system. $ sudo top to kill a process just type K the id of precess. $ K1578.

Directory manager

Cd: It stand for “Change directory” if you want to go to a different directory or folder, you type cd name of location. $ cd Desktop

Ls: if you want to list all the files and folders within a particular directory in this case consider to use $ ls.


There you have it. That is all there the basics of Linux. Again what we have mentioned in this article the only reason this is intimidating and the only reason anybody is nervous about this is that they do not know what commands to run. Once you understand the commands that you need to run, it all becomes easy.

Graphical Environment on Termux

In this article, we are going to see how we can install Graphical Environment on termux. Then, you may ask yourself what is the graphical environment.

A graphics environment file contains commands that specify exactly how a graph is produced.

Termux provides support for programs that use X Window System. However, there no hardware acceleration for rendering, and the user will have to install a third-party application to view the graphical output. Before we continue let us see some definitions of keywords that we are going to use in this article.

What is X Window System?

The X Window System is a network-transparent window system that runs on a wide range of computing and graphics machines. X Window System servers run on computers with bitmap displays. The X server distributes user input to and accepts output requests from several client programs through a variety of different inter-process communication channels. Also, the most common case is for the client on networking and remote applications.

What is a VNC viewer?

VNC® Viewer turns your phone into a remote desktop, giving you instant access to your Mac, Windows, and Linux computers. You can view your computer’s desktop remotely, and control its mouse and keyboard as though you were sitting down in front of it.

Who can run Graphical Environment on Termux?

Then, as you know already keywords, let us see who can run Graphical Environment on termux. Termux is a free app that everyone who has an android device can get from the play store.

in the previous article, we discussed Best android apps Termux learner in 2021 from play store. You can see in that article the best apps that will teach you termux command and discover the best apps for hacking.

First, if you don’t have termux download it from the play store. last it’s applicable only to Termux installations running on Android 7.0 or higher

Enabling the X11 Repository – Graphical Environment on Termux

To use X11-enabled programs, please, make sure that at least one of the following programs is installed. In this article we are going to use VNC Viewer:

  • VNC Viewer – the best choice for interacting with the graphical environment. Requires a running VNC server.
  • XServer XSDL – this one may be unstable but it provides a standalone Xorg server so you don’t have to set up VNC.

Also, know that X11 packages are available in a separate APT repository. You can enable it by running the following command:

pkg install x11-repo

this command will automatically add appropriate sources.list file and PGP key.

You may also like to know the differences between termux and linux

Setting up VNC Viewer – Graphical Environment on Termux


As we said we are going to use VNC Viewer in this post then, let us configure it for the graphical output.

  • Install tigervnc in termux.
pkg install tigervnc
  • After, installation you can now execute tigervnc with this command :
vncserver -localhost

At first time, you will be prompted for setting up passwords. Then, set your password must be 6 or 8 characters and  passwords are not visible when you are typing them.

Then, after you finish to set up your password, if everything is okay you will see this:

It means that X (vnc) server is available on display ‘localhost:2’. Finally, to make programs do graphical output to the display ‘localhost:1’, set environment variable like shown here (yes, without specifying ‘localhost’):

Check if the VncServer is running or not. if it’s not running go back on previous step.


Now it’s time to install VNC Viewer from the playstore. Then, if you have finished to install VNC Viewer, open it and start configuration.

Now in the Address field Type localhost:1, Remember next time you run the server you need to change the localhost to 2 or 3. or You can type vncserver -list and you can see your localhost number there.

Next, press create and it will create the connexion with your termux. Then, In the next step click on the green button and last click on the name of your connection.

Then, press ok to allow connection.

Now the time of puting your authenfication is there. put the password you set in the previous step.

You may also like Best professional hacking tools on termux for ethical hacker

Window Managers

Then, as we have configured the connection let us see how to manage the window. Also, the Simplest way to get a working graphical environment is to install Fluxbox:

$ pkg install fluxbox

Then, if you want you can set fluxbox to started automatically on VNC server startup. To do this, edit file ~/.vnc/xstartup.

Desktop environment (XFCE)

Also, It is possible to set up a full-blown desktop environment in Termux. Only XFCE is supported, porting of other environments is not being planned. Now let us see how to install XFCE.

pkg install xfce4
VNC server startup configuration (~/.vnc/xstartup)
xfce4-session & 


Hope now you are having Graphical Environment on your termux, if there is an issue during installation let us know to help you solve that issue. thanks

Termux app| what is the difference from linux

Differences between Termux from Linux

Termux is an Android terminal emulator and Linux environment application that works directly with no rooting or setup required. A minimal base system is installed automatically, additional packages are available using the package manager.

diferrence between termux to linux

you can see that the environment setup in Termux is similar to that of a modern Linux distribution. However, running on Android implies several important differences. you can decide today to start with Termux and get familliar with it if not yet done.

Termux is not FHS compliant

File Hierarchy Standard

The reason why Termux does not use official Debian or Ubuntu packages for its environment it’s because it does not follow FHS.

You may like also to know how to install graphical environment on termux

what is FHS?

The Filesystem Hierarchy Standard (FHS) defines the directory structure and directory contents in Linux distributions. It is maintained by the Linux Foundation.

Termux does not follow Filesystem Hierarchy Standard unlike the majority of Linux distributions. You cannot find directories like /bin, /etc, /usr, /tmp, and others at the usual location. Thus, all programs should be patched and recompiled to meet the requirements of the Termux environment otherwise they will not be able to find their configuration files or other data.

You may have a problem executing scripts that have standard shebangs (e.g. #!/bin/sh). Use the termux-fix-shebang script to modify these files before executing. Recent versions of Termux provide a special package (termux-exec) that allows usage of standard she-bangs. Hope you can be happy to know these 6 best os for hacking and penetration testing

what is shebang?

shebang is the character sequence consisting of the character’s number sign and exclamation mark (#!) at the beginning of a script. It is also called sha-bang, hashbang, or hash-pling.

Most of packages have shared library dependencies which are installed to $ PREFIX/lib.

  • On devices before Android 7, Termux exports special variable ($ LD_LIBRARY_PATH) which tells linker to where find shared library files.
  • Also, on Android 7 or higher, DT_RUNPATH ELF header attribute is used instead of LD_LIBRARY_PATH.

If you still need a classical Linux file system layout for some reason, you may try to use termux-chroot from package ‘proot’:

$ pkg install proot
$ termux-chroot
$ ls /usr

Termux uses Bionic libc

Bionic Libc

To have best compatibility with Android OS and remove the need of maintaining custom toolchains termux developper compile all their packages with Android NDK. Resulting binaries are linked against Bionic libc (files libc.so, libm.so, libdl.so from /system/lib or /system/lib64).

You may also like Best android apps Termux learner in 2021 from play store

what is bionic?

Bionic is an implementation of the standard C library, developed by Google for its Android operating system.

Usage of libc provided by Android and FHS incompatibility disables ability to execute native packages copied from Linux distributions:

  • Dynamically linked programs will not run due to linker expected in nonexistent location (/lib) and libc ABI mismatch.
  • Statically linked programs (only networking ones) will not be able to resolve DNS names. GNU libc normally doesn’t allow static linking with resolver. Also, the file /etc/resolv.conf does not exist on Android.
  • On non-rooted Android 8 or newer, statically linked programs will not run due to issues with seccomp filter.

However, these restrictions can be bypassed by setting up a Linux distribution rootfs with PRoot

what is PRoot?

PRoot is a user-space implementation of chroot, mount –bind, and binfmt_misc. This means that users don’t need any privileges or set up to do things like using an arbitrary directory as the new root filesystem, making files accessible somewhere else in the filesystem hierarchy, or executing programs built for another CPU architecture transparently through QEMU user-mode.

Root file system is stored as ordinary application data

Root file system and user home directory are located in private application data directory which lives on data partition. Paths to these directories are exposed as $ PREFIX and $HOME respectively.

You cannot move $ PREFIX to another location because all programs expect that it will not be changed. Additionally, you cannot have binaries, symlinks, and other files from $ PREFIX on sdcard. The reason is simple – file system there does not support UNIX permissions, symlinks, sockets, etc…

if you uninstall the application or wipe data, directories $ PREFIX and $HOME will be wiped too. Before doing this, make sure that all-important data is backed up.

Termux is single-user

Android applications are convenient and have their own Linux user id and SELinux label. Termux is not an exception and everything within Termux is executed with the same user id as the application itself. User name may look like u0_a231 and cannot be changed as it is derived from user id by Bionic libc.

All termux packages (except root-only ones) are patched to drop any multiuser, setuid/setgid and other similar functionality. termux developer also changed default ports for server packages: ftpd, httpd and sshd have their default ports set to 8021, 8080, and 8022 respectively.

Termux developers give you freedom of read-write access to all application components including $PREFIX. Be careful since it is very easy to break things by accidentally deleting or overwriting files in $PREFIX.

closing words

congratulation you have reached the end of the article hope now you know the differences between termux and modern linux. thankyou.