How To: Start A Quick Python Server

Today’s article is going to show you how to transfer files between computers by using a quick Python server. It’s remarkably easy! It’s a temporary server (usually) and lasts only as long as you need it to.

Why would you do this? Well, you can transfer files from one computer to another. It also functions as an HTTP server which makes it easy to test things like simple web pages quickly and easily.

Are there better options? Quite probably. If you want to transfer a single file, then SCP is a good way to go about it. If you want to transfer multiple files, you could setup SFTP. If you want to test web pages, you can likely just write the files locally and then open them up with the browser of your choice.

You have options! And, thankfully, Linux provides all sorts of options – including setting up a quick Python server. As I said, it’s actually pretty easy.

A Quick Python Server:

This article requires an open terminal, like many other articles on this site. If you don’t know how to open the terminal, you can do so with your keyboard – just press CTRL + ALT + T and your default terminal should open.

The first command I want you to run will let us know what version of Python you have installed. Many distros have (at present) moved onto version 3, but some still have Python 2 installed. So, for that information you just run:

Now, if you have Python v. 2.x, you would use this command:

If you’re using Python v. 3.x then the command you’d use is:

(If you’re curious, the -m is telling Python which module to open.)

Anyhow,  you can now connect to your server with the following command:

Read how to find your IP address. Instead of an IP address, you can also use your hostname.

Anyhow, you  now have a server running on port 8000. If you want to, you can also change the port number. This is the same for both commands. In both cases, just append your chosen port number to the command. Like this:

It’d look a little like this:

See? It's a different port number.
Note the changed port number. You should probably avoid reserved ports.

When you’re done with the quick Python server, you can just close it by pressing CTRL + C. If you’re planning on running it long term, you can always run the command with nohup. If applicable, you may also need to open the port in your firewall.

Like I said, it’s a quick and easy server in Python. You definitely wouldn’t want to use this as a public facing server, but it’s fine for quick tasks. Feel free to leave a comment letting folks know how you use this in  your day-to-day tasks.

Closure:

There you have it, another article said and done! The site is going well and the schedule seems to be working well enough. It’s a bit demanding to write one every other day, but that’s what I said I’d try to do. So far, so good!

Thanks for reading! If you want to help, or if the site has helped you, you can donate, register to help, write an article, or buy inexpensive hosting to start your own site. If you scroll down, you can sign up for the newsletter, vote for the article, and comment.

Let’s Play Around With ‘apt-cache’

Today, we’re going to learn about apt-cache. Obviously, this information is only useful for distros that use the apt package manager. You’ll find that apt, and apt-cache, are package management tools – useful for managing (installing, removing, and updating) the software on your computer.

To know about apt-cache, we should probably know about apt. I think the man page describes apt well enough with this:

apt provides a high-level commandline interface for the package management system.

And apt-cache defines itself as:

apt-cache – query the APT cache

While it further describes it as:

apt-cache performs a variety of operations on APT’s package cache.

As you can see, they’re necessary and valuable tools for the management of software on your Linux box. Not all distros use apt, but it’s generally used by the distros in the Debian family. Those are distros like Ubuntu, the official Ubuntu flavors like Lubuntu, Kubuntu, and Ubuntu Mate, as well as distros like Linux Mint. 

So, it’s used by quite a few distros and, importantly, many of those distros are the favorites for people who use Linux on the desktop. I’ll also note that apt works equally fine in a server environment, without a desktop. It’s widely used, widely supported, and easy to find assistance when you have questions.

Today, we’ll just be covering ‘apt-cache’ and some of the basic usage. It’s not a very deep article, nor does it need to be. While there are a ton of apt-cache options, chances are that you’ll only need to use a few of them. So, this shouldn’t take too long out of your day, or will make a good resource when you need to remember something.

Using apt-cache:

This article requires an open terminal. Just press CTRL + ALT + T and your default terminal should open.

For this article, our example will be inxi. We’ll assume you’ve already installed it, or are already familiar with it. If you don’t have it installed, now would be a good time to do so – as it’s a very handy tool. Where you see ‘inxi’ you can use any other package name you want. 

An easy command, if you want to display a bunch of generic information about a package, is the following:

That will show you a bunch of information about a package, installed or not. It requires the complete package name. In the next command, that’s not really required.

With the search flag, you could type in ‘inx’ and it will find inxi, among other things. You can use that command with the ‘–full’ switch, and get a ton of useful information:

You don’t even have to use an application name with the search – you can search for keywords and find applications that way! If you wanted a text editor, you can use:

You might be surprised at the number of results you’ll get with that command. There’s probably some text editors you’ve never heard of before, and they’re right there among those results! Installing them is just a command away!

We can also check the policy, showing things such as which version is installed, which version is available, and the repository name. It’s just as easy as the rest.

The output of that command is pretty handy. It’s a short output that tells you which version you have and which version you have installed. It’ll also tell you which repositories hold the software, often more than one, and what the priorities are for those repos.

Bonus apt-cache Features:

Among these great features, you can easily see both the dependencies and the reverse dependencies. Dependencies are the extra software that needs to be installed for the package in question to function and reverse dependencies are those packages that require the installation of the named package to be fully functional.

To find the dependencies:

The reverse dependencies:

There you have it! Those are the most common ways you’re going to use apt-cache. If you want to know more, you can always check the man page with man apt-cache. Dependencies, both regular and reverse, are probably worthy of their own article at some point. Normally, your package manager will deal with those, but you sometimes come across situations where you need to resolve dependencies on your own.

Closure:

And, there’s one bonus round! There’s pretty much no good reason to run this, other than curiosity, but you can actually get some pretty cool stats about how many packages are available, how many are real packages, how many are virtual packages, and things like that. It’s a pretty simple command with a lot of output.

See? Another lovely way to use the terminal to gather information. Personally, I do pretty much all my software management in the terminal. I just find it easier, more informative, and faster. I’ve done it for so long that it’s legitimately faster for me to use the terminal than it is for me to do so in the GUI.

Anyhow, thanks for reading. This is yet another article in a growing list of articles! We’re well past the halfway point in the year-long project and so far we’ve yet to miss a single publication date!

It’s going to feel good to finally say that my obligations are over – and then to probably keep writing just to keep getting more and more of this stuff online on my own site. ‘Cause that’s the kind of thing I do… In theory, I’m retired. However, I keep obligating myself to do more and more things. Ah well… This site is at least productive and, judging by the numbers, beneficial to the community.

Thanks for reading! If you want to help, or if the site has helped you, you can donate, register to help, write an article, or buy inexpensive hosting to start your own site. If you scroll down, you can sign up for the newsletter, vote for the article, and comment.

Let’s Decompress A File (tar.gz) In The Terminal

Pretty much every Linux user has to look up how to decompress a file in the terminal. Ask them to do it by rote and they’ll balk, but it’s actually pretty easy. Heck, there are entire jokes and comic strips dedicated to it. The thing is, it’s actually pretty easy and this article is going to show you how.

The tool we’ll be using for this is called ‘tar’ and the man page helpfully describes it like this:

tar – an archiving utility

If one is curious, the .gz is for gzip. It’s both a file format and a compression utility. The .tar is a container for multiple files. Its name comes from tape archive, where one would store multiple compressed files in one file. Think of it as a container for .gz files, if that helps.

Today’s article is meant to be REALLY basic, so we’re only going to approach this with the tar command. The only goal of this article is to teach you how to decompress a .tar.gz from the terminal. (There are a dozen GUI ways to do this, but not all systems have a GUI available.)

Decompress A File:

This article requires an open terminal. You can do so with your keyboard – just press CTRL + ALT + T and your default terminal should open.

You’ll also need a .tar.gz, but I’m going to assume you already have. If you don’t have one, you’re bound to reach that eventuality so long as you continue to use Linux. It’s a preferred file distribution format for things like source code. 

Anyhow, it’s really simple. Navigate to the folder where your .tar.gz file exists and run the following command:

You really only need to remember the vzf. In order, those stand for verbose (tells you what’s going on), z (decompress the files inside), and f (means the name of the file you’re working on).

The x flag means extract and we’ll get back to that in a moment.

You can even tell tar to extract the files in a specific directory. That’d look like this:

But, that’s not too terribly important, so long as you clean up after yourself and don’t leave a bunch of clutter. 

Let’s get back to that x flag. See, if you want to go the other way, that is to compress some files, you just change the x to a c.

In this case, we’re only to cover compressing all the files in a specific folder. That’s a little something like this:

So, really, you only need to remember the “vzf” and x for extract or c for compress. That’s the basics of decompressing a file in the terminal. There are a zillion possible combinations and the man page for tar is about a mile long.

In the vast majority of cases, those are the only two ways you’re going to use the command. If you need something more specific, check man tar.

Closure:

And, there you have it. You have the very basics on how to decompress a file from the terminal. There’s a lot more to the tarball but we really don’t need to cover that. If you need more, there’s the manual – but you probably won’t need more than that.

Thanks for reading! If you want to help, or if the site has helped you, you can donate, register to help, write an article, or buy inexpensive hosting to start your own site. If you scroll down, you can sign up for the newsletter, vote for the article, and comment.

Let’s Learn About Halt

Today’s article is about the halt command. The reason we’re writing about the halt command today is because I was halfway through another article before I realized I’d already written an article on that subject. So, this is going to just be a nice, easy article.

And, yes, yes I did write more than half of an article that I’ve already written. I ain’t even intoxicated!

The command we’re looking at using today is called ‘halt’. For such a little command, here’s an interesting post about the difference between halt and shutdown. And, if that’s not enough, you can read the other answers and comments on that page. 

Anyhow, halt is described like this in the man page:

halt, poweroff, reboot – Halt, power-off or reboot the machine

Of those three, we’ll just be covering the halt. Yes, the man page contains all three in just one page. They’re all related. As I said, we’ll just be covering the useful features of halt command today.

And, without further ado…

The Halt Command:

This article requires an open terminal, like many other articles on this site. If you don’t know how to open the terminal, you can do so with your keyboard – just press CTRL + ALT + T and your default terminal should open.

Once you have the terminal open, the first use of halt would be just to halt the system:

That will halt your CPU. It probably won’t shutdown your computer all the way, it will just stop it. So too won’t the -f (force) flag. If you force it, it just stops the CPU. It looks like and requires sudo:

Finally, of the options we’ll cover, is the -p flag, and the -p stands for poweroff. It’s just another way to shut down your computer, and it obviously looks like this:

Those are about the only ways you’re ever going to use it, if you use it at all. It’s not a command that you’re likely to bump into but now you know it exists and how to use it.

Closure:

There you have it, another article. This one covers the halt command in Linux. It’s not a major article, but I needed one in a hurry – just to ensure there’s one scheduled. While my health is mostly returned, I’m still not so caught up that I have a bunch of extra articles. Feel free to step up and write one or two!

Thanks for reading! If you want to help, or if the site has helped you, you can donate, register to help, write an article, or buy inexpensive hosting to start your own site. If you scroll down, you can sign up for the newsletter, vote for the article, and comment.

Want To See The WiFi Password In The Terminal?

It’s remarkably easy (assuming one can gain access to a privileged account) to get the WiFi password from the terminal. It does generally require sudo or root. It’s literally three commands. It’s the kind of attack you’d possibly worry about in an office where you don’t regularly log out of your device when you leave it. It might be an akin to attack from the ‘evil maid‘, as well, but not just quite. 

It really requires only two pieces of knowledge. The first is how to gain elevated permissions on the device and the other is the name of the network device – usually easy enough to surmise. It’s pretty easy information to get under those circumstances – circumstances we may all have been guilty of. Perhaps we typed a sudo command and then walked off to get coffsssee while it updated itself? Who knows – but it’s really just that easy.

Is it a security issue? Not if your security is any good, it isn’t. But, if anyone has physical access to the device, they pretty much own the device. If your security is any good, nobody should get this far and internal practices would prevent fellow employees from doing much harm. I could speak for hours about security, I just can not seem to do it coherently. 

Anyhow, here’s how you view the wifi password in the terminal.

WiFi Password From The Terminal:

Obviously, you need an open terminal. Just press CTRL + ALT + T and your default terminal should open.

First, you must change to the directory where this sort of information is stored. 

Find the network name (SSID)… You can usually guess that, or narrow it down rapidly on sight, but you can also just find the SSID by typing iwgetid Either way, just enter this:

The password will be happily shown to you in plain text. I’m not even kidding. This is what the whole process looks like and shows you how easy it is:

I am elite hackor!
Tada! There it is in plain ol’ text, easily captured and saved away.

Obviously, I knew the sudo password – I’d have easily figured out the rest. Even if I didn’t, there really weren’t all that many choices and a little tab completion goes a long ways. It’s a good example of why you should lock your screen and logout of your computer if you’re going to be away from it. (Of course, there’s always a risk vs reward thing and it probably doesn’t really matter to most of us.)

Closure:

There you have it! You can now find the WiFi password from the terminal. This shouldn’t ever be a risk, because you already practice good security. But, it’s a fun little trick to know. It doesn’t take a whole lot of effort and it makes for another article. Another one is written and done!

Thanks for reading! If you want to help, or if the site has helped you, you can donate, register to help, write an article, or buy inexpensive hosting to start your own site. If you scroll down, you can sign up for the newsletter, vote for the article, and comment.

Linux Tips
Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.