| 				
					| Offline |  
					|  |  
					|  |  Csatlakozott:2015.03.12. 18:30
 Hozzászólások:975
 Megköszönt másnak: 67 alkalommal
 Megköszönték neki: 136 alkalommal
 | 
				
					| Az első lépések II.Egy Debian GNU/Linux alaprendszer telepítésének menete részletesen, képekkel illusztrálva az alábbi linkeken található.:Debian GNU/Linux 4.0 rendszer telepítése - Expert módbanDebian GNU/Linux 5.0 rendszer telepítése - GUI módbanBash programozás 
 # A parancsértelmezőnk által ismert parancsokat fűzhetjük össze egy "programba". (lásd .bat)
 # Programunk első sorában minden esetben meg kell adnunk a futtató programot, jelen esetben a bash-t.
 # Tehát a fájlunk kezdete legyen: #!/bin/bash
 # Felkiáltójel nélkül más futtató programot (parancsértelmezőt) is megadhatunk a programunk első sorában.
 # Futtatási jog nélkül nem tudjuk használni, ezért chmod +x programnev
 # Programunk futtatásához ./programnev parancsot kell használnunk.
 Írásjelek	# Escape-karakter: \
 Bourne Again Shell escape-karaktere. Többek között ezzel a jellel lehet elérni,
 hogy az őt követő speciális karakter elveszítse módosító hatását.
 
 # Dollárjel: $
 Segítségével változó neve és értéke között tudunk különbséget tenni.
 Ha $valtozo-t írunk, az a változónk értékét fogja visszaadni.
 
 # Kétszeres idézőjel: " "
 Az idézőjelek arra valók, hogy egyes karakterek vagy lefoglalt szavak speciális
 jellegét feloldják.
 
 # Egyszeres idézőjel: ' '
 Megakadályozza a héjat (shell), hogy a $-t a változók jelzésének tekintse
 
 # Szögletes zárójel: []
 Intervallumok megadására szolgáló eszköz
 
 # Kérdőjel: ?
 Egy elem helyettesítésére szolgáló jel
 
 # Csillag: *
 Joker karakter, bármennyi karakter helyettesítésére
 
 # Felsővessző: ` (jobbra tartó - AltGr + 7)
 Operátor, mely a két ` ` között lévő jelsort végrehajtja, és a kimenetét adja vissza
 úgy, hogy az új sor karakter helyére szőközt rak.
 
 # Kettőskereszt: #
 Kommentezés eszköze. (megjegyzés)
 
 # And jel: &
 Parancsok háttérbeli futtatására szolgáló eszköz.
 Pl.: updatedb &
 
 # Kettős And jel, vagy pontosvessző: && = ;
 Parancsokat futtathatunk egymás után.
 Pl.: cp -R /var/www /home/backup && shutdown -h nowDedikált környezeti változók		EDITOR : Az alapértelmezett szövegszerkesztőnk
 HOME : Felhasználói könvvtárunk elérési útvonala
 MAIL : Beérkező email-jeink alapértelmezett könyvtára
 PATH : Azok az elérési útvonalak, melyekben a shell futtatható állományokat keres
 OSTYPE : Az operációs rendszerünk típusa
 PAGER : Az alapértelmezett file nézegetőnk elérési útvonalát kell tartalmaznia
 PWD : A könyvtár, ahol éppen vagyunk. (Szimbólikus linknél nem egyezik meg a pwd kimenetével!)
 SHELL : A jelenleg futú shell-ünk teljes elérési útvonala
 TERM : A Terminálunk típusát tartalmazza
 
 Ezek értékeinek kiíratására a következő parancs használható:
 
 echo $VALTOZO_NEV
 Shell változókÉrtékadó utasítással.:
 
 valtozo=érték : a változónk értéke legyen "ertek"
 valtozo=$(echo 2+3 | bc) : a változónk értéke legyen 2+3, bc-vel kiszámolva.
 export valtozo : shell változónkat környezeti változóvá tesszük
 # Ha azt szeretnénk, hogy restart után is permanens maradjon változónk,
 # az /etc/profile -ba is fel kell vennünk.
 
 unset valtozo : ha már nincs szükség rá, mint környezeti változó.
 Belső változókecho $0
 # A futó program neve
 
 echo $$
 # A futó program PID-je
 
 echo $?
 # A legutolsó parancs visszatérési értéke	Csővezetékek (pipe-ok)
 
 # " | " segítségével tudjuk egy program kimenetét (stdout) egy másik program
 bemenetére (stdin) csatolni. pl.:
 
 ps aux | grep iceweasel
 # Az összes folyamat kimenetét a grep szűrő bemenetére irányítjuk, amely az iceweasel-t keresi.
 
 # stdin  - standard input,  jele : fd0 (alapértelmezett bemenet, pl.: billentyűzet)
 # stdout - standard output, jele : fd1 (alapértelmezett kimenet, pl.: monitor)
 # stderr - standard error,  jele : fd2 (alapértelmezett hibacsatorna)
 
 ./program 2> hiba.txt
 # Programunkat lefuttatjuk, az esetleges hibákat (stderr) a hiba.txt-be irányítjuk,
 # az stdout helyett.
 
 ./program 1> kimenet.txt 2>&1
 # Programunkat lefuttatjuk, kimenetét (stdout) a kimenet.txt-be mentjük, valamint
 # az esetleges hibákat (stederr) hozzáfűzzük a kimenet.txt-hez.
 
 cat file1 | sort | wc -w > file2
 # file1-et tartalmát a sort-nak adja át, az rendezi, majd átadja a wc-nek, majd a wc
 # kimenete a file2-be íródikNéhány egyszerű példa.:
 #!/bin/bash
 echo Hello World!
 # A szokásos Hello World kiírása, programunk futtatásakor.
 
 
 #!/bin/bash
 STR="Hello World"
 echo $STR
 # Az STR változó deklarálása, majd értékének kiíratása.
 
 
 #!/bin/bash
 tar -cZf /var/backup.tgz /home/user
 # /home/user tartalmát menti és tömöríti a /var/backup-ba.
 
 
 #!/bin/bash
 OF= /home/user/$(date +%Y%m%d).tgz
 tar -cZf $OF /home/user/sajt
 # Egyszerű backup script, mely a /hme/user/sajt tartalmát, napi dátummal
 # ellátva egy .tgz állományba tömörítve menti.
 
 
 #!/bin/bash
 if ["foo" = "foo1" ]; then
 echo "a feltétel igaz"
 else
 echo "a feltétel hamis"
 fi
 # Egyszerű if-else szerkezet
 
 Egyszerű szerkezetek.: if, while, until, for
 -if szerkezet.:
 ---------------
 
 #!/bin/bash
 T1="foo"
 T2="bar"
 if [ "$T1" = "$T2" ]; then
 echo "a feltetel igaz"
 else
 echo "a feltetel hamis"
 fi
 # eldöntjük T1 és T2 értékéről, hogy egyenlőek e.
 
 
 #!/bin/bash
 if [ -f /etc/passwd ]
 then
 echo "letezik!"
 else
 echo "nem letezik!"
 fi
 # eldöntjük, hogy /etc/passwd file létezik-e vagy sem.
 # Blokkos eszköz (pl. pendrive) esetén -b kapcsolót kell használni!
 
 
 #!/bin/bash
 test -f /etc/passwd && echo "letezik" || echo "nem letezik"
 # A egyel feljebb levő probléma másik megoldása.
 # Blokkos eszköz (pl. pendrive) esetén -b kapcsolót kell használni!
 
 
 
 -File szintű kapcsolók
 
 if [ -a file ] then ...
 
 -a : igaz, ha létező file
 -e : igaz, ha létező file
 -b : igaz, ha blokkos eszköz (pl /dev/sda)
 -c : igaz, ha "karakterspeciális" file Pl.: (/dev/ttyACM0 - ez egy nokia telefon.)
 -d : igaz, ha könyvtár
 -f : igaz, ha regular file
 -G : igaz, ha a futtató user csoportjáé a file
 -N : igaz, ha módosították az utolsó olvasás óta
 -O : igaz, ha a futtató useré a file
 -r : igaz, ha olvasható?
 -L : igaz, ha symbolic link
 -s : igaz, hogy nem üres
 -z : igaz, hogy üres
 -w : igaz, ha írható a scriptet futtató user számára
 
 # Tagadás mindenhol használható, azaz.:
 ! -f : nem regular file?
 
 
 
 -Változó szintű kapcsolók
 
 if [ file == file2 ] then ...
 
 file1 == file2	egyenlőek?
 file1 != file2	igaz hogy nem egyenlőek?
 
 if [ "$(cat tibi)" != "$(cat peti)" ]; then
 echo "Tibi nem Peti!
  " exit 1 # Stop!
 fi
 
 
 -Szám szintű kapcsolók
 
 if [ $foo -eq 3 ] then ...
 
 $foo -eq 3 : igaz, ha foo értéke egyenlő 3-al (equal)
 $foo -ne 3 : igaz, ha foo értéke nem egyenlő 3-al (not-equal)
 $foo -gt 3 : igaz, ha foo értéke nagyobb 3-nál (greater than)
 $foo -ge 3 : igaz, ha foo értéke nagyobb egyenlő 3-al (Greater or equal)
 $foo -lt 3 : igaz, ha foo értéke kisebb 3-nál (Less than)
 $foo -le 3 : igaz, ha foo értéke kisebb egyenlő 3-al (less than or equal)
 
 "$foo" == "10"	foo értéke 10?
 
 
 # Dupla zárójellel használhatóak ==, !=, >=, >, <, <=..
 (($foo <= 3))	foo értéke nagyobb egyenlő 3-nál
 
 
 
 -while szerkezet.:
 ------------------
 
 #!/bin/bash
 COUNTER=0
 while [ $COUNTER -lt 10 ]; do
 echo a szamlalo erteke: $COUNTER
 let COUNTER=COUNTER+1
 done
 # COUNTER változónkat 1-el növeljük addíg, amíg el nem éri a 10-et.
 
 
 
 -until szerkezet.:
 ------------------
 
 #!/bin/bash
 COUNTER=20
 until [ $COUNTER -lt 10 ]; do
 echo a szamlalo erteke: $COUNTER
 let COUNTER-=1
 done
 # COUNTER változónkat 20-as kezdőértékről 1-el csökkentjük, amíg el nem éri a 10-et.
 
 
 
 -for ciklus (C szerű)
 ---------------------
 
 #!/bin/bash
 for i in `seq 1 10`;do
 echo $1
 done
 # az i változónkat felveszi 1-től 10-ig az értékeket, majd ki is írjuk a képernyőre
 
 
 
 -for ciklus (a könyvtár elemeire)
 ---------------------------------
 
 #!/bin/bash
 for i in $( ls );do
 echo a konyvtar elemei: $i
 done
 # kiíratjuk a képernyőre az aktuális könyvtár elemeit
 Egyszerű függvények.:
 #!/bin/bash
 function quit {
 exit
 }
 function hello {
 echo Hello!
 }
 hello
 quit
 echo foo
 # Egyszerű fv. deklarálás, majd az értékek kiíratása ( a 10. sor sosem fut le!)
 
 #!/bin/bash
 function quit {
 exit
 }
 function e {
 echo $1
 }
 e Hello
 e World
 quit
 echo foo
 # Egyszerű fv. deklarálás, majd az értékek kiíratása ( a 11. sor sosem fut le!)Érdekes/hasznos bash scriptek -experimental-
 echo "Most `w -h | wc -l` felhasználó van bejelentkezve."
 # Kiíratjuk programunk segítségével, hogy hány felhasználó van bejelentkezve
 
 
 
 test -d /home/user && echo "van" || echo "nincs"
 # Megvizsgáljuk, hogy van e /home/user könyvtár, két kimenetű elágazással (&&)
 # Ha van.: van
 # Ha nincs.: nincs
 # -d : van-e ilyen?
 
 
 
 if [ -d /home/user ]; then echo "van"; else echo "nincs";
 fi
 # Ugyanaz mint az előző példa, csak kicsit másként.
 # [-test parancs, ]-test zárás
 
 
 
 if [ -s /etc/motd ]; then echo "nagyobb"; else echo "zerus";
 fi
 # Megvizsgáljuk, hogy a /etc/motd nagyobb e nullánál, vagy zérus.
 # -s akkor ad IGAZ-at, ha a fájl létezik és nagyobb 0-nál.
 
 
 for i in *.mp3; do mpg123 "$i"; done
 # Az aktuális könyvtárban az összes mp3 kiterjesztésű állományt, az mpg123
 # nevű programmal lejátszuk.
 
 
 
 < /dev/urandom tr -dc A-Za-z0-9_ | head -c8
 # 8 karakteres random jelszó generátor
 
 
 
 for i in $(ls); do cat $i >> 123.txt; done
 # aktuális könyvtárban található file-ok 123.txt file-ba összefűzése.
 
 
 
 host -t mx mydomain.com
 nslookup -q=mx mydomain.com
 dig -t mx mydomain.com
 # MX record check-re használható parancsok
 
 
 net rpc shutdown -I IP -U DOMAIN/user
 # shell-ből Windows klienst állíthatunk le távolról. (ha tudjuk a local admin jelszavát..)
 
 
 
 net rpc shutdown -I IP -U DOMAIN/user -f -t 60
 # Előbbi parancs, időzítve 60sec-re.
 
 
 
 echo tartalom | mailsend -to sendto@domain.dom -from from@domain.dom -starttls
 -port 587 -auth -smtp STMP.server.address -sub targy +cc +bc -v -user Username -pass Password
 # 587-es porton (TLS) levélküldés. A fenti változók jelentései:
 #
 # tartalom		: az levél tartalma
 # sendto@domain.dom	: címzett
 # from@domain.dom	: feladó
 # SMTP.server.address	: milyen SMTP-n keresztül
 # targy			: az üzenet tárgya
 # user/pass		: SMTP user neve, jelszava.
 Egyéb programokabook
 # Address book.
 
 antiword
 # Microsoft .DOC nézegető
 
 amsn
 # MSN kliens (GUI)
 
 acpi
 # ACPI eszközök információi
 
 acpid
 # acpi program démonja
 
 audacious
 # xmms utód, grafikus felületre mp3 lejátszó program
 
 bitchx
 # IRC kliens (TUI) -volt-
 
 badblocks
 # Lemez ellenőrző (Bad sectorokat keres)
 -o file_nev : a hibás sectorokat a file_nev állományba menti
 
 cal
 # Szöveges naptár
 -y : az aktuális év teljes naptárát mutatja meg
 
 clamav
 # víruskereső szoftver
 
 clear
 # Törli a képernyőt
 
 dict
 # Szótár program
 opendict
 dict-freedict-hun-eng : magyar-angol
 dict-freedict-eng-hun : angol-magyar
 
 elinks
 # Konzolos böngésző.
 
 false
 # Nem csinál semmit, sikertelenül. (1-es visszatérési értékkel)
 
 finch
 # Konzolos Instant messenger, pidgin, ..
 
 firestarter
 # Tűzfal konfiguráló
 
 fsck
 # Filesystem check.
 # Lemez-ellenőrző (helytelen leállítás után autómatikusan lefut.)
 # A helyre nem hozott állományokat a lost+found könyvtárba teszi.
 
 fwbuilder
 # Tűzfal beállító
 
 gaim
 # MSN, irc, etc, kliens
 
 gpg -c file
 # Fájl titkosítása (OpenPGP)
 
 gpg file
 # Fájl kititkosítása
 
 gparted
 # Lemez partícionáló
 
 hdparm
 # Merevlemes információk
 -i /dev/hdx : Merevlemezünkről ad információt
 -Tt /dev/hdx : Sebességmérő eszköz
 
 hddtemp /dev/hdx
 # Lemez hőmérséklet figyelő
 
 irssi
 # IRC kliens program, konzolos felületre.
 
 k3b
 # KDE alapú cd-dvd író program (GUI)
 
 kopete
 # MSN kliens
 
 lynx
 # Konzolos böngésző
 
 mbmon
 # Motherboard monitoring
 
 memtest86
 # Memória tesztelő alkalmazás
 
 mp3blaster
 # Konzolos mp3 lejátszó, tracklist support-al.
 
 mplayer
 # Média lejátszó
 
 mutt
 # Konzolos levelező kliens
 
 qemu
 # Processzor emulátor
 
 setterm
 # Konzol beállításai
 
 tpconfig
 # Touchpad konfiguráló
 
 tpctl
 # IBM ThinkPad hardver konfiguráló
 
 true
 # Nem csinál semmit, sikeresen. (0-ás visszatérési értékkel)
 
 thosutils
 # Toshiba laptop programok
 
 reset
 # Visszaállítja a konzol beállításait
 
 vlc
 # Média lejátszó
 
 xchat
 # IRC kliens (GUI)
 
 xmms
 # Audió lejátszó program
 
 xmms-liveice
 # Audió kimenetet küldi a southcast-nek
 
 xdpyinfo
 # X kiszolgáló információk
 
 yes > file
 # Csupa y-t ír a file-ba, elég gyorsan.
  
 zgv
 # Konzolos képznézegető
 
 RAID1 készítése élő rendszerenLinux software RAID 1 készítése, élő Debian/GNU Linux (Etch) rendszeren
 
 Az alábbi leírást mindenki csak saját felelősségére használja!
 A folyamat elindítása előtt javasolt biztonsági mentést készíteni az adatokról,
 hiszen bármely elütés, figyelmetlenség következtében az adatok elveszhetnek!
 
 
 RAID technológiáról bővebben.:
 ------------------------------ RAID WikipediaSoftware RAID Linux alattmdadm Wikipedia - eng /dev/sda - élő rendszerem lemeze
 /dev/sdb - a majdani RAID1 másik lába.
 
 
 # Az én élő rendszerem partíciói.: (nálad ez valószínűleg egészen más)
 # A lemez/partíció elnevezéseket saját rendszeredhez kell igazítani. Csak megfontoltan.
 #
 # Eszököz     csatolási pont   file rendszer
 # -------     --------------   -------------
 # /dev/sda1:  /boot            ext3
 # /dev/sda2:                   swap
 # /dev/sda3:  / 	       ext3
 
 
 # A procedúra végén (az én esetemben) ilyen felállást szeretnék elérni.:
 #
 # Eszököz     csatolási pont   file rendszer    résztvevők
 # -------     --------------   -------------    ----------
 # /dev/md0:   /boot            ext3 	        (/dev/sda1 és /dev/sdb1-ből)
 # /dev/md1:                    swap		(/dev/sda2 és /dev/sdb2-ből)
 # /dev/md2:   /                ext3		(/dev/sda3 és /dev/sdb3-ból)
 
 
 
 apt-get install initramfs-tools mdadm
 # Két szükséges csomag telepítése, mdadm kérdésénél érdemes ALL-t választani.
 
 
 modprobe md
 modprobe linear
 modprobe multipath
 modprobe raid0
 modprobe raid1
 modprobe raid5
 modprobe raid10
 # Töltsük be az összes modult.
 
 
 sfdisk -d /dev/sda | sfdisk /dev/sdb
 # /dev/sda lemezünk partíciós tábláját /dev/sdb lemezünkre másoljuk!
 
 
 fdisk -l
 # Ellenőrizzük le, hogy valóban sikerült-e.
 
 
 fdisk /dev/sdb
 # Készítsük el a file rendszereket a partíciókra.
 # A gombok lenyomásának sorrendje a következő.:
 m  : manual
 t  : partíció rendszer id változtatása
 1  : első partíció
 L  : listázás
 fd : Linux Raid Autodetect filerendszer (ezt be kell gépelni!)
 t  : ..
 2  : második partíció
 fd : ..
 t  : ..
 3  : harmadik partíció
 fd : ..
 w  : kiírás.
 
 
 # Ha már korábban próbálkoztunk RAID építésével a /dev/sdb lemezzel, az alábbi parancsokat adjuk ki.
 
 mdadm --zero-superblock /dev/sdb1
 mdadm --zero-superblock /dev/sdb2
 mdadm --zero-superblock /dev/sdb3
 # Error-al elszállhat a dolog, de ez nem ad okot aggodalomra.
 
 
 # Most pedig hozzuk létre a "féllábú" (degraded) tömbünket a /dev/sdb lemezre.
 # Mivel a rendszer jelenleg a /dev/sda lemezről fut, egyelőre azt nem tudjuk a tömbhöz adni, csak utólag.
 
 mdadm --create /dev/md0 --level=1 --raid-disks=2 missing /dev/sdb1
 mdadm --create /dev/md1 --level=1 --raid-disks=2 missing /dev/sdb2
 mdadm --create /dev/md2 --level=1 --raid-disks=2 missing /dev/sdb3
 
 
 cat /proc/mdstat
 # Ellenőrizzük le, hogy sikerült-e
 # [_U] jelzi hogy jelenleg fállábú a tömbünk (sdb)
 
 
 mkfs.ext3 /dev/md0
 mkswap /dev/md1
 mkfs.ext3 /dev/md2
 # Hozzuk létre a file rendszereket a tömbökre.
 
 
 cp /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf_orig
 mdadm --examine --scan >> /etc/mdadm/mdadm.conf
 # Mentés készítése az mdadm.conf-ról
 # Az új "helyzet" elmentése az mdadm.conf-ba.
 
 mkdir /mnt/md0
 mkdir /mnt/md2
 # md0, md2 mappák létrehozása, ahova majd felmountoljuk a tömböket.
 
 mount /dev/md0 /mnt/md0
 mount /dev/md2 /mnt/md2
 # Mountoljunk!.
 
 mount
 # Az utolsó sorokban leellenőrizhetjük, hogy sikerült-e a csatolás
 
 cp /etc/fstab /etc/fstab-orig
 # fstab-ról backup készítése
 
 mcedit /etc/fstab
 # Az fstab-ban cseréljük ki a következőket.:
 /dev/sda1	/dev/md0 -ra
 /dev/sda2	/dev/md1 -ra
 /dev/sda3	/dev/md2 -ra
 # Majd mentsünk rá a configra.
 
 
 cp /etc/mtab /etc/mtab-orig
 # mtab-ról backup készítése
 
 mcedit /etc/mtab
 # Az mtab-ban cseréljük ki a következőket.:
 /dev/sda1	/dev/md0 -ra
 /dev/sda3	/dev/md2 -ra
 # Majd mentsünk rá a configra.
 Figyelem!Amennyiben már Grub2-vel rendelkezünk, az alábbi linkről állítsuk be a bootloadert .: Link
 
 Egyébiránt mehetünk tovább.
 
 cp /boot/grub/menu.lst /boot/grub/menu.lst-orig
 # menu.lst mentése.
 
 
 mcedit /boot/grub/menu.lst
 # Az alábbi változtatásokat állítsuk be.:
 
 [...]
 default         0
 fallback        1
 [...]
 
 
 # A config végén készítsünk az első (title-savedefault közötti) részről egy új bekezdést.
 # valamint, a /dev/sda3 -at cseréljük /dev/md2 re
 # a root (hd0,0) -t (hd1,0)-ra. (Ha különbözőek a lemezeid elnevezése, itt is légy körültekintő!)
 # valahogy így.:
 
 ## ## End Default Options ##
 
 title           Debian GNU/Linux, kernel 2.6.18-4-486 RAID (hd1)
 root            (hd1,0)
 kernel          /vmlinuz-2.6.18-4-486 root=/dev/md2 ro
 initrd          /initrd.img-2.6.18-4-486
 savedefault
 
 
 update-initramfs -u
 # Ramdisk frissítése.
 
 
 cp -dpRx / /mnt/md2
 # Másoljuk a /dev/sda3 tartalmát /mnt/md2-re (Aminek egyelőre csak /dev/sdb3 része.)
 
 
 cd /boot
 cp -dpRx . /mnt/md0
 # Másoljuk a /dev/sda1 tartalmát /mnt/md0-ra (Aminek egyelőre csak /devb/sdb1 része.)
 
 
 grub
 root (hd0,0)
 setup (hd0)
 root (hd1,0)
 setup (hd1)
 quit
 # Telepítsük a grub-ot a második lemezünkre.
 # A következő indításkor, ha minden sikeres volt, már a második HDD-ről indul a rendszerünk!
 # azaz neki állhatunk majd a /dev/sda lemez RAID-be állításához!
 
 reboot
 # Restartoljunk.
 
 df -h
 cat /proc/mdstat
 # Ellenőrizzük le ismét, hogy áll a tömbünk.
 
 fdisk /dev/sda
 # hozzuk létre a Linux Raid Autodetect file rendszereket a partícióinkra az alábbi billentyűkkel.:
 t 1 fd , t 2 fd,  t 3 fd , w
 
 
 mdadm --add /dev/md0 /dev/sda1
 mdadm --add /dev/md1 /dev/sda2
 mdadm --add /dev/md2 /dev/sda3
 # Adjuk hozzá a féllábú (sdb-n álló) tömbünkhöz a /dev/sda partícióit.
 
 cat /proc/mdstat
 # Ellenőrizzük le, hogy szinkronizálódnak-e a lemezeink.
 # Ilyesmit kellene látnunk.:
 
 
 Personalities : [raid1]
 md2 : active raid1 sda3[2] sdb3[1]
 4594496 blocks [2/1] [_U]
 [=====>...............]  recovery = 29.7%
 
 
 # Várjuk meg míg befejezi az összes partíció szinkronizálását.
 
 watch cat /proc/mdstat
 # 2 másodperces frissítéssel figyelemmel követhezjük a file tartalmát.
 
 
 cp /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf_orig
 mdadm --examine --scan >> /etc/mdadm/mdadm.conf
 # Mentés készítése az mdadm.conf-ról
 # A legújabb "helyzet" elmentése az mdadm.conf-ba.
 
 
 mcedit /boot/grub/menu.lst
 
 # Másoljuk le a korábban létrehozott kernel stanza-t és cseréljük
 # a (hd1,0) -t hd(0,0) -ra.
 # Ez a te esetedben ismét más lehet!
 
 ## ## End Default Options ##
 
 title           Debian GNU/Linux, kernel 2.6.18-4-486 RAID (hd0)
 root            (hd0,0)
 kernel          /vmlinuz-2.6.18-4-486 root=/dev/md2 ro
 initrd          /initrd.img-2.6.18-4-486
 savedefault
 
 # valamint szerkesszük az alábbi sort eszerint, majd mentsük a file-t.:
 [...]
 # kopt=root=/dev/md2 ro
 [...]
 
 
 update-initramfs -u
 # Ramdisk frissítése
 
 reboot
 
 # ha mindent jól tettünk, a RAID1-ünk aktív, és használható.
 
 # Hamarosan:
 #
 # Elhasalt/elromlott HDD cseréje élő RAID1 alatt.Adatmentés sw. RAID1-et alkotó HDD-rőlElőfordulhat, hogy Linux alatt létrehozott sw. RAID1 kötetet alkotó HDD-t egy másik gépben szeretnénk menteni.
 Alábbi leírás ehhez a procedúrához nyújt segítséget. (a dev. elnevezések nálad egészen mások lehetnek!)
 
 
 dmesg |grep Attached
 # Mi az újonnan behelyezett disk neve?
 # Pl.:
 
 [    2.628336] sd 1:0:0:0: [sdb] Attached SCSI disk
 [    2.629248] sd 0:0:0:0: [sda] Attached SCSI disk
 [    2.644424] sd 2:0:0:0: [sdc] Attached SCSI disk
 
 
 fdisk -l /dev/sdc
 # Milyen file rendszerrel rendelkezik a /dev/sdc?
 # Valami ilyesmit kellene látnunk.:
 
 Device Boot  Start   End     Blocks      Id  System
 /dev/sdc1    1       243202  1953513472  fd  Linux raid autodetect
 
 mdadm --examine /dev/sdc1
 # újabb ellenőrzés, a HDD sdc1 partícióját illetően. A RAID partícióra vonatkozik+
 
 mkdir /mnt/raid1
 # hozzunk létre egy csatolási pontot a RAID1-et alkotó HDD-nek.
 
 mdadm -A -R /dev/md9 /dev/sdc1
 # Hozzunk létre egy md9 nevű féllábú tömböt, melyet /dev/sdc1 alkot.
 # Amennyiben sikeres, ilyesmit kellene látnunk:
 
 mdadm: /dev/md9 has been started with 1 drive (out of 2).
 
 mount /dev/md9 /mnt/raid1
 # csatoljuk a féllábú tömböt /mnt/raid1 mappába.
 # a HDD-n található adatokat mostantól el tudjuk érni.Ha már nincs rá szükség.:umount /dev/md9
 # a tömb lecsatolása a file-rendszerből.
 
 mdadm -S /dev/md9
 # Az ideiglenes RAID tömb leállítása.Ha a RAID1-et alkotó HDD-t szeretnék visszahelyezni eredeti helyére a RAID tömbbe.:(dev és md elnevezésekre ügyeljünk!)
 
 mdadm -a /dev/md0 /dev/sdb1
 # md0 tömbhöz adjuk hozzá a /dev/sdb1 partíciót
 # Ha sikeres volt:
 
 mdadm: re-added /dev/sdb1
 
 cat /proc/mdstat
 # ellenőrizzük a tömb állapotát.
 # Kimenet:
 
 Personalities : [raid1]
 md0 : active raid1 sdb1[0] sdc1[1]
 1953512312 blocks super 1.2 [2/1] [_U]
 [=======>.............]  recovery = 36.9% (721315776/1953512312) finish=154.1min speed=133211K/sec
 
 
 # A fenti kivastagított sor jelzi, hogy egyelőre még féllábú (degraded) a tömbünk.
 # Ha a sync lefutott, [UU]-t kell kapnunk.
 Local repository készítése apt-mirror segítségével
 A cél.: Egy saját repository készítése a lokális hálózaton figyelő gépek számára (http-n), a hálózati
 forgalom csökkentése érdekében. (magyarul a teljes tartalmat (~70Gb.) letöltjük egyszer,
 a későbbiekben pedig csak frissítenünk kell, ezt a /etc/cron.d/apt-mirror kikommentelésével
 érhetjük el.)
 
 
 apt-get install apt-mirror apache2
 # A majdani tároló-gépünkön kell telepítenünk.
 # Mivel http-n fogjuk elérni a repo.-t, ezért egy web server alkalmazást is telepítünk.
 
 
 mcedit /etc/apt/mirror.list
 # Állítsuk át az alábbi címekre.: (innen fogja a "server" összeszedni az adatot)
 
 deb http://ftp.hu.debian.org/debian squeeze main contrib non-free
 deb-src http://ftp.hu.debian.org/debian squeeze main contrib non-free
 deb http://security.debian.org/debian squeeze/updates main contrib non-free
 deb-src http://security.debian.org/debian squeeze/updates main contrib non-free
 
 clean http://ftp.hu.debian.org/debian
 clean http://security.debian.org
 
 
 ------------------------------------------------
 Az alábbi parancsot érdemes éjszakára ütemezni.:
 ------------------------------------------------
 
 su - apt-mirror -c apt-mirror
 # Most pedig töltsük le a csomagokat, az alapértelmezésben beállított helyre (mirror.list ben van a config.)
 # Ha kész a letöltés, a /var/spool/apt-mirror/mirror/ftp.hu.debian.org/debian alatt ott lesznek a fájlok.
 
 
 
 /bin/bash /var/spool/apt-mirror/var/clean.sh
 # Fölösleg pucolása
 
 
 ln -s /var/spool/apt-mirror/mirror/ftp.hu.debian.org/debian /var/www/debian
 ln -s /var/spool/apt-mirror/mirror/security.debian.org/ /var/www/security
 # Két symlinket kell létrehoznunk, hogy a kliensek be tudják frissíteni csomaglistájukat
 
 
 Majd a kliens oldalon a sources.list-et kell editálni.:
 
 deb http://SZERVERUNK_CIME/debian squeeze main contrib non-free
 deb-src http://SZERVERUNK_CIME/debian squeeze main contrib non-free
 deb http://SZERVERUNK_CIME debian squeeze/updates main contrib non-free
 deb-src http://SZERVERUNK_CIME/debian squeeze/updates main contrib non-free
 
 apt-get update
 apt-get upgrade
 # Kliens oldali tesztelés.Távoli mappák felcsatolása SSHFS használatával
 Ezen leírás bemutatja távoli mappák biztonságos felcsatolásának módját a helyi fájlrendszerbe SSHFS (Secure Shell FileSystem)
 segítségével. A felcsatolás FUSE-on (Filesystem in Userspace) keresztül valósul meg.
 
 
 apt-get install sshfs
 # A kliensre szükséges telepíteni az SSHFS csomagot, ahova felcsatolásra kerül a távoli mappa.
 # A szerverre természetesen szükséges SSH szervert is telepíteni.
 
 lsmod |grep fuse
 # Kliens oldalon szükség lesz a fuse nevű kernel modulra is, szóval ellenőrizzük. Üres kimenet esetén nincs betöltődve!
 
 apt-get install fuse-utils
 # Amennyiben a fenti modul hiányzik, a fuse-utils csomag telepítésével pótolni szükséges.
 
 useradd sshbackup
 # A szerveren az sshbackup felhasználó létrehozása. Az ő nevében jelentkezünk be SSH-n keresztül a kliensről.
 
 passwd sshbackup
 # Jelszó beállítása sshbackup felhasználónak.
 
 gpasswd -a sshbackup dirgroup
 # A távoli mappához szükséges a távoli sshbackup usernek hozzáférnie. Ezt szerver oldalon tisztázni kell.
 # Egy példa.:
 # sshbackup user hozzáadása a dirgroup csoporthoz, melynek jogosultsága van (vagy lesz) a távoli mappához.
 # Ez természetesen kikerülhető, amennyiben a felcsatolandó mappa tulajdonosa már az sshbackup user.
 
 sshfs -o idmap=user -p 22 sshbackup@192.168.1.1:/home/sshbackup /home/user/sshbackuplink
 
 # sshbackup nevében felcsatoljuk a távoli szerver (192.168.1.1) /home/sshbackup mappáját, tcp22-es portot használva.
 # A csatolási pont a helyi fájlrendszerben /home/user/sshbackuplink mappa lesz.
 
 mount
 # Bizonyosodjunk meg a kliensen a mount-olás sikerességéről. Valami ilyesmit kellene látnunk.:
 
 sshbackup@192.168.1.1:/home/sshbackup on /home/user/sshbackuplink type fuse.sshfs (rw,nosuid,nodev,max_read=65536)
 
 df --si
 # Megbizonyosodás2
 
 sshbackup@192.168.1.1:/home/sshbackup
 ...
 
 fusermount -u /home/user/sshbackuplink
 # Lecsatolás
 Forrás: http://www.letix.hu/#top
 _________________
 Fórumi aktivitásom véget ért: 2017.09.07.
 Innentől esetleg steamen vagyok elérhető.
 
 
 |  |