Najlepšie príklady systému Linux

Linux je výkonný operačný systém, ktorý poháňa väčšinu serverov a väčšinu mobilných zariadení. V tejto príručke vám ukážeme príklady toho, ako používať niektoré z jej najvýkonnejších funkcií. To zahŕňa použitie príkazového riadku Bash.

12 jednoduchých a užitočných príkazov systému Linux

Tu uvedené príkazy sú základné a pomôžu vám rýchlo začať. Ale sú tiež výkonné a budú užitočné aj naďalej, keď sa rozšíria vaše odborné znalosti o Linuxe.

  1. echoPríkaz: Týmto sa vezme text, ktorý mu dáte, a odošle ho niekam - späť na obrazovku, do súboru alebo na iný príkaz. Príklad:echo "hello!"
  2. catPríkaz: Ak chcete zobraziť obsah textového súboru, stačí napísať cat myfile.
  3. findPríkaz: Robí to, čo hovorí, a je v tom dobrý. Použite ho na vyhľadanie súborov podľa cesty, veľkosti, dátumu, vlastníka a množstva ďalších užitočných filtrov. Príklad: find . -type f -mtime -1h # List files in this directory modified in the past hour.
  4. datePríkaz: Stačí zadať dátum, keď chcete vedieť, koľko je hodín. Príklad: date "+It's %l:%m%p on %A". Použite ho v skripte na pomenovanie súborov podľa aktuálneho dátumu.
  5. lsPríkaz: Čo sa nachádza v tomto adresári? Kombinujte lss niekoľkými užitočnými príznakmi na zobrazenie a triedenie obsahu adresára podľa dátumu a veľkosti. Poskytuje tiež veľa možností na formátovanie výstupu.
  6. pwdPríkaz: Kde to som? Linux môže byť nemilosrdný, najmä keď niečo vymažete. Pred zadaním príkazov sa uistite, že o nich viete.
  7. mailPríkaz: Poštový program systému Linux nevyzerá dobre, ale môže byť skutočne užitočný. Môžete vytvoriť správu a do jedného príkazu pridať text, príjemcov a prílohy. Príklad:echo "We're having a great time." | mail -s "Wish you were here!" -A postcard.png -t [email protected]
  8. cutPríkaz: Ak máte reťazec s oddeľovačmi, použite cutna odfiltrovanie určitých polí. Príklad:echo "this, that, and the other" | cut -d, -f2 # "that"
  9. grepPríkaz: Na vyhľadanie riadkov textu, ktoré obsahujú určitý reťazec, použite grep. Príklad:grep 'root' /etc/passwd # root:x:0:0:root:/root:/bin/bash
  10. sedPríkaz: Slúži sedna vyhľadanie a zmenu podreťazca v útržku textu. Príklad:echo "this, that, and the other" | sed 's/that/those/' # "this, those, and the other"
  11. shutdownPríkaz: Tento príkaz slúži na vypnutie systému a vypnutie napájania. Príklad: shutdown -h nowsystém sa okamžite vypne. shutdown -h +5vypne systém po piatich minútach.
  12. wgetPríkaz: Slúži wgetna stiahnutie súborov z príkazového riadku.

    Príklad: wget //ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz

Tieto príkazy používajte v skriptoch a na príkazovom riadku. Sú to všetko veľmi silné príkazy a hlavná stránka systému Linux obsahuje oveľa viac informácií o každom z nich.

Príklad príkazov na správu používateľov systému Linux

Nasledujú tiež dôležité príkazy používané pre správcov systému:

  1. uptime Príkaz: V systéme Linux príkaz uptime zobrazuje, ako dlho je váš systém spustený a koľko používateľov je aktuálne prihlásených. Zobrazuje tiež priemer záťaže v intervaloch 1,5 a 15 minút.
  2. wPríkaz: Zobrazí sa aktuálne prihlásení používatelia a ich proces spolu s priemermi načítania. Tiež zobrazuje prihlasovacie meno, meno, vzdialený hostiteľ, čas prihlásenia, čas nečinnosti, JCPU, PCPU, príkaz a procesy.
  3. usersPríkaz: zobrazí aktuálne prihlásených používateľov. Tento príkaz nemá iné parametre ako help a verziu.
  4. whoPríkaz: príkaz who jednoducho vráti meno používateľa, dátum, čas a informácie o hostiteľovi. Príkaz who je podobný príkazu w. Na rozdiel od príkazu w, kto netlačí, čo robia používatelia.
  5. whoamiPríkaz: príkaz whoami vytlačí meno aktuálneho používateľa. Môžete tiež použiť výraz „kto som“ na zobrazenie aktuálneho používateľa. Ak ste prihlásení ako root pomocou príkazu sudo, „whoami“ vráti root ako aktuálny užívateľ. Ak chcete vedieť presného prihláseného používateľa, použite „kto som“.
  6. ls Príkaz: ls zobrazí zoznam súborov v čitateľnom formáte.
  7. crontab Príkaz: zoznam úloh naplánovaných pre aktuálneho používateľa pomocou príkazov crontab a -l.
  8. lessPríkaz: príkaz menej vám umožní rýchlo zobraziť súbor. Stránkovať môžete hore a dole. Stlačením klávesu „q“ ukončíte okno, ktoré je menšie.
  9. morePríkaz: príkaz more vám umožní rýchlo zobraziť súbor a zobraziť podrobnosti v percentách. Stránkovať môžete hore a dole. Stlačením klávesu „q“ vystúpite z viac okna.
  10. cp Príkaz: Skopírujte súbor zo zdroja na miesto určenia pri zachovaní rovnakého režimu.

Ako vytvoriť používateľa

Použite adduseralebo useraddpríkaz pre pridanie nového používateľa do systému.

$ sudo adduser username

Nezabudnite nahradiť usernamepoužívateľa, ktorého chcete vytvoriť.

Pomocou passwdpríkazu aktualizujte heslo nového používateľa.

$ sudo passwd username

Dôrazne sa odporúča silné heslo!

Ako vytvoriť používateľa Sudo

Ak chcete vytvoriť sudopoužívateľa, musíte najskôr vytvoriť bežného používateľa pomocou vyššie uvedeného príkazu a potom ho pridať do skupiny, ktorá ho sudoerspoužíva usermod.

V systémoch Debian (Ubuntu / LinuxMint / ElementryOS) majú členovia sudoskupiny oprávnenie sudo.
$ sudo usermod -aG sudo username
V systémoch založených na RHEL (Fedora / CentOs) majú členovia wheelskupiny oprávnenie sudo.
$ sudo usermod -aG wheel username

Ako odstrániť používateľa

Pre Debian (Ubuntu)
$ sudo deluser username
Pre RHEL (Fedora / CentOS)
$ sudo userdel username
Vytváranie skupín a pridávanie používateľov
$ sudo groupadd editorial $ sudo usermod -a -G editorial username

Note: All the above commands can be executed without sudo in root mode

To switch to root on ubuntu, run the  su -i command followed by the password of the user logged in. Prompt changes to # instead of $.

On Debian systems (Ubuntu/LinuxMint/ElementryOS), members of the sudo group have sudo privileges.
$ sudo usermod -aG sudo username

How to Create a Group

To create a group, use the command groupadd

$ sudo groupadd groupname

How to delete group

To delete a group, use the command ‘groupdel’

$ sudo groupdel grouname

The Linux Find Command Example

Using the Find Command

The Linux find command is a powerful tool to help you locate files and directories on your server. With a little practice, you can easily track things down based on name, type, size, or date (when they were created or last updated).

Think of find as your eager helper:

You: “I’m looking for something on my server.”

Find: “I can help! What can you tell me about it?”

You: “It was a file, bigger than 2GB, somewhere under my home directory, updated in the last 48 hours.”

Find: “Tada!”

Find is a program, so really you’d have to tell it find ~ -type f -size +2G.

Here are some sample commands using find:

  • find ~ -type d # Show me all the subdirectories inside my home directory
  • find / -type f -name 'todo.txt' # Show me files named 'todo.txt' anywhere under the root directory (i.e. anywhere)

The first parameter always names the directory in which we’ll look. In our examples above, these are ~ (home directory of the current user) and / (root directory of the filesystem).

Other parameters are optional and can be combined in any ways you find useful:

  • The type parameter allows you to constrain the search for files only (f), directories only (d) or symbolic links (l). If you omit the type parameter, you’ll be searching for all of these types.
  • The name parameter lets you specify what you want to find by name, either with a literal string (‘filename.txt’) or using wildcards (‘file?.*’).

man find will show you many more parameters, and is worth reviewing. Find can locate files by name, user, creation date, size and much more. Next time you’re looking for something, find it!

Linux dd Command Example

The “dd” command can be used to create a file of a specific size. This is useful if you would like to test download speeds, or any other tests, and need a file of a specific size.

dd if=/dev/zero of=file_name.txt bs=1024k count=10

This will create a file of 1MB called file_name.txt.

bs is your byte size and count represent the number of blocks. An easy way to look at is 1024K X 10.

Here is an even simpler way to create a 1MB file:

dd if=/dev/zero of=file_name.txt bs=1MB count=1

Example of how to write a Linux Bash Script

Writing a Bash Script

By typing commands on the Linux command line, you can give the server instructions to get some simple tasks done. A shell script is a way to put together a series of instructions to make this easier. Shell scripts become even more powerful when you add logic like if and while to automatically control how they behave as circumstances change.

What’s Bash?

Bash is the name of a command line interpreter, a program that makes sense of the Linux commands you enter at the command prompt, or in your script.

What’s in a Script?

A script is just a file. A basic script is made up of an introductory line that tells the server what to make of it, and one or more instructions to execute. Here’s an example:

#!/bin/bash echo "Hi. I’m your new favorite bash script."

The first line has special meaning, which we’ll discuss below. The second line is just a Linux command, one you could type out on the command line.

What’s a Comment?

Comments are text you add to your script that you intend bash to ignore. Comments start with a pound sign, and are useful for annotating your code so you and other users can understand it.

To add a comment, type the # character, followed by any text that’s helpful you. Bash will ignore the # and everything after it.

Note: the first line of the script is not a comment. This line is always first, always starts with #! and has special meaning to bash.

Here’s the script from before, commented:

#!/bin/bash # Designates the path to the bash program. Must start with '#!' (but isn't a comment). echo "Hi. I’m your new favorite bash script." # 'echo' is a program that sends a string to the screen.

Executing a Script

You can open a text editor, paste that example code and save the file, and you’ve got a script. Scripts are conventionally named ending in ‘.sh,’ so you might save that code as myscript.sh.

The script won’t execute until we do 2 things:

First, make it executable. (We’ll only have to do this once.) Linux relies extensively on file permissions. They determine a lot about how your server behaves. There’s a lot to know about permissions, but for now we only need to know this: you can’t run your script until you give yourself execute permissions. To do that, type:

chmod +x my script.sh

Second, run it. We execute the script from the command line just like any other command like ls or date. The script name is the command, and you need to precede it with a ‘./’ when you call it:

./myscript.sh # Outputs "Hi. I'm your new favorite bash script." (This part is a comment!)

Conditionals

Niekedy chcete, aby váš skript urobil niečo, iba ak je niečo iné pravdivé. Napríklad vytlačte správu, iba ak je hodnota pod určitým limitom. Tu je príklad použitia if:

#!/bin/bash count=1 # Create a variable named count and set it to 1 if [[ $count -lt 11 ]]; then # This is an if block (or conditional). Test to see if $count is 10 or less. If it is, execute the instructions inside the block. echo "$count is 10 or less" # This will print, because count = 1. fi # Every if ends with fi

Podobne môžeme skript usporiadať tak, aby vykonával inštrukciu, len keď je niečo pravdivé. Kód zmeníme tak, aby sa zmenila hodnota premennej count:

#!/bin/bash count=1 # Create a variable named count and set it to 1 while [[ $count -lt 11 ]]; do # This is an if block (or conditional). Test to see if $count is 10 or less. If it is, execute the instructions inside the block. echo "$count is 10 or less" # This will print as long as count <= 10. count=$((count+1)) # Increment count done # Every while ends with done

Výstup tejto verzie súboru myscript.sh bude vyzerať takto:

"1 is 10 or less" "2 is 10 or less" "3 is 10 or less" "4 is 10 or less" "5 is 10 or less" "6 is 10 or less" "7 is 10 or less" "8 is 10 or less" "9 is 10 or less" "10 is 10 or less"

Skripty v reálnom svete

Tieto príklady nie sú nijako zvlášť užitočné, ale princípy sú. Použitím while, ifa akýkoľvek príkaz, ktorý by inak mohol zadať ručne, môžete vytvoriť skripty, ktoré robia hodnotnú prácu.