So, What Is ‘sudo’ Anyhow?

If you’re a new user, you’ll see commands with sudo in them and you’ve gleaned the meaning of what is sudo. The sudo command is a bit more robust than you may know and this article is going to tell you what sudo is. As I’m not actually sure how to format such an article, I’m going to try to smash it to fit my usual style article. This may make for  a fairly short article.

The sudo command stands for ‘superuser do’ and that’s probably how most folks will know it. That is, after all, correct. You use sudo when you want to execute something that requires different privileges than your account has. Most of the time, that means you want to run the command as an administrator with root privileges. 

But, that’s not all that sudo can do. You can also use it to run software as though you were another user on the same machine. Some folks (erroneously, but not without merit) have taken to referring to sudo as ‘substitute user do’. It suits, but it’s not correct.

To be fair, sudo didn’t have those extra features when it was new (~1980). When it was new, it just let you run commands as a superuser – root – and that was it. Perhaps if it had been named today, with the current feature set, those folks would be correct by calling it ‘substitute user do’. As it stands, those people are technically incorrect.

I’ve also written a couple of other sudo-related articles that may interest the reader.

Create A New User With SUDO Privileges In Ubuntu
How To: Use sudo Without A Password

What Is sudo:

The sudo command typically starts a command, such as an installation command. For example, a command like this:

If you try that command without a privileged account, it’ll fail and you won’t be able to install the software. For security sake, your regular user account should operate under the ‘least privilege principle’, meaning your regular account can’t be used to maliciously operate the system.

The sudo command is that safety gap. To use sudo, you must be a member of the sudoers group/have rights to the command and you must know the password. If you have sudo access, you can cause all the harm you want to a system! So, protect those passwords because they are legitimately the keys to the kingdom.

As we learn what is sudo, we might as well learn a few flags that you can use with it. The most important one, as sudo is plenty powerful by itself, is the -u flag. You use that not when you want to operate as root but when you want to use the privileges of another user on the same system. It looks like this:

When you’ve authenticated as sudo, you will not need to enter your password again for some period of time. The most common period of time is 5 minutes. After five minutes of non-use (idle time with no sudo commands) have passed, you will need to authenticate all over again.

If you want to exit early, you just use the -k flag. That resets everything and you’ll need to authenticate the next time you wish to use sudo. Conversely, if you use the -v flag, it will grant you another five minutes of authenticated time, allowing you to extend your sudo session.

There are a few other flags, but those aren’t really used often. Though, if you’re going to enter a lot of commands, you can use sudo -s and open a new shell where you have sudo privileges. That’s useful if you’re going to use a number of commands and don’t want them in your terminal scroll-back.

Closure:

There you have it, you can now answer the question: what is sudo? It’s a handy tool to have and there are uses most people probably never bothered learning. It’s there if you need it and you might as well be familiar with it.

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.

Enable PPAs In Elementary OS

Today’s article will tell you how to enable PPAs in Elementary OS. This is generally considered a bad idea, but it’s your computer and you can do anything you want with it. So, well, this one will have you enabling PPAs in Elementary OS.

I suppose that some folks will have no idea what I’m talking about. So, I’ll point out that Elementary OS is a Linux distro. Also known as eOS, it seems  targeted at looking good, having cohesive apps, and charging you money for this. That’s fine. You can use it for free.

Elementary OS is based on Ubuntu, which is based on Debian. Ubuntu has PPAs, a way to install software that’s not in the default repositories, but Debian does not. Some Ubuntu derivatives also do not allow PPAs (by default) and Elementary OS is among those that do not.

Elementary OS developers would prefer you use AppImages or Flatpaks, instead of accepting the security burden that is allowing PPAs. After all, any PPA you add is pretty much like giving someone root access to your computer.

Well, today’s article is about just that. It’s a quick article that’ll teach you how to use PPAs in Elementary OS. Heck, the command to enable this is shorter than this intro, where I show you how to…

Enable PPAs In Elementary OS:

To get started, we’re going to have to have one of those open terminals. You can root through your menu (or use the search feature) or you can just press CTRL + ALT + T and your default terminal should open.

Next, to enable PPAs in Elementary OS, you really only need one command. But, we’ll make sure you’re updated fully before trying this. Thus, you get two commends!

Now that you’ve done that, you can now add PPAs to eOS. If you wanted to keep up with the more recent versions of LibreOffice, you’d run the following commands:

That should install LibreOffice and then keep it updated as the PPA maintainers update the repository. Either way, congratulations! If you’ve done everything correctly, you can now enable PPAs in Elementary OS.

Closure:

There you have it, another article. This article tells you how to enable PPAs in Elementary OS. Their preferences for different packages isn’t too dissimilar than Ubuntu themselves recommending Snap applications. Plus, any PPA you add will the be able to install software by its very nature, Maybe it is time to start doing away with the old ways and moving towards modernity?

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.

Check Memory Usage With ‘free’ In Linux

In today’s article, we’ll chec memory usage with the free command. We’ve touched on the ‘free’ command before, but this is a whole article about the free command. This should be a pretty quick and easy article, as it’s not a complex command.

There have been a few other articles about RAM.

How To: Find The RAM Total In The Terminal
Check Your Memory In The Terminal: Part II
Let’s Determine The Number of RAM Slots Without Opening The Case

And, in the discussions of those articles, we often refer to free -m as our go-to tool for quickly checking memory usage. It’s a handy tool used by most, and it’s a good tool to have in your toolbox. On top of that, it does a bit more than just check memory usage.

The free command has been around forever and describes itself like this:

Display amount of free and used memory in the system

Which is exactly what it does. It’s a pretty useful command if you want to see how much RAM you’re using, how much is free, how much is reserved for buffers, and even more if you’re interested in your swap stats.

So, folks are generally already familiar with the free command, but there are indeed more options and it’s worth an article to explain a few of those choices. Like always, you can also run man free to get a bunch of information that may not be included in this fairly brief article.

Check Memory Usage:

Yeah, this is yet another article that insists on the terminal. That’s not a bad thing, if you check the byline. The goal here at Linux-Tips is to get you more comfortable with Linux – and that includes getting comfortable in the terminal. So, open one up by pressing CTRL + ALT + T on your keyboard, and your default terminal should pop right up.

With that done, let’s go ahead and try the command that everyone uses:

The output from that will look a little something like this:

output from free -m
Those columns should be reasonably easy to understand. You can figure it out, I’m sure of it!

You can see by the column titles what the columns mean. Like I said, it’s relatively easy to understand – which is why it makes a pretty great tool. There’s actually a pretty good description of those terms, if you don’t already know them, in the man page.

But, you can use it in other ways. See, the -m stands for megabytes (obviously). Well, you can use other flags, like -b, -k, and -g. That’s bytes, kilobytes, and gigabytes – where the -m is megabytes as previously mentioned.

If you want a nice human-readable format, you can try this:

The output of that may vary the units but it will also show you which units are in use. It’s a pretty handy way to use the free command to check memory usage in Linux.

Sure, there’s a wide format and you can even use units as large as pebibytes. I don’t actually have anything where that’d make sense, but it’s an option if you happen to have such a system. (If you have access to a system with pebibytes of RAM, call me!)

But, did you know that you can run the command over and over again with just a single command? To do that, you use the -s flag followed by the number of seconds you want it to wait before refreshing. So, if you want it to run every 10 seconds, the command would look like this:

You can combine that with a count – like how many times you want it to run. So, something like this:

That will run the free command (you could add other modifiers) every five seconds and will do so three times in a row.

There are other options, but those are the most common. You can have it output the low and high numbers (when run over a period of time), display column totals, and even opt for a wider display. Personally, I don’t really find those options all that interesting and don’t bother with them, but they’re a man page away from being a part of your toolbox.

Closure:

And there you have it, an article teaching you how to check memory usage with the free command. The free tool is a pretty handy tool and one everyone should be familiar with. If your system is slowing down, it’s nice to know things like how much RAM is being used. If you work in application development, it’s nice to know how much more RAM your application adds to the system. There are any number of reasons why you’d want this information.

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.

How To: List Cron Jobs

Today’s article is going to show you a few ways to list cron jobs on your computer. If you don’t know, cron is a way to schedule jobs in Linux. Cron goes all the way back to the mid-70s UNIX era. It’s a pretty handy tool that we’ve not yet really covered on Linux Tips.

In one of these future articles, I’ll have to explain how to add, remove, and change cron jobs. It’s easier than you might think. Importantly, even if you haven’t added any cron jobs, your system almost certainly has many of them. They’re useful for scheduling tasks and your computer does all sorts of task scheduling even if you don’t add anything to it.

In today’s article, we’ll show you how to list cron jobs by their type. By type, I mean by when they’re scheduled. Tasks are scheduled on an hourly, daily, weekly, and monthly basis. You can schedule them at other intervals, but generally speaking the system will only use those particular intervals.

List Cron Jobs:

Like many articles, this one will also require an open terminal. The terminal is a pretty useful tool! Anyhow, you can open one pretty easily. Just press CTRL + ALT + T and your default terminal should open.

Once  your terminal is open, we can first examine the the hourly cron jobs. It’s really easy. Just enter:

You may start to notice a trend with this next one. If you want to list cron jobs by their daily status, your command would be just a little different.

Sure enough, if you want to list cron jobs by their weekly status, the command isn’t much different. That one is:

And of course monthly is like this:

See? Nice and easy. A little bite-size article that tells you how to list cron jobs.

Closure:

And there you have it. You have yet another article, this one dealing with showing you the cron jobs that you have running on your computer. These are all the tasks that are regularly scheduled. One of these days, I’ll do an article about editing them and adding them, including adding them with different interval schedules.

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.

Meta Post: The State of Linux-Tips.us

It has been a while since I’ve done a meta post, a post about how the site is doing and some general commentary. I try to do one every couple of months, as it’s nice to be transparent and they’re relaxed articles to write. They’re handy articles when you have time constraints!

Man… So much has changed. Once upon a time, I was stoked when the site would get 20 or 25 unique visitors in a single day. Then, I decided the site should get more visitors and changed the domain from .gq to .us – where search engines wouldn’t penalize me. (Though, weirdly, Bing despises this site and actually liked the one on the old .gq domain. I’d keep them both going, but then they’d penalize me for duplicate content.)

Anyhow, my point was that I was excited by just those few visitors. These days, it’s not uncommon for the site to see a few hundred visitors in a single day. In fact, this month’s traffic is (if it remains as it is) going to be pretty close to averaging 300 unique visitors per day. That excludes the many bots that visit. That’s just real humans.

I’ve mentioned this before, but few seem interested! If you have a social media account, you can help by sharing the articles. At the top of each article is a very, very easy way to share. I post to a single sub (automatically) on Reddit and sometimes remember to add it to Twitter – but my Twitter account has like zero followers and I’ve not had time to add new ones.

Umm… Speaking of which, this site’s Twitter is @TheRealKGIII – you should add me! Even if you no longer use Twitter, you should add me. I’m tempted to create a Facebook account for this site. I’ve never had a Twitter account before, and I’ve certainly never had a Facebook account before. But, they’d be good tools to promote the site. Or so I’m told…

But… That all depends…

See, my project was ‘for a year’. Way back on day one, I made it clear that it was a year-long project. It has been fun, but I’ve actually been at it for more like a year and  a half. The original site was up and running for quite a while, but I made the choice to reset the clock when I started this site. (That was on 04/18/2021.)

I still have many articles left to write, but the project ends. I’ll have to make a choice – and feedback would be awesome. Should I continue? Should I continue at the same rate? Maybe I should I shutter the site? Should I make the site a static site and save on hosting costs? Should I find someone to take the site over? There is a trivial amount of ad revenue (which could probably be improved), so the site might actually be able to be sold to someone for a few bucks – but I really don’t want to go that route.

What do you think I should do? LOL Maybe I should set up some sort of poll and get some real insight from others. Truth be told, I don’t even mind the publishing schedule. If I do keep going, I’m very likely to keep up the same publishing schedule. There have also been some guest articles and that’d be awesome if those still had a place to be published.

So far, the hosting is more expensive than the ad revenue and nobody donates. That’s okay too. ‘Snot like I’m gonna go broke. At this point, I’m dubious that it’ll even break even. Meh… It is what it is… 

The site has outgrown the free CDN that it was on. I found another way to ensure it’s quick in loading and responsiveness. It does include another CDN, but relies on it less and I can drop that aspect and still get just about the same results from the various site speed tests.

We get an A+ all around for loading speed, which is quite a feat when you see the backend and how bloated it is exactly. I have installed all the plugins! All of them! I might just have to move the site to a VPN if it gets more traffic. Yay! That’ll make it even more expensive! Still, I hate slow sites.

Moving on…

More about the site! As I mentioned, traffic has increased. 

The most popular page used to be about screenfetch vs neofetch. That has recently been usurped by a page about disabling sleep and hibernation in Ubuntu server. Oddly, that’s followed by a page about how to create a directory.

No, I do not know why that article is in third place, but it’s awesome that the site is legitimately helping people become more adept with Linux. That was the goal. Reaching your goals is pretty awesome!

As mentioned above, we’ll be averaging about 300 unique visitors per day. I’m not quite sure which is the most accurate, but it looks like this month has already displayed about 21k pages. The bandwidth? Well, I don’t want to talk about that.

The disk space used is just over 4 GB, which isn’t too bad and a lot of that is my fascination with backups. That’s really not all that much space and disk space is relatively inexpensive these days. I’m well within my account on that count.

This article will be the 156th article published on this site. That’s a whole lot of work. It’s over 126,000 words and, at an average reading rate, would take about 8.5 hours to read.

Not too many people signed up for the newsletter. There are over 30 people who subscribe to the newsletter – and actually confirmed their email address. That’s not a lot, but it’s like 30 more than I ever expected! I also don’t stress it. I’ve been thinking of doing that whole popup thing to try to get more people to sign up for the newsletter, but the options to do that aren’t as refined as I’d like. It’ll ask like once a visit, instead of like once a month. I really don’t want to be too obnoxious, though I suppose I could try it for a while.

The gist of it is, the site’s growing nicely – and much more than I ever dreamed of. I never expected anything even remotely like this. I get thousands of visitors just from search engines. Just this month, I’ve had about 2000 people arrive by search engine – mostly Google.

The Future…

I really haven’t decided yet. There’s more to write, so that’s not a problem if the site continues to get new and regular content. I’m not the kind of person to half-ass things, so I’d likely keep the same publication schedule. I guess the traffic is its own reward? Seriously, it would be nice to get some opinions on this. Some help would also be nice! 

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.