Changing your parents' permissions to access your Pokémon cards
via the Linux Command Line

by Code Snipcademy on April 17th, 2015

Last post we taught you how to use the command line to cook the perfect steak. Now we'll teach you how to manipulate Linux permissions to grant access rights to buy and open Pokémon booster packs!

If you're unfamiliar with Pokémon cards, they're collectible shreds of paper with a Japanese monster drawn on them. You can use them to trade for other cards, make friends, and achieve social status among your fellow prepubescent friends. The more they shine and sparkle, the more they're worth. To sum it up, it's pretty much a big deal, especially when you're a 12-year-old kid.

first edition charizard

There's only one problem - your parents hate them. They don't understand the need to having a 1st Edition Charizard. Or how great of an investment these cards are - with returns ranking close to TY beanie babies! They'd rather have you read useless books (also pieces of paper but with words instead of monsters on them). We can, however, get around your strict parents through our cunning knowledge of the all-glorious command line interface.

Getting started

The first thing we have to do is check our piggy bank to see if we have enough for a booster pack.

Now let's check our wallet to see how our funds stand.

 $ ls piggy.bnk
-rwx------ 1 LittleJohn root 4.23USD Apr 21 15:38 piggy.bnk

Great! That should be enough for just one booster.

Go to the local Hobby Store

Now let's head on over to the local hobby store to check for Pokémon cards.

Once you're inside, change directories to the counter, and check all Pokémon booster packs' file access attributes. Since the booster is a directory, we have to pass in the -d option.

HobbyStore$ cd counter
Counter$ ls | grep *.pkmn
BoosterPack-Basic.pkmn    BoosterPack-Fossil.pkmn    BoosterPack-TeamRocket.pkmn  
BoosterPack-Jungle.pkmn   BoosterPack-GymHeroes.pkmn
$ ls -ld BoosterPack-Basic.pkmn
drwxr--r-- 1 HobbyStore root 3.99USD Apr 21 16:21 BoosterPack-Basic.pkmn

We can see that the owner has permissions rwx, meaning he or she can enter inside the pack and list the contents.

For the other permissions (group and others) the x option is not listed. Since this is a directory, that means we aren't able to access or list its contents. That's alright though! We'll learn how to handle all this through the command line!

Changing ownership

Alright! Now let's go ahead and purchase it.

$ git checkout BoosterPack-Basic.pkmn
Are you sure you want to purchase BooksterPack-Basic.pkmn for 3.99 USD [Y/n]? Y
Enter pin:
Loading >>>>>>>>>>>>>>> 100% 
Transaction complete.

Unfortunately since we are not of age yet, the HobbyShopEmployee has changed the file ownership rights to our dad instead of us. Boo-hoo.

 
HobbyShopEmployee$ sudo chown littleJohnnysDad BoosterPack-Basic.pkmn
scumbag hobby store owner

Back Home

Now that we have our booster, let's look at the file modes.

$ ls -ld BoosterPack-Basic.pkmn
drwxr--r-- 1 littleJohnnysDad root 3.99USD Apr 21 16:21 BoosterPack-Basic.pkmn

Looks like nothing's really changed; we still need dad's permission to open the booster...

Obtaining your parent's root password

Here at Code Snipcademy, we unfortunately do not teach any black hat tricks. Thus, we'll put it on you to find out what your parent's root password is. After you figure this out, you may proceed!

Using su to switch users

Now that we know the root password, let's switch to dad's account!

$ su -l dad
Password: 
~littleJohnnysDad$

The su command is used to switch users, and -l option will load your dad's environment variables and set the current working directory to his home.

Changing file group ownership and modes

Now we have to change the booster's group to kids, which we are part of.

$ chown :kids BoosterPack-Basic.pkmn
drwxr--r-- 1 littleJohnnysDad kids 3.99USD Apr 21 16:21 BoosterPack-Basic.pkmn

Now let's change the group accession so that we can list and open the booster pack.

$ chmod g+rwx BoosterPack.pkmn
$ ls -ld BoosterPack-Basic.pkmn
drwxrwxr-- LittleJohnny kids 3.99USD Apr 21 16:21 BoosterPack-Basic.pkmn

Woohoo! Now we can be in our normal user account and open boosters!

Giving us su right

Now, before you get too excited and pee your pants, let's think about this. Your parents will probably find out what you did and immediately change the password. However, we can go into the /etc/sudoers file to grant us permanent access.

To edit the /etc/sudoers file, use the visudo command.

$ visudo

Great! Now add this line to the file, which will give us access to all root commands.

littleJohnny ALL=(ALL) ALL

Now we can use the sudo command to do exactly we just did!

Checking file contents

WOOOOO!!!! NOW LET'S OPEN THAT BOOSTER PACK!!!

$ cd BoosterPack-Basic.pkmn
$ ls -l
...
Pokemon booster pack
The booster cover!
Bulbasaur pokemon card
Bulbasaur!
Squirtle pokemon card
Squirtle!
Drowzee Pokemon card
Drowzee!
Abra Pokemon Card
Abra!
Gastly pokemon card
Gastly!
Psychic Pokemon card
Psychic Energy Card!
grass energy pokemon card
Grass Energy Card!
Pokemon center trainer card
Pokemon Center Trainer Card!
Defender energy card
Defender Energy Card!
Nidorino pokemon card
Nidorino!
Chansey pokemon card
and the holocard...CHANSEY!!! OMG OMG OMG
« »

Learn more!

See how fun and exciting that was? If you have 10 minutes to spare, learn more about Linux Command line permissions. Or feel free to browse through our command-line tutorial series!

Take your Linux skills to the next level!

Linux for Beginners

Take your Linux skills to the next level! Try Linux & UNIX

Linux for Beginners doesn't make any assumptions about your background or knowledge of Linux. You need no prior knowledge to benefit from this book. You will be guided step by step using a logical and systematic approach. As new concepts, commands, or jargon are encountered they are explained in plain language, making it easy for anyone to understand.

$ Check price
24.9924.99Amazon 4.5 logo(101+ reviews)

More Linux & UNIX resources

Aching back from coding all day?

Inversion Therapy Table

Aching back from coding all day? Try Back Problems

Stretch out your back and relieve your back muscles with inversion therapy. This device counteracts the forces of gravity on the body by decompressing and elongating the spine. By using this product just ten minutes a day, you can be well on your way to improved circulation and posture while relieving muscle aches, back pain and stress.

$$ Check price
119.98119.98Amazon 4.5 logo(1,700+ reviews)

More Back Problems resources

Ad