2024. április 18., csütörtök

Gyorskeresés

Linux parancsgyűjteményem

Írta: | Kulcsszavak: linux . cron . at . időzités . parancssor

[ ÚJ BEJEGYZÉS ]

idozites - job scheduling

Két módszer létezik.
cron - periodikusan ismétlődő feladatok végrehajtására.
at - egyszeri időzítésre

cron
Háttérben futó daemon, ami percenként ellenőrzi, hogy van-e végrehajtandó feladat.
A fő beállitó file /etc/crontab . Az itt definiált feladatok root által manageltek, de beállithatunk más user-t is.
Minden egyes usernek van külön crontab file-ja, ahol saját job-okat tud definiálni.
crontab -l : listázza az adott user által definiált feladatokat
crontab -e : szerkesztés

Hat mező van definiálva az időpont beállitásához
1. minute, perc
2. hour, óra
3. day of month, a hónapban hányadik nap
4. month, hónap
5. day of week, a hét napja, 0-7 -ig, 0 és a 7 is vasárnap.

* - minden időpontban
*/10 * * * * - minden 10 percben
* 7-10,17-22 * * * - 7-10 és 17-22 óra között, fontos, hogy nincs space, csak egy vessző a felsorolások között!
@yearly 0 0 1 1 *
@daily 0 0 * * *
@hourly 0 * * * *
@reboot Run at startup
Példa
0 * * * * root aplay /usr/share/sounds/pop.wav - minden nap minden óra 0. percében lejátsza pop.wav -ot
*/10 7-10,17-22 * * 1-5 root aplay /usr/share/sounds/pop.wav - Január-tól Májusig, minden nap, reggel 7-10 és du 17-22 között minden 10. percben lejátsza a pop.wav-ot.

Egyéb beállítások
Lehetőség van globál környezeti változók beállitására. Úgy mint: $LOGNAME, $HOME, $MAILTO...
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/bin

timeout megadása
# myscript shouldn't take more then 40 minutes!
47 * * * * root /usr/bin/timeout 2400 /tmp/myscript

at
at -f idozitett.sh -v 03:59 tomorrow
Fri Jan 25 03:59:00 2013
job 13 at 2013-01-25 03:59

at -f idozitett.sh -v now + 1 hour

at -l : idozitett job-ok
Displaying and removing jobs with atq and atrm
atq
16 Wed Jul 11 02:00:00 2007 a ian
17 Sat Jul 14 02:00:00 2007 a ian
14 Sun Jul 8 22:00:00 2007 a ian
15 Tue Jul 10 02:00:00 2007 a ian
atrm 16 14 15
atq
17 Sat Jul 14 02:00:00 2007 a ian
13 2013-01-25 03:59 a root

-------------------------------------------------------------------------------------------------------------------------

find . -type f | xargs md5sum > /dfcxact/0/rescuer.md5 - md5 subfolderekre is
chkconfig --list - melyik futtatási szinten milyen servicek indulnak el
lsof -i - megmutatja melyik service melyik porton kommunikál
iptables -L - tűzfal szabályok
iptables -F - tűzfal kiiktatása
netstat -nr - route tábla

cat /etc/*-release - linux verzió
lsb_release -a - distribution-specific information
cat /proc/version - kernel információ
uname -a - kernel információ
uname -mrs - kernel információ

wait PID - addig vár amíg a PID létezik (csak akkor ha egy azon shellből lettek meghívva)
tail -f -n 1 /var/log/messages - folyamatosan figyeli az adott file-t
fuser --silent /var/log/messages - visszatérési érték 0 ha használatban van a file és 1 ha nincs
while fuser --silent ~/movies/munkaugyek.avi; do
sleep 1m

addig vár amíg a film át nem másolódott
----------------------------------------------------------------------------------------------------------------------------------
pushd / popd - megjelölhetünk vele könyvtárakat és gyorsan ide/oda lépkedhetünk
$ pwd
/home/himanshu/Desktop
$ pushd .
~/Desktop ~/Desktop
$ cd ../practice/
$ cd /home/himanshu/
$ cd /home/
$ popd
~/Desktop
$ pwd
/home/himanshu/Desktop

----------------------------------------------------------------------------------------------------------------------------------
Ha nem megy az unmount:

# umount /media/disk/
umount: /media/disk: device is busy
# fuser -m /dev/sdc1
/dev/sdc1: 538
# ps auxw|grep 538
donncha 538 0.4 2.7 219212 56792 ? SLl Feb11 11:25 rhythmbox

Megoldás mount -13 -as hibára:
mount -t cifs //10.222.82.16/xxx /mnt/bu -o username=user,password=xxxx,iocharset=utf8,file_mode=0777,dir_mode=0777

find ./ -iname '*.pdf' -o -iname '*.zip' - find több paraméterrel

nmap -sS 127.0.0.1 - nyitott portok

Virtuális file rendszer
#1 Hozzunk létre egy 10MB-os virtuális filerendszert. 512 az alap foglalási egység. 20480*512=10MB
dd if=dev/zero of=/tmp/disk-image count=20480
#2 Hozzunk létre a file rendszert
mkfs -t ext3 -q /tmp/disk-image
#3 mountoljuk fel
mkdir /virtual-fs
mount -o loop=/dev/loop0 /tmp/disk-image /virtual-fs
#4 adjuk hozzá az fstab-hoz
/tmp/disk-image /virtual-fs ext3 rw,loop=/dev/loop0 0 0

Keres és töröl
find -iname *.mp3 | xargs rm -rf

Használt lib-ek
ldd /bin/ls

File listázása sorszámozva
nl probafile.txt

Milyen drivert használ a hálókártya
ethtool -i eth0
Reseteli a hálókártya countereit (újra inditja a drivert)
modprobe -r e100; modprobe e100; ifup eth0

ifup - bring a network interface up
ifdown - take a network interface down

Changing the MAC address
ifconfig eth0 down
ifconfig eth0 hw ether 01:01:01:01:01:01
ifconfig eth0 up
eth1 to eth0

BASH gyorsgombok
Alt+B - szó elejére ugrik
Alt+F - szó végére ugrik
Ctrl+A - a sor elejére ugrik
Ctrl+E - sor végére ugrik
Ctrl+C - kigyilkolja amit futtatsz
Ctrl+D - kilép a shellből
Ctrl+H - backspace (visszatöröl)
Ctrl+K - kurzor után mindent töröl
Ctrl+U - kurzor előtt mindent töröl
Ctrl+L - clear screen
Ctrl+R - bash history-ban keres
Ctrl+T - a kurzor előtti két karaktert felcseréli
Esc+T - felcseréli az utolsó két szót
Ctrl+W - a kurzor előtt szót törli
Ctrl+Z http://www.thegeekstuff.com/2010/05/unix-background-job/
-------------------------------------------------------------------------------------------------------------------------
WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
# ssh-keygen -R {server-name}
# ssh-keygen -R {server-ip-address}

Output:
/home/napster/.ssh/known_hosts updated.
Original contents retained as /home/napster/.ssh/known_hosts.old
-------------------------------------------------------------------------------------------------------------------------
Backup:
sudo su
cd /
tar cvpzf backup.tgz --exclude=/proc --exclude=/lost+found --exclude=/backup.tgz --exclude=/mnt --exclude=/sys /

Restore:
tar xvpfz backup.tgz -C /
mkdir proc
mkdir lost+found
mkdir mnt
mkdir sys
etc...

-------------------------------------------------------------------------------------------------------------------------

SAMBA vs DOS
LANMAN password encryption by default because it's *very* brute-forceable.
If you need to support old clients not capable of negotiating NTLM, you'll
need to set
smb.conf: lanman auth = yes
and run 'smbpasswd' again
to generate a lanman password hash for this user.
-------------------------------------------------------------------------------------------------------------------------
Soft Link

$ ln -s /full/path/of/original/file /full/path/of/soft/link/file
- Hasonlításképpen az "úgymond parancsikon", a win rendszerekben.
- Az eredeti fájl törlése/áthelyezése/átnevezése után a symlink használhatatlan lesz, hard link-nél nincs ilyen.
- A hard linkektől eltérően a soft linkek nem közvetlenül mutatnak adatra, hanem csak egy elérési útvonalat tartalmaznak, amelyből a rendszer képes egy hard linket (vagy egy másik soft linket) beazonosítani.
- Az eredeti fájl, és annak soft linkje _Lehet más_ fájlrendszeren/partíción.

Hard Link

$ ln /full/path/of/original/file /full/path/of/hard/link/file
- A legtöbb fájlrendszerben az elnevezett fájlok ilyen linkek.
- Az "ls -l" második oszlopa mutatja, hogy egy fájlra mennyi hard link létezik.
- Az "ls -i fajlnev"-el megtudhatjuk az adott file inode számát, amire rákereshetünk "find / -inum inode_szam"-al, kilistázva az ahhoz az inode-hoz tartozó hard linkeket.
- A hard link egy konkrét hivatkozás vagy mutató egy adattároló eszközön elérhető adatra [könyvtárra "nem mutathat"].
- Az adat addig marad elérhető, amíg legalább egy hard link mutat rá, amikor minden linket eltávolítottunk az adat helye felszabadul [+ egy folyamat SEM használja].
- Az eredeti fájl, és annak hard linkjének egy fájlrendszeren/partíción kell lennie [inode-ok miatt].
-------------------------------------------------------------------------------------------------------------------------
Háttérben futtatás
./binary & - & jel teszi háttérbe és visszakapjuk a promptot
vagy Ctrl+Z -vel megállitjuk és a bg paranccsal elküldjük a háttérbe
./binary
^Z
[1]+ Stopped ./
binary
$ bg
[1]+ ./binary &

jobs paranccsal le tudjuk kérni, hogy mik futnak a háttérben

$ jobs
[1]+ Running ./
binary &

$ jobs -l - kilistázza a processzeket
-------------------------------------------------------------------------------------------------------------------------

X Forwarding

X minden grafikus felület alapja a linux rendszereknél.
Távoli elérésre általában VNC-t vagy Nx-et szoktak használni. Ezeknek a nagy hátránya, hogy a lokális gépen látható képernyőt kell
a távoli gépre leképezni. Szóval ez akár fölösleges erőpazarlás lehet abban az esetben ha szervert üzemeltetünk és az esetek 99%-ban
nincs is szükség a monitorra nem hogy a grafikus felületre. (Arról nem is beszélve, hogy a VNC-hez plusz daemon-t kell futtatni)
Mi lenne ha ssh-n keresztül el tudnánk indítani a számunkra szükséges grafikus programot?
Próbáljuk ki!
Ellenőrizzük, hogy az X forward engedélyezve van-e. (ha nincs akkor szerkesszük meg a konfig file-t és indítsuk újra a daemont)
/etc/ssh/sshd_config
X11Forwarding yes

ssh -X user@remote.computer
program

Ha kicsi a sávszélesség akkor a -C kapcsolóva még tömöríthetjük az adatokat.

Copyright © 2000-2024 PROHARDVER Informatikai Kft.