14

I want to play around with some terminal commands from official Ubuntu packages, but at the moment I don't have access to an Ubuntu PC.

Is there an online and free terminal emulator running, say, Ubuntu 16.04?

I have tried this one but seems quite limited (for example, I can not run xmodmap). Others require subscription and are not free.

It would be ideal if you can test the installation of packages based on current repositories, read default configuration files, and run the most commands as possible.

Note: I see the option of a VirtualBox, but imagine you are in a public library without access to USB or administrative rights. An online option is the only way.

7
  • 2
    Install Ubuntu on VirtualBox :-)
    – Dante
    Aug 30 '16 at 12:46
  • Thanks :), but I have no rights whatsoever. I literally just want a simple web-browser terminal simulator to try a few commands for a few minutes.
    – user308164
    Aug 30 '16 at 12:53
  • 3
    What is "good" is of varying opinion. Of course you can't run xmodmap in a remote terminal, because it is not a console application. It is a tool for X display server. The easiest way to test one, is to rent a VPS.
    – dobey
    Aug 30 '16 at 14:18
  • @luchonacho What are some commands and packages you want to play with?
    – edwinksl
    Aug 30 '16 at 21:54
  • 2
    @Serg Maybe you misunderstood something ... the question is not about getting recommendations for cloud services, it is about finding a solution to try out some terminal commands on an official Ubuntu system from a web browser regardless which computer or host system is in use. This is absolutely on-topic and answers don't necessarily have to be opinion based. The LXD demo server, which is powered and sponsored by Canonical meets exactly the request from luchonacho, as you can see in my answer below. So, please do not vote to close this question, it might be useful for other users as well ! :)
    – cl-netbox
    Jan 26 '17 at 10:10
15
+500

A perfect solution for your demand to "play around with some terminal commands from official Ubuntu packages" would be to use the LXD demo server that lets you try out the LXD container hypervisor, which is available for installation in the Ubuntu repositories. With LXD you can use a system container running on top of the bare metal installation of the Ubuntu operating system.

LXD demo server specifications are :

  • Limit of 30 minutes per session
  • Limit of 5 sessions per IP
  • 2 shared CPU cores
  • 512 MB of dedicated memory
  • 10 GB of dedicated disk space
  • IPv6 only network connectivity

Example from an Ubuntu 16.04 system container running on top of the Ubuntu 16.10 system :

cl@cl-uw-1:~$ lxc start uc-1604-1
cl@cl-uw-1:~$ lxc exec uc-1604-1 bash
root@uc-1604-1:~# xmodmap
The program 'xmodmap' is currently not installed. You can install it by typing:
apt install x11-xserver-utils
root@uc-1604-1:~#  

Example from performing the same on the evaluation LXD 16.04 LTS server operating system :

LXD-demo

As you can see, you are able to play around with commands on original Ubuntu without having to install anything. This can be done (for free) from where ever you are just by using a web browser. Open the LXD demo server in the web browser, accept the terms of the service and start using it.

If you like and want to use LXD containers on your system, just execute : sudo apt install lxd
Learn more about LXD in the documentation and in the comprehensive blog post series from the the technical lead and upstream project leader for LXC / LXD at Canonical Ltd. - Stéphane Graber.

2
  • This is amazing! I could explore configuration files, install packages, use aptitude, play sudoku, download files with wget and build from source. This is exactly what I wanted! The only limitation is the 30 minutes, but it seems you can simply start a new session.
    – user308164
    Jan 26 '17 at 10:49
  • That is a truly stellar answer to an interesting usage scenario!
    – BISI
    Mar 23 '19 at 5:59
5

Weird that no one suggested it yet, but, instead of an emulator, why not play around with an actual Ubuntu machine? You can rent an Ubuntu virtual private server from several providers at a really cheap rate, and some of them will let you use their service for free for a limited time.

Some suggestions off the top of my head:

  • Digital Ocean: the cheapest machine costs only $5/month with many choices of Linux operating systems (including Ubuntu 14.04 and 16.04, both in 32 and 64 bits flavors). If you are a student aged 13 or older, you can apply for a $50 credit (meaning you get to run your Ubuntu instance for free over the course of 10 months) here. If you are not, you can search around for coupons. You can access your instance through the web, all you need is an email address and a decent web browser (Chrome and Firefox work). Performance might be laggy depending on your connection but it's as good as it gets:

  • Google Cloud Platform: I've never used myself, but I know they offer 2 months of VPS hosting as a trial, plus a myriad of other tools that might be worth taking a look at. They claim to have a web-accessible console, as well:


(source: google.com)

  • Amazon Web Services: Amazon is known for offering a whole year of its free tier, which includes enough hours to run a single t2.micro instance uninterruptedly. There are several Ubuntu offerings for you to choose from. I have used it myself and also recommend, but they require a valid credit card upon signing up. They didn't charge me anything, though. I'm not sure if the console is available through the web, but you can always use PuTTY to login to your instance, assuming you are a Windows user. Linux and OS X users don't require any additional software.

If your goal is to learn the Ubuntu insides, all those options should offer you enough time to study and practice. The best part about using a VPS to learn is that, if you manage to break it, you can always destroy it and start a new one from the scratch.

There should probably be more providers with similar services available, but I'd advise you to stick with the most popular ones, since their communities are more likely to answer your questions and provide support.

1
  • 2
    Referral links are typically frowned upon, please do not re-add them to your post after they have been removed, especially when removed by moderators.
    – Thomas Ward
    Jan 24 '17 at 20:10
4

Online, yes. Free? Most likely not (at least not forever). Either way, after you have a server, it's just a question of setting something like this up.

Getting a server:

What you're asking for is effectively a mini server or a VPS. These are computers that are hosted by companies like DigitalOcean, Amazon Web Services, Google Cloud Platform, and so on. These companies may have free trials or promo codes, but you need to remember that these are effectively services being offered to you, and these are companies. Being nice isn't in the business model because it just isn't profitable.

However, that doesn't mean they're not free. DigitalOcean has a referral program that allows you to get free server time when other people sign up using your unique code. AWS has a one-year free trial for their servers. You can probably find similar deals for other server hosts if you actually try looking. Though, these services are usually pretty cheap ($5/month minimum).

Sure, you could probably find some "free" VPS providers out there, but this is a good time to point out that there's no such thing as a free lunch. You might not be paying in money, but your VPS might be very restricted in what it can do, may be used in data collection, only allow you access at certain times (timesharing), not allow you to save your work, and so on. If you want a reputable install of Ubuntu that actually works the way you want, you're gonna have to pay for one, sorry. Or, alternatively, you have a good friend who is going to let you use some of their excess server capacity.

Remote Access Over Internet:

WARNING: Please make sure you read all of what is described in this section, and make sure you understand it. It's important.

What you're asking (full remote access, meaning shell and/or graphical, over HTTP/HTTPS) has the potential to be a huge security risk! If you give yourself this level of access to your system, others can get it and use various evil tricks, or snoop on your connection. I mention use of VNC later in this post, which can be downright dangerous unless you're extremely careful with your setup. I'm not responsible for your system getting pwned. Don't say I didn't warn you. Do things right, or tread very carefully.

I would personally advise re-evaluating your criteria and considering doing things the right way (Key-based SSH with port tunneling if needed + a strong firewall config) if at all possible. This means using the right software instead of bringing everything over HTTP.

Access over just a web browser is really something most people tend not to do for various reasons. The most-cited reason is that this is just pretty insecure all things considered. However, if you still want to use something over just a web browser, it's definitely possible.

If you're okay with just a direct console or shell, something like Webmin, ShellInABox, or Web Console would be a good choice. They're web-accessible and allow you pretty good levels of control over your machine. Note for something like this, though, you will need a HTTP server (like nginx) on your VPS.

If this is unacceptable and you don't want to host things on your machine, you can use something like webssh, but be wary of any security risks that may result over using something like this.

If you need X11 (a graphical interface for stuff like xmodmap, etc.), you're gonna have to do some more advanced stuff. If this is the case, you're going to have to build some sort of solution around X11 forwarding. If you can't use any computer-side software other than a web browser, this becomes more difficult. However, it's still possible to set up VNC and then use something like noVNC remotely, or by installing it on your own machine. But, this might introduce heavy lag into your system. It also offers a huge potential attack vector against your system, but you should have seen the giant warning at the top of this section.

Ideally, you'd just have a light SSH client (like PuTTY or similar) and X11 (like XMing) on a flash drive, and you can use this to establish a connection from anywhere, but you're already carrying a flash drive. At that point, it's probably best to just make a persistent drive.

3

Take a look at Tutorialspoint Terminal Emulator

Some quick commands to test are:

ls "Shows content of a director"
cd "Change directory"

This terminal uses the bash shell which is the default shell for most Linux distribution.

This command will give you a list of many of the user commands available.

$ ls /usr/bin

You can type $ man [command] to get the usage of many commands available on the machine.

I see you modified your question while I was typing my answer. My answer is referred to your initial query for a terminal emulator to work with linux commands.

There are a number of sources (I'm only familiar with paid sources) where you can work more comprehensively with Ubuntu. One is Rackspace. Their price is about a half penny per hour. You create the machine (choosing from a variety of OSes including Ubuntu) and pay as you go by the minute. It rounds out to about 50 cents a day.

It's my understanding that they bill by the minute. So you could use a full server for a couple of hours for a penny.

Of course you might have already looked at Rackspace and ruled it out because it's not free.

I don't know of any free resources where you can have the full control you're looking for, but will update my answer if I find one.

1
  • The bash terminal is quite limited. The one in my question seem to allow you to install packages from official Ubuntu repositories. That is the kind of thing I'm looking for. Yes. Free as free beer is important.
    – user308164
    Aug 30 '16 at 14:15
2

You could use Cloud9 IDE which lets you run your own Ubuntu OS

There you have access to an IDE and the terminal.

I wouldn't call it an emulator though.

By the way for basic usage its free.

1
  • As far as I know you now have to give them a credit card number even if you use the free plan. You might want to add that to your answer.
    – user595510
    Jan 25 '17 at 9:07
1

A better choice might be to make a live medium with persistent storage. However, this requires booting from the device and you should consider whether you're allowed to do so on the desired PC. This of course makes no long term changes to the PC in question unless you specifically tell the drive to do so. So the next time you boot the live medium, you can simply pick up where you left off.

The ubuntu wiki has details on how to create live mediums.