25.listopadu 2013

PC a internet Linux

Mám tu pár poznámek ze školení Linuxu v Gopasu, tak je zde bez ladu a skladu ukládám:

Příkazy na práci se soubory

mkdir
cd
ls -l

pwd - aktuální adresář

echo

cat - zobrazit soubor
tail - zobrazit posledních 10 řádků souboru
less - zobrazení s možností scrollování

ln -s target name - syymlink

stat soubor - informace o souboru

touch -vytvoří prázdný soubor

cp - kopírování
cp -a - zachová práva (resp. vlastníky) a časy - hodné pro zálohu. (Jinak dělá nové soubory s novými metainformacemi)

witch cat - řekne, kde se nachází příkaz cat

locate - vyhledá soubor (jakýkoliv) podle názvu - z indexu, který se obnovuje cronem denně /etc/cron.daily/mlocate.cron .
find - hledá podle čehokoliv, leckde a aktuálně



Příkazy na správu uživatelů a skupin

useradd
passwrd

userdel
usermod


groupadd
groupdel
groupmod

vipw
pxck

su -



Důležité soubory

/etc/passwd - seznam uživatelů
/etc/shadow - seznam hesel
/etc/group - seznam skupin
/etc/gshadow/ - seznam hesel skupin

/etc/fstab/ - seznam přimounovaných zařízení po startu

/etc/bashrc - spouští se při spuštění bash (konfigurace)
/etc/profile

~/.bashrc

Příkazy na nastavení oprávnění k souborům a složkám

Nastavení vlastníků: (může dělat pouze root)

chown - změna vlastníka(uživatele)
chgrp - změna vlastníka(skupiny)

chmod - změna přístupových práv

chnmod [ugoa][+-=][rwx] file

u=owner
g=group
o=other
a=all

chmod 777 file - nastaví plná práva pro všechny

rwx - práva
421 - bity

první bajt:

SetUID on Exec (bit 4) - u souboru převezme práva svého vlastníka
SetGIU on Exec (bit 2) - u souboru převezme práva své skupiny, u adresáře - nové sobory dědí vlastníky z tohoto adresáře
Sticky bit (bit 1) - u adresáře může podsoubory mazat pouze jejich vlastník


umask 022 - nastaví masku, která se odečte od výchozího oprávnění a tu nastavuje pro nové soubory

Výchozí pro adresáře 777
umask 022
Bude se nastavovat 755

Pro soubory vždy o 111 menší, tedy v příkladu 644.

umask - pouze pro aktuální bash, jinak je potřeba přidat do /etc/bashrc





Příkazy na práci s disky

mount /mnt/disk /dev/sda3 - namountuje disk
mount /zaloha/sda3.img /mnt/obnova -o loop - namountuje image
umount

fdisk /dev/sda

mkfs - formátování
fsck - kontorla filesystému

resize2fs /dev/sda2 - roztáhne filesystem na celou partition



Scriptování

vim - textový editor - command mode , edit mode -> pro přepnutí zmáčknout i nebo insert, resp. ESC,
příkazy
:w nazev-souboru - write
:q - konec
mc - midnight commander
-
-----
přesměrování výstupu: ls -l >vystup.txt 2>chyby.txt

0 - stdin
1- stdout
2 - stderr

přesměrování na stdout: ls -l >&1

/dev/null

> - přesměrování + přepsat
>> - přesměrování + doplnit (append)
-----
Filtry:

wc - vypíše počet slov na vstupu (parametr -l vypíš počet řádků)
sort - seřadí podle abecedy
grep - vybere řádky, které obsahují nějaký text (regulární výrazy - ^ - začátek řádku, $ konec řádku)
uniq - vybere unikátní řádky
cat - rozdělí vstup na řádky
yes - posílá na výstup samo y nebo to co dostane v parametru
---
Proměnné:

a=ahoj
echo $a

echo $(($a + 5))

export a - zviditelní proměnnou i do podřízených bashů

unset a - zruší proměnnou

env - zobrazí seznam proměnných (i prostředí)

$? návratová odnota naposledy spuštěného příkazu
$$ procesID aktuálně spuštěného procesu
---
Unix time - počet sekund od 1970.

----
Script

Na prvním řádku musí být:
#!/bin/bash

Potom nastavit právo spuštění chmod +x název-sounour

Souštět s plnou cestou nebo uložit do /bin

script se spouští v jiném bash, takže nevídí proměnné, z původního bashe (z příkazové řádky).
Pokud chceme proměnné zviditelnit pro podřízení bashe, tak je třeba použít příkaz export promenna

----

alias - vytvoří aliasy k příkazům
alias l="ls -la"
unalias l



Klávesové zkratky

Alt-f, Alt-b - posun po slovech
Ctrl-l - smazání obrazovky
Ctrl-w - smazáníí posledního slova

Ctrl-k, Ctrl-u - smazání od kurozu do začátku/konce řádku

Ctrl-r - hledání v historii příkazů
Ctrl-y - vložení smazaného textu zpět

Tab - doplění názvu souboru, cesty


Typy souborů

d - directory
c - character device
b - block device
l - link
s - socket
p - pipe (Fi/Fo)

mkfifo - vytvoří pipe na disku

Speciální znaky

* ? [] ! Expanze jmen
# Komentáře
\ Escqape sekvence
>, >> Přesměrování výstupů
< Přesměrování vstupů
| Nepojmenovaná pipe
$ Přístup k proměnným
&& Spuštění při nulovém návratovém kódu
|| Spuštění při nenulovm návratovém kódu
; oddělení příkazů
() spuštění v kopii shellu
' ' posloupnost znaků bez speciálního významu
" " posloupnost zanků bez speciálního významu vyjma \, $, `` (tedy interpretují se proměnné, ale lze použít mezery)
`prikaz` vrátí standardní výstup příkazu (rm `cat seznam`) - smaže soubory, které jsou v v souboru seznam.
& spuštění na pozadí
$? návratová odnota naposledy spuštěného příkazu
$$ procesID aktuálně spuštěného procesu


Balíčkovací systémy

RPM

up2date
yum
apt-rpm

Zdroje pro centos:
ftp.cvut.cz/centos/

Zajímavé repozitáře:


Aktualizace celého systému: yum update
Aktualizace kernelu: yum install kernel


Jobs

jobs - zobrazí úlohy jednoho uživatele v jednom bashi včetně čísla úlohy , kterou pak použiji v %číslo v následujících příkazech (není processID)
Ctrl - z - pozastaví úlohu
Ctrl - c - přeruší úlohu
Ctrl - \ - přeruší úlohu a možná vypíše obsah paměti do souboru
fg %1 - pokračování pozastavené úlohy (foreground)
bg %2 - pokračování na pozadí (background)
kill %1

pstree - strom procesů
ps axfl - seznam všech procesů
Stav:
S - Sleeping
R - Running
T - sToped - pozastaven
D - Disk, I/O wail
Z - Zombie
PRI - priorita (vypočítává linux na základě NI)
NI (Nice) - priorita <-19;20> Čím nižší číslo, tím vyšší priorita.

nice -n 20 yes>/dev/null -spustí yes s NICE prioritou 20 (nejnižší)
renice 19 PID - změní prioritu na 19

zvyšovat prioritu (snižovat NICE) může jen root, na druhou stranu můžou všichni.

VSZ - Paměť o kterou si proces požádá
RSS - Paměť, kterou proces reálně využívá

---
kill -n PID - vyšle signál na zabití procesu
killall -n nazev - zabije všechny procesy názvu

-9 / SIGKILL - násilné ukončení
-2 / SIGINT - Ctrl-C
-3 / SIGQUIT - Ctrl-\
-15 /SIGTERM - Default
(man 7 signal)

---

top - taskmanager :)

us - user load
sy - system load - co běží v jádře
ni - nice load - co běží s nižší prioritou
id - idle - zbytek do 100%
wa - wait I/O - čeká na disk
hi - hardware interupts
si - software interupts
st - virtualizace

---
ionice - nastacení priority I/O
df - disk free
free - velikost paměti
du - velikost adresáře
du -s -h /* |sort -h |tail -1 - vypíše největší adresář v rootu

munin - sw, který zobrazuje grafy a statistiky využití serveru

vmstat - informace o systému s parametrem, jak často se mají obnovovat.
w / who - seznam přihlášených uživatelů
dmesg - posledních několik událostí jádra (např. připojení USB flash
last - posledních několik přihlášení

lspci -v - informace o zařízeních připjeních na PCI
lsusb -v - totéž o USB
dmidecode - informace o desce a procesoru

cat /proc/cpuinfo
cat /proc/memifno
cat /proc/interrupts

Start systému

bootloader - Grub

/etc/inittab

7 úrovní startu systému a definice, do které má startovat.

0 - halt
1 - single
2 - Multiuser without NSF
3 - Multiuser
4 - unuser
5 - xWIN
6 - reboot

init 5 - spustí grafické rozhraní

who -r - vypíše úroveň běhu

/etc/rc.d/init.d/ - scripty, které spouští a vypínají služby
/etc/init.d/ -> symlink
script.name start , stop, restart, status
service sshd stop - altenativa

rc3.d - symlinky na všechno, co se vypíná a startuje do run levelu 3, podle čísla priority
K se spouští s paramaterm stop
S se spouští s parametrem start

chkconfig - program na editaci těchro symlinků (spouštění neby vypínání startování služeb v jednotlivých runlevelech)
chkconfig --list ssh - vypíše, kde se startuje sshd
chkconfig --level 2345 ssh off - vypne sshd v leveli 2345
chkconfig sshd reset - nastaví znovu sshd do původního stavu

rc.local - tam se doplní script, který se má spustit po initu všech služeb pod uživatelem root

---
Změna hesla roota:

při bootu přerušit bot loader, pomocí klávesy e editovat a na prostřední řádek dopsat 1, aby naboototval do init 1, tam je automaticky přihlášen root a nevyžaduje heslo. Pak už je možno dělat pod rootem cokoliv včetně změny hesla.

chroot /mnt/disk - přesune kořen (root) jinam (na připojený disk)
mount /proc/ - domountovat kernelové adresáře do nové struktury
mount /sys/ - domountovat kernelové adresáře do nové struktury

---


Cron

Cron - opakované úlohy

crond - cron demon

ps axf | grep "cron" - kontrola, jestli kron běží

1) minuta (0-59)
2) hodina (0-23)
3) den (1-31)
4) měsíc (1-12)
5) den v týdnu (0 (neděle) -6)

0 20 * * * - každý den ve 20:00
0,30 20 * * * - každý den ve 20:00 a 20:30
0-30 20 * * * - každý den 20:00-20:30 každou minutu
0-30/5 20 * * * - každý den 20:00-20:30 každých 5 minut
0 20 1-7 * 1 - každé první pondělí v měcíci

crontab -l - zobrazení cronu
crontab -e - editace cronu
crontab -e -u phl - editace cronu uživatele phl

/etc/cron.deny - soubor, kde jsou uvedeni uživatelé, kteří nesmí nastavovat cron (crontab)
----

at - neopakované úlohy

at 10:30
at december 24
at now + 5 minute

atq - vypíše seznam naplánovaných úloh
atrm 7 - zruší úlohu č. 7

napsat posloupnot příkazů a ukončit Ctrl-D

---

ntpdate tik.cesnet.cz - nastaví čas proti NTP serveru



Logování

/dev/log - soubor typu socket

rsyslog

FACILITY, LEVEL

rsyslog.conf

/var/log/.... - uložené logy

logger -p cron.emerg Zalogovaná zpráva

síťově po UDP 514

---
logrotate

/etc/logrotate.conf - konfigurace
/etc.logrotate.d - definice

---
analýza logů

swatch
logchecker
logwatch - umíposlat denně informace o tom, co se dělo minulý den



Quota

1) Při mounotvání zapnout quotu (usrquota, grpquota)
/ect/fstab
/dev/hda1 / ext3 defaults, usrquota 1 1

2) Vytvořit databázi
quotacheck - uamc ->vytvoří /aquota.user - databázi

3) Zapnout
quotaon -ua

4) Nastavit quoty
edquota username - editace quota pro konkrétního uživatele ve vimu
setquota - nastavení pro uživatele z příkazového řádku

repquota -ua - zobnrazí informace o kótě



Jádro (Kernel)

lsmod - vypíše seznam modulů v jádře
modinfo - vypíše informace o konkrétním modulu

uname -a - vypíše infromace o jádře

cesta k modulům : /lib/modules/`uname -r`

modprobe - zavede modul

Moduly se loadují sami, podle potřeby HW (při přidání FAT Flash) a nebo ručně modprobe. Sami se ale neunloadují.

rmmod - odstranění modulu.


/etc/modprobe.d - konfigurace modprobe

blacklist -> seznam modulů, co se automatcky nelouadují





Zálohování

cp -a

partimage - záloha image, musí znát typ systému, nezálohuje prázdné místo

rsync - v podstatě zálohování, ale umí to incremantálně (dělá to v podstatě synchronizaci)

scp /home/ user@server:/mnt/zaloha

tar -cf archiv.tar /home/ - vytvořit
tar -xf archiv.tar /tmp/ - obnovit
tar -tf archiv.tar - test (seznam souborů)

dd - zálohuje blokově - lze tedy využín an kopírování souborů, ale hlavně celých blokových zařízení, např: sda

dd if=/dev/sda2 of=zaloha.img if=input file, of= outputfile,

odzálohuje do souboru nebo i na jinou partititon, která musí být stejně nebo víc velká


rdiffbackup - incrementální zálohy
Bacula





Síť

ifconfig

/etc/init.t/network - startovací skript pro síť (start, stop)
/etc/sysconfig/networkscripts/ - nastavení síťovky

ifcfg-eth0 - soubor s nastavením sítě

ifconfig eth1 129.168.2.1 netmask 255.255.255.0 (pouze do restartu)

---

route - vypíše routovací tabulku

/proc/sys/net/ipv4/ip_forward - musí být jednička, aby systém routoval (stal se routerem)

ip link show
---
/etc/resolv.conf - seznam DNS serverů

nameserver 8.8.8.8 - zače používat DNS server

----
Routování


iptables -firewall (netfilter)

iptables -L Vypíše všechny pravidla

iptables -A OUTPUT -d 8.8.8.8 -J DROP - zakáže přístup na 8.8.8.8 (z toho počítače)
iptables -P FORWARD DROP - default pro forward bude drop (pro routování)

iptables -A OUTPUT -p tcp --dport 80 -j DROP - zakáže port 80

iptables -A INPUT - state --state ESTABLISHED -j ACCEPT - zajistí, aby se vraceli pakety sestavené ze vnitř (odpověď na požadavky)

iptables -A INPUT - state --state RELATED -j ACCEPT - zajistí, aby se vraceli pakety související s již sestavenými (např. FTP)


iptables -L -n -t NAT - natovací tabulka

iptables -L -n -t mangle -

iptables-save - záloha firewallu (uložit výstup do souboru)

/etc/init.d/iptables start|stop|save - uložit pravidla



Sudo

sudo prikaz

/etc/sudoers/ -seznam sudo nastavení

editovat pomocí visudo

syntaxe: uzivatel host = (uzivatel) [NOPASSWD:]prikaz

User_Alias ZASTUPCI = pepa,honza,vojta
Runas_Alias ZASTUPCI = pepa,honza,vojta
ZASTUPCI ALL=(ZASTUPCI) /bin/kill

sudo -u honza kill 1234

%skupina -



Hledáte-li správce sítě nebo prostě nekoho kdo umí spravovat servery, hledejte na www.petr-hladis.cz

Přečteno: 10610x | Komentářů: 8x | Kategorie: PC a internet

Komentáře čtenářů

1. GRAVATAR - plaubbida@benjaminmail.xyzplaubbida28. 10. 2022 15:08:00
Featured Member Sponsor Rep <a href=http://stromectol.autos/>stromectol tablets buy</a> The latter is manifested as chronic leg swelling and pain and occurs in about 20 of all ED patients with proximal DVT
2. GRAVATAR - Zootthory@newonlinemail.xyzZootthory7. 11. 2022 14:54:00
I think one of the big things to remember is that along with the drug, it is a known fact that women can suffer post traumatic stress disorder after breast cancer <a href=http://priligy.me/>buy priligy</a> The possibility of acting pharmacologically upon different transcription pathways represents a novel approach to modify drug effects directed to specific transduction targets through cross talk between their components

Reklama ETARGET:

3. GRAVATAR - Quexerolo@benjaminmail.xyzQuexerolo9. 11. 2022 21:48:00
<a href=http://nolvadex.one/>what is nolvadex used for in bodybuilding</a> These are evident on ophthalmoscopy and in retinal photographs
4. GRAVATAR - duchthusy@barrettmail.xyzduchthusy17. 11. 2022 6:57:00
com 20 E2 AD 90 20Can 20You 20Get 20Viagra 20Over 20The 20Counter 20At 20Cvs 20 20Viagra 20Din viagra din Director of National Intelligence James Clapper has already authorized chiefs of the 16 U <a href=https://lasix.autos/>lasix 80 mg</a>
5. GRAVATAR - stirutt@newonlinemail.xyzstirutt17. 11. 2022 10:18:00
<a href=http://stromectol.ink/>purchase stromectol</a> dronedarone will increase the level or effect of benzhydrocodone acetaminophen by affecting hepatic enzyme CYP2D6 metabolism
6. GRAVATAR - Slaldycle@topmailnew.xyzSlaldycle18. 11. 2022 7:38:00
Has Avastin helped you <a href=http://doxycycline.world/>doxycycline heartburn</a>
7. GRAVATAR - addedetem@mailuk.siteaddedetem19. 11. 2022 22:06:00
Cmax and AUC of tenofovir are 0 <a href=https://clomid.mom/>clomid dosage for males</a> Leg length discrepancy requires assessment for the need for orthotics and corrective surgery

Reklama ETARGET:

8. GRAVATAR - opporia@newonlinemail.xyzopporia9. 12. 2022 19:07:00
Epub 2012 Feb 22 <a href=https://clevitras.cyou>bayer levitra 20 mg</a> However, it remains to be determined whether the tTA protein is expressed and functional in these clones

Přidat vlastní komentář k článku



Z důvovů ochrany proti spamu prosím do následujícího políčka napište texy "NOSPAM":

Chcete-li ke komentáři přidat svou fotku nebo jinou ikonku, postupujte podle návodu.


TOPlist

[CNW:Counter]