Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

Lähiverkot -erikoistyökurssi

Samankaltaiset esitykset


Esitys aiheesta: "Lähiverkot -erikoistyökurssi"— Esityksen transkriptio:

1 Lähiverkot -erikoistyökurssi
Tutustuminen Debian GNU/Linux –käyttöjärjestelmään Tietoliikenteen laboratorio 6218 / Ari Happonen

2 Harjoituksen aiheet Linux kernelin kääntäminen Ohjelmien asentaminen
Harjoitustöiden tarkempi ohjeistus Debian –jakelun työkaluihin tutustuminen

3 Debian yleistä Virtuaaliterminaalit (terminaalin vaihto näppäinyhdistelmällä: alt + F?) VT1 – VT6 Tekstikonsoleita VT7 Tyypillisesti X –ikkunointijärjestelmän käytössä (graafinen käyttöliittymä) Kernelin kääntövaiheen aikana käytämme toista / toisia virtuaaliterminaaleja muiden harjoitusten tekemiseen

4 6218 –luokan tietokoneista
Koneiden nimeämiskäytäntö: Dell –koneet: officeX, missä X on koneen numero (office1 demo-asennuskone, office5 nurkassa lähellä sohvaa (Dell:n kone)) raid (Suurin mustakoteloinen kone, nurkassa lähellä sohvaa (ISO koteloinen kone) ) dmzX (beige –koteloiset koneet, 1 takanurkan kone (kytkinlaitteiden vieressä), juokseva numerointi pitkin ikkunaseinää) SpyBox, kone ilman nimeä… Käyttäjätunnukset: Pääkäyttäjän (root) tunnus kerrotaan harjoituksissa Lisäksi käytössä käyttäjätunnus lahi

5 Debian asennus / Kernel –kääntöharjoitus
aptitude on debian –levityspaketin mukana tuleva ohjelmistojen ”asennuspakettien” hallintaohjelmisto Tulet tarvitsemaan aptitude –komentoa myöhemmin omassa linux –työssäsi, joten tutustu siihen jo nyt mahdollisimman hyvin Käytetään joko komentoriviltä käsin tai tekstipohjaisen käyttöliittymän kautta Harjoittelemme oman Linux –ydin version kääntämistä ja käyttöön ottoa Prosessikuvaus: Ytimen lähdekoodin hakeminen ja gzip -paukkauksen purkaminen Voidaan yhtä hyvin käyttää aptitude:n kaltaisia työkaluja, kuin hakea ytimen lähdekoodi käsin Ytimen konfigurointi (valitaan ladattavat ajurit ja tapa, jolla ne ladataan osaksi ydintä) Ytimen kääntäminen Ytimen vieminen ”sopivaan” paikkaan hakemistorakenteessa, sekä käynnistyksessä ytimen lataavan boot loaderin uudelleen konfigurointi Kiintolevyn boot lohkon päivittäminen uudella boot loader koodilla

6 Debian asennus / Kernel -kääntöharjoitus
Lähdekoodin etsiminen aptitude:lla # aptitude search kernel # aptitude search kernel-source # aptitude show kernel-source-2.6.8 # aptitude install kernel-source (tehty valmiiksi harjoitusten nopeuttamiseksi) Kuten ”kernel-source-2.6.8” paketin kuvauksessa luki on kyseessä pelkästään ytimen lähdekoodi, joka sisältää debian distribuutiokohtaiset muutokset

7 Debian asennus / Kernel -kääntöharjoitus
Aptitude:lla asennettaessa lataa aptitude ko. paketin /usr/src kansioon Paketin kokoluokka on noin 35 Mt, joten lataaminen voi viedä hetken. Purettuna kernel paketti on hieman yli 200 Mt. Lataaminen on tehty valmiiksi harjoitusten nopeuttamiseksi Seuraavaksi puramme ko. paketin # cd /usr/src # ls # tar -xvvjf kernel-source tar.bz2

8 Käännösohjeita Eli käytännössä sinulta puuttuu ncurses -paketit
Muokataan ytimen kuvausta niin että se erottuu ”standardi” ytimistä editoi Makefile -tiedostoa (/usr/src/kernel-source-2.6.8/Makefile) esimerkiksi nano –editorilla # nano Makefile EXTRAVERSION=custom Aloita kernelin konfigurointi komennolla: # make menuconfig => saat virheilmoituksen: ”Unable to find the Ncurses libraries” Tarkasta mitä kernel-source paketin kuvauksessa luki # aptitude show kernel-source-2.6.8 Eli käytännössä sinulta puuttuu ncurses -paketit

9 Käännösohjeita Tarkistetaan libncurses5-dev –paketin kuvaus
Etsitään ncurses paketit # aptitude search ncurses Tarkistetaan libncurses5-dev –paketin kuvaus # aptitude show libncurses5-dev Asennetaan libncurses5-dev # aptitude install libncurses5-dev Ajetaan interaktiivinen kernelin konfigurointiohjelma uudestaan (make menuconfig) ja aloitetaan kernelin asetusten muokkaaminen

10 Käännösohjeita Aloita kernelin konfigurointi komennolla (ajetaan /usr/src/kernel-source – hakemistossa): # make menuconfig Lisää IDE-tuki suoraan kerneliin (built-in) Device Drivers ---> ATA/ATAPI/MFM/RLL support ---> alipuu ATA/ATAPI/MFM/RLL support Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support Include IDE/ATA-2 DISK support generic/default IDE chipset support Lisää ecx2 ja ext3 tuki suoraan kerneliin (built-in) File systems ---> Second extended fs support File systems ---> Ext3 journalling file system support konfiguroi sysrq ja kernel hacking päälle Kernel hacking ---> Kernel debugging Kernel hacking ---> Magic SysRq key

11 Käännösohjeita Lisää kernel konfigurointia:
Jätä File systems ---> osioon vain seuraavat kohdat valituiksi Second extended fs support (+ kaikki tämän alta) Ext3 journalling file system support (+ kaikki tämän alta) ROM file system support (rakenna kernelin sisälle) Kernel automounter version 4 support (also supports v3) (rakenna kernelin sisälle) CD-ROM/DVD Filesystems ---> (älä muuta täältä mitään) Pseudo filesystems ---> (älä muuta täältä mitään) Miscellaneous filesystems ---> (älä muuta täältä mitään) Network File Systems ---> (älä muuta täältä mitään) Native Language Support ---> (älä muuta täältä mitään) Edellisiin alivalikoihin palataan tarkemmin seuraavilla sivuilla

12 Käännösohjeita Lisää kernel konfigurointia:
Code maturity level options ---> Valitaan kaikki käännettäväksi kernelin sisälle (built-in) General setup ---> tänne ei tehdä muutoksia Loadable module support ---> tänne ei tehdä muutoksia Processor type and features ---> kohdasta seuraavat muutokset: HPET Timer Support (päälle) Symmetric multi-processing support (päälle) check for P4 thermal throttling interrupt (pois päältä) Toshiba Laptop support (pois päältä) Dell laptop support (pois päältä) /dev/cpu/microcode - Intel IA32 CPU microcode support (pois päältä)

13 Käännösohjeita Lisää kernel konfigurointia:
Power management options (ACPI, APM) ---> APM (Advanced Power Management) BIOS Support ---> kohdasta poista kaikki valinnat Bus options (PCI, PCMCIA, EISA, MCA, ISA) ---> kohdasta poista seuraavat valinnat: ISA support NatSemi SCx200 support PCI Hotplug Support ---> Executable file formats ---> tänne ei tehdä muutoksia

14 Käännösohjeita Lisää kernel konfigurointia:
Device Drivers ---> kohdasta poista kaikki valinnat seuraavien alipuiden alta: Memory Technology Devices (MTD) ---> Parallel port support Multi-device support (RAID and LVM) ---> Fusion MPT device support ---> IEEE 1394 (FireWire) support ---> I2O device support ---> ISDN subsystem ---> Telephony Support ---> Dallas's 1-wire bus ---> Misc devices ---> Sound --->

15 Käännösohjeita Lisää kernel konfigurointia:
Device Drivers ---> Networking support ---> kohdasta poista valinnat: Amateur Radio support ---> IrDA (infrared) subsystem support ---> Bluetooth subsystem support ---> Bonding driver support EQL (serial line load balancing) support FDDI driver support HIPPI driver support (EXPERIMENTAL) PPP (point-to-point protocol) support SLIP (serial line) support Fibre Channel driver support Seuraavista Device Drivers ---> Networking support ---> alla olevista alipuista poista kaikki valinnat: ARCnet devices ---> Ethernet (10000 Mbit) ---> Token Ring devices ---> Wireless LAN (non-hamradio) ---> Wan interfaces ---> ATM Drivers --->

16 Käännösohjeita Lisää kernel konfigurointia:
Device Drivers ---> Multimedia devices ---> kohdasta poista kaikki valinnat: Tarkasta myös kaikki alipuut!! Security options ---> kohdasta poista kaikki valinnat Cryptographic options ---> tänne ei tehdä muutoksia Library routines ---> tänne ei tehdä muutoksia

17 Käännösohjeita Lisää kernel konfigurointia:
Lisäämme kerneliin tarvittavat osat, jotta kernelimme pystyy käynnistymään USB -kiintolevyltä Device Drivers ---> SCSI device support ---> kohdasta sisällytä kerneliin: SCSI device support SCSI disk support Device Drivers ---> USB support ---> kohdasta sisällytä kerneliin: Support for Host-side USB EHCI HCD (USB 2.0) support OHCI HCD support UHCI HCD (most Intel and VIA) support USB Mass Storage support

18 Käännösohjeita Lopeta konfigurointi ja sammuta konfigurointi –ohjelma
Vastaa myöntävästi uusien asetusten tallentamiseen Kun saat itse kääntöprosessin käyntiin (ohje seuraavalla sivulla) seuraa hetki että kaikki menee ”OK” ja vaihda toiseen virtuaalikonsoliin (ALT + F4, tms.)

19 Kernelin & modulien kääntäminen
Selitykset kernel imagen kääntökomennoille: # make bzImage komento luo kernel –imagen, joka tullaan lisäämään myöhemmin LILO:n käynnistyslistalle Kernel itsessään ei riitä, tarvitaan myös laiteajurimoduulit: # make modules komento kääntää ajurimoduulit (moduuleja voidaan ottaa käyttöön lennosta tarpeen mukaan) moduulit kopioidaan paikkaan josta kernel löytää ne: # make modules_install komento kopioi moduulit /lib/modules/<kernel-versio> hakemistoon Suorita itse kääntöprosessi komentoyhdistelmällä # make bzImage && make modules && make modules_install Seuraa käännöksen etenemistä hetki virheilmoitusten varalta ja vaihda sitten toiseen virtuaalikonsoliin (alt + F?)

20 Debian, ohjelmien asentaminen
Ohjelmien asentamiseen liittyviä perusasioita Ohjelman etsiminen: # aptitude search hakusana Ohjelman tarkempi kuvaus # aptitude show ohjelma Ohjelman asennuksen simulointi # aptitude –s install ohjelman Esimerkki asennuksesta # aptitude install screen Kokeile itse asentamalla ohjelma netcat

21 Debian, ohjelmien asentaminen
tcpdump, netcat nano, pico, jed, emacs, vi, vim iperf, nmap, screen gpm Ehdotuksia?

22 Uuden kernelin kopiointi /boot -hakemistoon
Palaa takaisin virtuaaliterminaaliin, johon käynnistit kernelin käännösprosessin Kopioi bzImage /boot –hakemistoon /boot –hakemisto on vakiintunut aikojen saatossa järjestelmän ytimien säilytyspaikkana # cp /usr/src/kernel-source-2.6.8/arch/i386/boot/bzImage /boot/vmlinuz-2.6.8custom nimi erottaa tämän käännöksen muista käännöksistä, kannattaa pitää yhtenäistä nimeämispolitiikkaa muiden image -tiedostojen kanssa, jotta versioiden erojen muistaminen olisi helppoa Tarvitsemme USB –boottausta varten ns. initrd –imagen (initial ramdisk) Vaihda työskentelykansioksi /boot –kansio # cd /boot Komentokehotteessa komento pwd kertoo nykyisen työskentelykansion

23 Debian, ohjelmien asentaminen
Initrd –imagen luonti # mkinitrd -o /boot/initrd.img-2.6.8custom 2.6.8custom Saat varoituksen puuttuvista moduuleista (kyseiset ajurit valittiin käännettäväksi suoraan kerneliin, joten moduuleja ei tämäntakia ole olemassa) Jätä varoitus huomiotta ja jatka eteenpäin

24 Uuden kernelin lisääminen boot valikkoon
Uuden Kernel ja initrd -imagen sijainti on kerrottava boot loaderille (LILO, LInux LOader) Muokkaa (eli lisää tiedoston loppuun) /etc/lilo.conf tiedostoon merkintä uudesta kernel käännöksestä (esim. nano -editorilla) # nano /etc/lilo.conf #oma kernel image=/boot/vmlinuz-2.6.8custom Initrd=/boot/initrd.img-2.6.8custom label=custom read-only Poista myös kommenttimerkki # riviltä 77 sanan prompt edestä editoidessasi lilo.conf -tiedostoa

25 Uuden kernelin lisääminen boot valikkoon
Lopuksi ajamme LILO:n, joka kirjoittaa käynnistyslohkon uusiksi # lilo -v Tarkastele LILO:n tulostetta mahdollisten virheilmoitusten varalta Kysy harjoitustenpitäjältä ohjeita virheiden ilmetessä

26 Käännöksen testaaminen
Uudelleenkäynnistä tietokone komennolla # reboot tai näppäinyhdistelmällä Ctrl + Alt + Del Valitse uusi kernel –image buutattavaksi valikosta custom –valinta LILO:n valikosta, tai kirjoittamalla ”custom” LILO:n kehoitteessa Alt+SysRq+k tappaa käytössä olevasta virtuaaliterminaalista prosessit esim. aja komento ”top” ja kokeile miten käy! alt+sysrq+h: mitä muuta voidaan tehdä

27 GNU/Linux -hakemistorakenteesta
/proc psuedo “tiedostojärjestelmä” # cat /proc/cpuinfo # cat /proc/ide/…… /var Sisältää tyypillisesti väliaikaisteidostoja, logistiedostoja yms. # cat /var/log/messages # cat /var/log/dmesg /etc Konfigurointitiedostot, käynnistys-scriptit… # cat /etc/fstab # cat /etc/motd # cat /etc/lilo.conf # ls /etc/init.d

28 Debian / Linux aiheisia faq sivustoja
Debian - Basic Commands and Tools The Debian GNU/Linux FAQ apt-get -> Aptitude ude/

29

30 Linux harjoitustyö Muistakaa editoida tiedostoa /etc/motd Kysyttävää??

31 Linux Magic System Request Key Hacks
Here is the list of possible values in /proc/sys/kernel/sysrq: 0 - disable sysrq completely 1 - enable all functions of sysrq >1 - bitmask of allowed sysrq functions (see below for detailed function description): 2 - enable control of console logging level 4 - enable control of keyboard (SAK, unraw) 8 - enable debugging dumps of processes etc. 16 - enable sync command 32 - enable remount read-only 64 - enable signalling of processes (term, kill, oom-kill) 128 - allow reboot/poweroff 256 - allow nicing of all RT tasks

32 Linux Magic System Request Key Hacks
ALT-SysRq-<command key> k Secure Access Key (SAK) Kills all programs on the current virtual console. b Will immediately reboot the system without syncing or unmounting your disks. u Will attempt to remount all mounted filesystems read-only. l Send a SIGKILL to all processes, INCLUDING init. (Your system will be non-functional after this.) h Will display help


Lataa ppt "Lähiverkot -erikoistyökurssi"

Samankaltaiset esitykset


Iklan oleh Google