Hi, I’m Jack.

For Linux beginners, when contacting the Linux operating system, you can learn Linux through virtual machines, cloud hosts or enterprise servers. Some friends may ask, is there any operating system that can run without installation?

Incidentally, I recently found a great website called DistroTest.

1, DistroTest

This site allows you to use free online versions of Linux and Unix operating systems without having to install them locally.

You only need to find the version of the operating system you need to test online, and the operating system does not have any restrictions, you can use all the functions of the system, including uninstall installation software, test installation procedures, and even delete or format the hard disk, delete system files, etc.

I’m trying Archlinux here, and clicking the Start button launches the operating system of your choice.

The online version of the operating system will start in a new browser window. When the following screen is displayed, you will be prompted to stop the system, reset the system, root user password, and common user password. Click Open VNC-viewer (allow pop-ups!) Button to enter the system login interface.

This can be accessed through the built-in noVNC Viewer, but you need to enable/allow the DistroTest site popup window in your browser otherwise you will not see the noVNC window that pops up.

If you don’t want to enable the DistroTest page popup, you can install any VNC client on your local system, and the VNC login information is also available on the same page.

This finally brings us to the Arch Linux online operating system.

After each shutdown, the system will be restored to its default configuration, and when the trial is over, returning to the DistroTest page will stop the trial operating system.

DistroTest address: distrotest.net/

DistroTest is available on 762 versions of 373 operating systems, according to official statistics on December 29, 2019.

To be honest, I’ve been working with Linux for years, but there are some distributions listed on this site that I’ve never heard of or even realized there were so many versions of the Linux operating system.

In addition, it also includes some non-Linux operating systems, such as FreeBSD, FreeDOS, and Gparted (disk partitioning tool), which completely updated my knowledge of Linux.

2, OnWorks

OnWorks is a free hosted Linux Mint online server that can run on a variety of operating systems, such as: CentOS, Fedora, Ubuntu and Debian, among others, are a multi-operating system platform that allows you to run and test any type of operating system from anywhere. Simple, fully functional, lightweight and easy to use.

OnWorks address: www.onworks.net/

The plug-in download address: chrome.google.com/webstore/de…

3, Webminal

Webminal is a free GNU/Linux online terminal and programming IDE that provides a unique free online learning platform where users can learn about Linux, practice Linux, and interact with other Linux users.

With Webminal, you can practice Linux commands, write Bash scripts, create and access MySQL tables, learn Python, C, Ruby, Java, Rust programming, and perform basic root user tasks using a virtual platform. With Webminal Play, you can also watch videos (instead of reading documents) and practice.

Webminal features:

  • Online Linux/bash terminal, no installation required;
  • Practice Linux commands, including file systems, file management, scripting in bash/awk/sed and MySQL;
  • 100MB of storage available;
  • A maximum of 1000 files can be created.
  • The maximum file size that can be created is 1MB;
  • Share files with community members and let them use your scripts/programs to verify/debug problems, etc.
  • The maximum number of files a process can open is 15.
  • A maximum of 10 processes can be run simultaneously.
  • You cannot log in more than once unless you log out.
  • Create your own group and share files among group members.

In addition, Webminal also explicitly points out the features of MySQL, as follows:

MySQL features:

  • A maximum of four tables can be created.
  • The database size should be less than 200KB;
  • A maximum of 200 queries can be executed per hour.
  • A maximum of 100 update queries can be executed per hour;
  • Can only have one MySQL connection;
  • Do not allow access to other users’ databases.

Webminal address: www.webminal.org/terminal/#

4, Tutorials on Point Coding Ground

Tutorials on Point Coding Ground this online tool is a Coding foundation for developers to code, edit, run, and share. It supports multi-languages, code highlighting, new files/projects, download files/projects, custom Settings (e.g., theme colors), error tips, and more.

Mainly include:

  • Data Science and Technology: Python 3, R, Matplotlib, NumPy, Matlab, SciPy, etc.
  • Programming languages: C, C++, C#, Java, PHP, Perl, Ruby, Scala, Swift, VB.net, etc.
  • Web development technology: CSS, HTML, Javascript, Jquery, Typescript, VueJS, etc.
  • File editors: Latex, Markdown, Tex, etc.
  • Online compilers and interpreters: AWK, Bash Shell, GO, Node.js, etc.

And, of course, there was the Bash Shell environment where we ran online, where I wrote a script for multiplication tables.

The code is as follows:

#! /bin/bash
#Filename: My multiplication. Sh
#Date: 2021/12/30
#Public account: Jie Ge's IT journey
#Name: JackTian
#WeChat: Hc220088
#Description: The x x formula program isin bash shellsum=0 for ((a=1; a<=9; a++)) do for ((b=1; b<=$a; B++) do sum = $$* $b] [echo - ne "$* $b = $sum \" done echo the doneCopy the code

Output result:

"1 * 1 = 1" "2 * 1 = 2" "2 * 2 = 4" "3 * 1 = 3" "3 * 2 = 6" "3 * 3 = 9" "4 * 1 = 4" "4 * 2 = 8" "4 * 3 = 12" "4 * 4 = 16" "5 * 1 = 5" "5 * 2 = 10" "5 * 3 = 15" "5 * 4 = 20" "5 * 5 = 25" "6 * 1 =" 6 "* 2 = 12" "6 * 3 = 18" "6 * 4 = 24" 30 "" 6 * 5 =" 6 "* 6 = 36" 7 * 1 = 7 "" 7 * 2 = 14" "7 * 3 = 21" "7 * 4 = 28" "7 * 5 = 35" "7 * 6 = 42" "7 * 7 = 49" "8 * 1 = 8" and "8 * 2 =" 16 "8 * 3 = 24" "8 * 4 = 32" "8 * 5 = 40" "8 * 6 = 48" "8 * 7 = 56" "8 * 8 = 64" "9 * 1 = 9" 9 "* 2 = 18" 9 "* 3 = 27" "9 * 4 =" 36 "9 * 5 = 45" 9 "* 6 = 54" 9 "* 7 =" 63 "9 * 8 = 72" "9 * 9 = 81"Copy the code

Tutorials on Point Coding Ground

www.tutorialspoint.com/execute_bas…

5, jsuix

JS/UIX terminal running on the Web browser is actually very similar to UNIX operating system, written entirely based on JavaScript, including virtual machine, Shell, virtual file system, process management, is a terminal with screen and keyboard mapping.

Click Open Terminal to open the terminal.

The JS/UIX terminal keyboard accepts the US-ASCII character set. If you want to use the on-screen keyboard to enter commands, you can click the display keyboard button in the lower left corner of the terminal to do so.

Alternate keyboard mappings (depending on system and browser) :

  • CTRL + SHIFT + [KEYPAD]<4> is left
  • CTRL + SHIFT + [KEYPAD]<6> to the right
  • CTRL + SHIFT + [KEYPAD]<8> Upward
  • CTRL + SHIFT + [KEYPAD]<2> down
  • CTRL + SHIFT + [KEYPAD]<0> For backspace

The JS/UIX terminal does not need any plug-in to open the terminal. If you want to practice commands on the JS/UIX terminal, you can log in as a guest without entering a password and press Enter to use it.

JS/UIX address: www.masswerk.at/jsuix/index…

6, jslinux

Jslinux is a Linux emulator package written based on JavaScript that can run Linux in a Web browser.

Provides a variety of systems on which you can compile and run code. But the overall feeling is not very smooth.

JSLinux address: bellard.org/jslinux/

7, Copy. Sh

Copy.sh is an efficient online Linux terminal that emulates other operating systems, including Arch Linux, FreeDOS, FreeBSD, OpenBSD, Windows 2000, Windows 98, etc.

When loading the emulator for the first time, you can choose the operating system you want and customize it to your own requirements. It also supports multiple distributions, so if you want to experience different operating systems, you can try it out.

Copy. Sh: Copy. Sh/v86 /

8 jor1k.

Jor1k is an OpenRISC 1000 emulator written in JavaScript that runs Linux and can run in almost any modern Web browser.

Jor1k address: s-macke.github. IO /jor1k/

9 linuxcontainers.

Linuxcontainers is the project behind LXD, LXC, LXCFS, and DistroBuilder to provide a distribution environment for the development of Linux container technology and containers and virtual machines running full Linux systems, You can run a demo server to act as a Shell environment for running Linux terminals.

While THE VM provides a complete environment, the environment provided by the system container is as close to that of the VM as possible without the expense of running a separate kernel and emulating all the hardware.

The demo server environment has the following limitations:

  • The time limit is 30 minutes
  • Each IP address is limited to four sessions
  • Two shared CPU cores
  • 512MB dedicated memory
  • 5GB of dedicated disk space
  • IPv6 network connection is restricted

LXD is a next-generation system container and virtual machine manager that provides a unified user experience around a complete Linux system running within a container or virtual machine.

LXD is image-based and provides images for a large number of Linux distributions. Provides flexibility and scalability for a variety of use cases, supports different storage backends and network types, and can be installed on hardware ranging from a single laptop or cloud instance to a full server rack.

With LXD, you can manage your instances (containers and VMS) using simple command-line tools, directly through REST apis, or using third-party tool integration. LXD also implements a REST API for local and remote access.

Linuxcontainers address: linuxcontainers.org/lxd/try-it/

10, CodeAnywhere

Codeanywhere is a cross-platform Cloud IDE as a service for end users that saves time by deploying development environments in seconds, coding, learning, building, and collaborating on projects. To run a free Linux virtual machine, you first need to register on the site and then subscribe to their free plan.

After registering, proceed to create new connections and set up containers using the operating system of your choice. After completing all these steps, you will have a reliable and free Linux console.

CodeAnywhere address: codeanywhere.com/

11, cocalc

Cocalc is an online Linux terminal that doesn’t mess up your own computer, offering a complete, collaborative, real-time synchronized Linux command line terminal.

Benefits of COCALC:

  • There is no need to install and maintain any software;
  • Support multi-person real-time collaboration using the same terminal;
  • Edit and run shell script files;
  • Using the terminal can be next to the chat function and others to discuss relevant commands;
  • Automatic backup can ensure your file security;
  • You can copy and paste between the local desktop and online terminal.

Characteristics of COCALC:

  • Learn Bash scripts;
  • Understand how to use the Linux command line;
  • Run scripts written in Python, R, PHP, Ruby, Go, Perl, Nodejs, etc.
  • Compile programs written in C/C++, Java, Rust, Assembly, Fortan, Julia, Zig, Haskell, etc.
  • Process and store data files;
  • Use graphical X11 applications;

Cocalc address: cocalc.com/features/te…

12, linuxzoo

Linuxzoo is a secure access to Learn Linux using a remote private Linux machine with root access.

Linuxzoo address: linuxzoo.net/

13, jdoodle

Jdoodle is an online compiler and editor that supports over 76 languages, multiple versions and 2 databases.

There are also online environments for practicing Shell programming.

Jdoodle Bash shell

www.jdoodle.com/test-bash-s…

14 and paiza. IO

Paiza.io is an online editor and compiler in which you can write and run code instantly.

Support a variety of languages, can be used to learn programming, crawl websites, write batch processing, etc.;

There are also online environments for practicing Shell programming.

Paiza address:

Paiza. IO/projects/s0…

15, Shellcheck

Shellcheck is a static Bash syntax checking tool that can be used in a variety of scenarios, including online use, command-line checking, and editor configuration.

When you write Bash shells for Linux/Unix and compile a lot of code, it often takes a lot of time. However, Shellcheck can tell you in advance about the syntax of the script you are writing, as well as provide you with error correction tips.

In addition to online use, you can also check the installation on the command line based on Debian, Arch Linux, EPEL, Fedora, FreeBSD, MacOS, OpenSUSE, Windows and other operating systems.

For Shellcheck installation, refer to the GitHub library of Shellcheck.

Script examples:

#! /bin/bashDIRPATH='/tmp/jstack' CURRENT_TIME=$(date +'%F'-'%H:%M:%S') if [ ! -d "$DIRPATH" ]; Then mkdir "$DIRPATH" else rm -rf "$DIRPATH"/* fi CD "$DIRPATH" while true do sleep 3600 # pid=$(ps -ef | grep 'inceptor' | grep -v grep | awk '{print $2}') jstack $pid >> "jstack_${CURRENT_TIME}" dir_count=$(ls  | wc -l) if [ "$dir_count" -gt 10 ]; then rm -f $(ls -tr | head -1) fi doneCopy the code

Shellcheck checks the output:

$ shellcheck myscriptLine 10: rm -rf "$DIRPATH"/* ^-- SC2115 (warning): Use "${var:? }" to ensure this never expands to /* . Line 13: cd "$DIRPATH" ^-- SC2164 (warning): Use 'cd ... || exit' or 'cd ... || return' in case cd fails. Did you mean: (apply this, apply all SC2164) cd "$DIRPATH" || exit Line 19: pid=$(ps -ef | grep 'inceptor' | grep -v grep | awk '{print $2}') ^-- SC2009 (info): Consider using pgrep instead of grepping ps output. Line 20: jstack $pid >> "jstack_${CURRENT_TIME}" ^-- SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: (apply this, apply all SC2086) jstack "$pid" >> "jstack_${CURRENT_TIME}" Line 21: dir_count=$(ls | wc -l) ^-- SC2012 (info): Use find instead of ls to better handle non-alphanumeric filenames. Line 23: rm -f $(ls -tr | head -1) ^-- SC2046 (warning): Quote this to prevent word splitting. ^-- SC2012 (info): Use find instead of ls to better handle non-alphanumeric filenames.
$
Copy the code

Shellcheck is available online at www.shellcheck.net/#

Shellcheck GitHub address: github.com/koalaman/sh…

The last

These are some of the sites I have listed that can help you run Linux online through a Web browser and some of the online compilers. Although there are advantages and disadvantages to greatly reducing the amount of time we need to install the VIRTUAL machine through VMware Workstation, some of the sites mentioned above do not require registration. You can run it online directly as the root user, and there are many Linux commands available.

On the other hand, some sites require registration, but are restricted by permissions and may not be able to use root and have far fewer Linux commands to execute. But in general, some online operations run very smoothly, which is quite different from VMware Workstation and the actual server environment.

With so many introductions, which one of the above would you choose? Who would have thought you could run Linux from a Web browser? Who would have thought it would be so easy to run a Linux operating system online through a Web browser?

However, it is strongly recommended to check for any other malware or viruses on your system before opening any web sites on your browser. A buggy or virulent browser can ruin your smooth Linux learning experience.

Finally, in addition to running Linux online and online compilers described above, what do you use on a regular basis? Welcome to share your comments.

Recommended reading

10 Linux Alternatives you didn’t know existed!

5 tools to replace the DU command!

Goodbye Typora! Love this open source Markdown editor!