Tartalomjegyzék
Apró linuxos tippek
- Szerző: Sallai András
- Copyright © Sallai András, 2011, 2013, 2019
- Licenc: GNU Free Documentation License 1.3
- Web: http://szit.hu
Pendrive parancssorból
Ma már a grafikus felületek automatikusan csatolják a pendrive-ot. Tisztán konzolos felületen is lehetővé tehetjük a felhasználók számára a pendrive elérését a pmount csomaggal.
Telepítés:
apt-get install pmount
Használat:
pmount /dev/sda1
cd /media/sda1
pumount /dev/sda1
Nagios2
Rendszerfigyelõ. Webes felület?
apt-get install nagios2 nagios2-plugin nagios2-images apt-get install nsca
htpasswd -c /etc/negios2/htpasswd.users jozsi
Egy szövegszerkesztõvel szerkesztem a cgi.cfg fájlt:
cat /etc/nagios2/cgi.cfg | sed s/nagiosadmin/joszi/g
lynx http://localhost/nagios2
Logrotate más néven archivál
A logrotate program feladata, hogy a naplófájlokat archiválja. A régebbi napló bejegyzés, az archivált fájl nevében kap egy számot. Például:
fájlnév.1
A következő ciklusban ez lesz a fájlnév.2.gz, utána fájlnév.3.gz, stb. Alapértelmezésként fájlnév.5.gz már nem szokott lenni, ezt az állományt törli.
Célunk, hogy a logrotate ne számozza az archivált fájlok neveit, hanem dátumot tegyen oda.
/var/log/apache2/www.weboldalam.hu/*.log { daily rotate 10 compress compresscmd /usr/bin/bzip2 compressoptions -9 compressext .bz2 create 640 root adm olddir /var/log/apache2/www.weboldalam.hu/logs ifempty sharedscripts prerotate /www/www.weboldalam.hu/cgi-bin/awstats.pl -update -config=www.weboldalam.hu endscript postrotate if [ -f /var/run/apache2/apache2.pid ]; then killall -HUP apache2 > /dev/null fi if [ -f /var/log/apache2/www.weboldalam.hu/logs/access.log.1.bz2 ] && [ -f /var/log/apache2/www.weboldalam.hu/logs/error.log.1.bz2 ]; then mv /var/log/apache2/www.weboldalam.hu/logs/access.log.1.bz2 /var/log/apache2/www.weboldalam.hu/logs/access.log.`date -d yesterday +%Y-%m-%d`.bz2 mv /var/log/apache2/www.weboldalam.hu/logs/error.log.1.bz2 /var/log/apache2/www.weboldalam.hu/logs/error.log.`date -d yesterday +%Y-%m-%d`.bz2 fi endscript }
A screen
Ha bejelentkezünk egy linuxos rendszerbe, az ott indított programok leállnak kijelentkezéskor. A screen paranccsal elindított programok kilépés után is futnak tovább.
Például:
screen make
Billentyűkombinációk | |
---|---|
C-a c | új terminál nyitása (create) |
C-a C-a | váltogat a terminálok között |
C-a d | kilépés |
Néhány kapcsoló:
- screen -r kapcsolódunk újból a folyamathoz (detach)
- screen -r [azonosito]
- screen -ls screen folyamatok listázása
Az ssh-agent
A ssh-agent eltárolja a privát kulcsunk kinyitásához egyszer beírt jelszót, ezért utána nem szükséges.
Az ssh-agent Debian esetén automatikusan elindul az X előtt, így annak indításáról nem kell gondoskodnunk.
Elég kiadnunk az ssh-add parancsot és rá kerül a titkos kulcsunk erre a „kulcskarikára”:
ssh-add
Több kulcs esetén adjuk meg a kulcsfájl nevét:
ssh-add titkoskulcsfajl
A hozzáadott kulcsok lekérdezhetők:
ssh-add -L
A használathoz az ssh parancsnak szüksége van a -A opcióra, de beállítható az ~/.ssh/config állományba beállíthatjuk a ForwardAgent tulajdonságot yes értékre:
ForwardAgent yes
Watch
Egy program végrehajtása többször. A példa kedvéért szeretnénk figyeltetni fut-e még a screen program.
screen make + + watch "ps ax | grep screen"
wget
Kapcsolódás https protokollal, azonsítással
wget --no-check-certificate --http-user jozsi --http-passwd titok https://valahol.hu
nvram-wakup
apt-get install nvram-wakup
Beállítása:
nvram-wakeup 0, 04:00:00
Négy órakor bekapcsol a gép
SSH ne szakadjon meg
Kliensoldalon a következőt tehetjük:
Döntsük el, a kliensen központilag minden felhasználónak beállítjuk vagy csak adott felhasználónak:
/etc/ssh/ssh_config ~/.ssh/config
Egy keep-alive csomagot kell küldenünk, például 5 másodpercenként:
ServerAliveInterval 5
Írjuk a fenti fájlok valamelyikébe.
Felhasználók kitiltása
touch /etc/nologin
Így üzenetet is kap a felhasználó:
echo karbantartás > /etc/nologin
Hozzáférések
/etc/host.deny
ALL:ALL
Minden szolgáltatás tiltása mindenhonnan.
Adott hálózatról engedélyezés:
ALL:127.0.0.1 ALL:192.168.1.
A 192.168.1.0 hálózatról érhető el a gép. De ezek csak az inetd szolgáltatásaira, és a /usr/bin/tcpd által felügyelt programokra vonatkozik.
Portok
Nyitva tartható portok:
cat /proc/sys/net/ipv4/ip_local_port_range
Csere:
echo "32768 61000" > /proc/sys/net/ipv4/ip_local_port_range
Távoli gépek különböző kódrendszerekkel
Például a távoli gépen a kódrendszer ISO 8859-2:
luit -encoding 'ISO 8859-2 -- ssh jozsi@valahol.hu
További információk:
man luit
Mi foglalja az eszközt?
fuser -vm /amit_nezunk
fuser -km /emit_nezunk
Ez utóbbi még ki is lövi a folyamatot.
További információ:
man fuser
Fájlok és könyvtárak attribútumai
lsattr
------------------- ./fajl1.txt ------------------- ./fajl2.txt ------------------- ./fajl3.txt
chattr -A /utvonal/fajl
Hardver cím megváltoztatása
ifconfig eth0 hw 001966f0ae66
Ezek után ellenőrizzük, IP címet kérhetünk rá, majd a kapcsolatot is ellenőrizhetjük:
ifconfig dhclient eth0 ping külsőIPcím
Szép magyar fontok Linuxra
Ehhez nem kell sok kommentár
Unicode karakterek beillesztése Linuxon
Ctrl+Shift+u Beírom a Unicodot és szóköz vagy Enter és kész.
Firefox Java
Bevezetés
A Java telepítése után egy Java plugin is rendelkezésünkre áll. Ha a Firefox böngészővel szeretnéd használni a Java-át, akkor létre kell hoznod egy szimbolikus linket a pluginre. Ha az összes felhasználónak be szeretnéd állítani, akkor a Firfox plugins könyvtárában kell létrehoznod a szimbolikus linket. Másik alternatíva, ha saját home könyvtáradban hozod létre azt: ~/.mozilla/plugins
Linux rendszerek számára a belinkelendő plugin:
<JRE>/lib/i386/libnpjp2.so
Ha 32 bites Firefoxot használsz, akkor a plugin linkelhető a lib/i386 könyvtárból. A Firefox verziójának kiderítéséhez kattintsunk:
Súgó -> A Mozilla Firefox névjegye
A telepítés lépései
- Leállítjuk a Firefoxot
- Töröljük az előzőleg telepített Java plugint.
- töröljük a javaplugin-oji.so és a libnpjp2.so szimbolikus linkeket a Firefox könyvtárából.
- Létrehozzuk az új szimbolikus linket a Firefox plugins könyvtárában
cd <Firefox>/plugins ln -s <JRE>/lib/i386/libnpjp2.so .
- Elindítjuk a Firefox böngészőt
about:plugins
Ellenőrizzük az about:plugins böngésző címsorába írásával a Java plugin telepítettségét. Vagy ugyanezt Java Console felületen is megtehetem.
Forrás
Leállítás engedélyezése
Bevezetés
Sokszor gond, hogy új felhasználók GNOME környezetben nem tudják leállítani az otthoni gépet. A Policy Kit rendszerben kell megtenni a beállításokat.
A ConsoleKit egy keretrendszer, amely követi a felhasználók és különböző munkamenetek tevékenységeit. A konfigurációban beállított változásokra reakciókat, illetve válaszokat generál.
Beállítások
- /etc/polkit-1/localauthority.conf.d/60-leallitas.conf
[Leallitas] Identity=unix-user:joska Action=org.freedesktop.consolekit.system.stop ResultAny=no ResultInactive=no ResultActive=yes
Teljes fájl tartalma
- /usr/share/polkit-1/actions/org.freedesktop.consolekit.policy
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE policyconfig PUBLIC "-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN" "http://www.freedesktop.org/standards/PolicyKit/1.0/policyconfig.dtd"> <!-- Policy definitions for ConsoleKit --> <policyconfig> <action id="org.freedesktop.consolekit.system.stop"> <description>Stop the system</description> <message>System policy prevents stopping the system</message> <defaults> <allow_inactive>no</allow_inactive> <allow_active>yes</allow_active> </defaults> </action> <action id="org.freedesktop.consolekit.system.stop-multiple-users"> <description>Stop the system when multiple users are logged in</description> <message>System policy prevents stopping the system when other users are logged in</message> <defaults> <allow_inactive>no</allow_inactive> <!-- Eredeti tartalom: auth_admin_keep --> <allow_active>yes</allow_active> </defaults> </action> <action id="org.freedesktop.consolekit.system.restart"> <description>Restart the system</description> <message>System policy prevents restarting the system</message> <defaults> <allow_inactive>no</allow_inactive> <allow_active>yes</allow_active> </defaults> </action> <action id="org.freedesktop.consolekit.system.restart-multiple-users"> <description>Restart the system when multiple users are logged in</description> <message>System policy prevents restarting the system when other users are logged in</message> <defaults> <allow_inactive>no</allow_inactive> <allow_active>auth_admin_keep</allow_active> </defaults> </action> </policyconfig>
Tevékenységek:
- org.freedesktop.consolekit.system.restart-multiple-users
- Restart the system when multiple users are logged in
- System policy prevents restarting the system when other users are logged in
- org.freedesktop.consolekit.system.restart
- Restart the system
- System policy prevents restarting the system
- org.freedesktop.consolekit.system.stop-multiple-users
- Stop the system when multiple users are logged in
- System policy prevents stopping the system when other users are logged in
- org.freedesktop.consolekit.system.stop
- Stop the system
- System policy prevents stopping the system
Irodalom
Kézikönyvek:
- man pklocalauthority
- man polkit
- man pkaction
- man pkexec
Link:
Billentyűhasználat
Előfordulhat, hogy valamiért nem működik az AltGr billentyű és nem tudjuk bevinni magyar környezetben szokásos karaktert. Ekkor lehet segítségünkre konzolos felületen a másik alt billentyű. Az Alt billentyű nyomva tartása mellett begépelhetjük az ASCII kódtábla alapján bármely karaktert. Az alábbiakban a legfontosabbak:
ASCII kód | Karakter |
---|---|
33 | ! |
34 | „ |
35 | # |
36 | $ |
37 | % |
38 | & |
39 | ' |
42 | * |
43 | ~ |
60 | < |
62 | > |
64 | @ |
91 | [ |
93 | ] |
94 | ^ |
96 | \ |
123 | { |
124 | | |
125 | } |
mms letöltés
Karakterek Linuxon
Konzol karaktere
dpkg-reconfigure console-setup
cat /etc/default/locale LANG="hu_HU.UTF-8"
nano /etc/locale.gen
Kivesszük a # karaktert azok elől a kódolások elől amire szükségünk van. Majd:
dpkg-reconfigure console-setup
A használatban lévő karakter készletek (locale) ellenőrzése:
locale -a
Midnight Commander
Könyvtár méret
Ctrl + Space
Az aktuális útvonal parancssorbamásolása.
Ctrl + x p
GConf beállítások
gconf-editor
Videó konvertálás
ffmpeg
Telepítés
Debian GNU Linuxon:
apt-get install ffmpeg
Újabb beszerzése:
http://www.deb-multimedia.org
mcedit /etc/apt/sources.list:
deb http://www.deb-multimedia.org squeeze main non-free
apt-get update apt-get install deb-multimedia-keyring apt-get update apt-get install ffmpeg
Esetleg a legújabb beszérzése:
A legújabb fejlesztői változat:
git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg
./configure make
A webm formátumot például nem ismeri az ffmpeg Debian Squeeze verziója, ezért a www.deb-multimedia.org tárolót kell használni, vagy a legújabb a git tárolóból.
Adatok lekérése
ffmpeg -i input.mp4
Egy lehetséges eredmény:
[matroska,webm @ 0x92f85e0] Estimating duration from bitrate, this may be inaccurate Seems stream 0 codec frame rate differs from container frame rate: 1000.00 (1000/1) -> 29.97 (30000/1001) Input #0, matroska,webm, from 'Szamszara.webm': Duration: 02:19:23.15, start: 0.000000, bitrate: N/A Stream #0.0(eng): Video: vp8, yuv420p, 854x480, PAR 1:1 DAR 427:240, 1k fps, 29.97 tbr, 1k tbn, 1k tbc (default) Stream #0.1: Audio: vorbis, 44100 Hz, stereo, s16 (default)
Konvertálások
ffmpeg -i input.webm output.avi
ffmpeg -i input.avi output.webm
ffmpeg -i input.avi -s 640x360 -b 345k -acodec libvorbis -ac 2 -ab 96k -ar 44100 output.webm
OGG/Theora:
ffmpeg -i input.mov -acodec libvorbis -ac 2 -ab 96k -ar 44100 \ -b 345k -s 640x360 output.ogv
MP4/h264:
ffmpeg -i input.mov -acodec libfaac -ab 96k -vcodec libx264 -vpre slower -vpre main \ -level 21 -refs 2 -b 345k -bt 345k -threads 0 -s 640x360 output.mp4
WebM/vp8:
ffmpeg -i input.mov -acodec libvorbis -ac 2 -ab 96k -ar 44100 \ -b 345k -s 640x360 output.webm
ffmpeg -i input.webm -b 6000k output.avi
Partíció felcsatolása képfájlból
Adott egy .img kiterjesztésű fájl, amely például a dd paranccsal készült, és néhány partíció mentését tartalmazza. Szeretnénk belenézni, vagy éppen adatokat kinyeri az .img fájlból.
A példakedvéért a egy letöltött raspbian képfájlon mutatom be az egészet.
Nézzük meg milyen partíciók vannak, és azok hol kezdődnek.
fdisk -lu 2013-02-09-wheezy-raspbian.img
Eredmény:
Beállítandó cilinderek. Ez csak az extra szolgáltatások menüből érhető el. 2013-02-09-wheezy-raspbian.img lemez: 0 MB, 0) bájt 255 fej, 63 szektor, 0 cilinder, összesen 0 szektor Egység: szektorok 1 * 512 = 512 bájt Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Lemezazonosító: 0x00014d34 Eszköz Indítás Eleje Vége Blokkok Az Rendszer 2013-02-09-wheezy-raspbian.img1 8192 122879 57344 c W95 FAT32 (LBA) A(z) 1. partíció nem cilinderhatáron végződik. 2013-02-09-wheezy-raspbian.img2 122880 3788799 1832960 83 Linux A(z) 2. partíció nem cilinderhatáron végződik.
Két partíciót látunk, az első a 8192-nél, a második 122880-nál kezdődik.
Az is látjuk, hogy 512 bájt a szektorméret. Ezek után hozzunk létre egy csatolási pontot:
mkdir /mnt/test
Majd csatoljuk fel:
mount -o loop,offset=$((122880*512)) 2013-02-09-wheezy-raspbian.img /mnt/test
Ezek után tallózhatjuk a /mnt/test könyvtár alatt.
Ha már nem kell, lecsatolás:
umount /mnt/test
Egy kézikönyv exportja PDF formátumba
Úgyis mondhatnánk: mantopdf vagy man2pdf
Legyen a példa kedvéért az init kézikönyve, amelyet szeretnénk elküldeni másnak, mert az ő Linuxán ez nem magyar nyelven van.
Ekkor:
man -t init | ps2pdf - init.pdf
Linux telepítése pendrivera
apt-get install unetbootin
Megformázom a pendrivot, például ext4-re, majd futtatom az unetbootin programot. A grafikus felületen értelemszerűen használjuk.
Konzolon:
dd if=install.iso of=/dev/sdb bs=4M; sync