L - PowerPoint PPT Presentation

About This Presentation
Title:

L

Description:

Title: L hiverkot -erikoisty kurssi Linux harjoitus Last modified by: happonen Document presentation format: Custom Other titles: Times New Roman StarSymbol ... – PowerPoint PPT presentation

Number of Views:50
Avg rating:3.0/5.0
Slides: 33
Provided by: www2ItLu
Category:
Tags: nmap

less

Transcript and Presenter's Notes

Title: L


1
Lähiverkot -erikoistyökurssi
  • Tutustuminen Debian GNU/Linux käyttöjärjestelmään
  • Tietoliikenteen laboratorio 6218
  • 13.11.2006 / 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
    (Delln 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ää aptituden 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 aptitudella
  • aptitude search kernel
  • aptitude search kernel-source
  • aptitude show kernel-source-2.6.8
  • aptitude install kernel-source-2.6.8 (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
  • Aptitudella 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-2.6.8.tar.bz2
  • ls

8
Käännösohjeita
  • 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
  • EXTRAVERSIONcustom
  • Aloita kernelin konfigurointi komennolla
  • make menuconfig
  • gt saat virheilmoituksen Unable to find the
    Ncurses libraries
  • Tarkasta mitä kernel-source-2.6.8 paketin
    kuvauksessa luki
  • aptitude show kernel-source-2.6.8
  • Eli käytännössä sinulta puuttuu ncurses -paketit

9
Käännösohjeita
  • 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-2.6.8 hakemistossa)
  • make menuconfig
  • Lisää IDE-tuki suoraan kerneliin (built-in)
  • Device Drivers ---gt ATA/ATAPI/MFM/RLL support
    ---gt 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 ---gt Second extended fs support
  • File systems ---gt Ext3 journalling file system
    support
  • konfiguroi sysrq ja kernel hacking päälle
  • Kernel hacking ---gt Kernel debugging
  • Kernel hacking ---gt Magic SysRq key

11
Käännösohjeita
  • Lisää kernel konfigurointia
  • Jätä File systems ---gt 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 ---gt (älä muuta täältä
    mitään)
  • Pseudo filesystems ---gt (älä muuta täältä
    mitään)
  • Miscellaneous filesystems ---gt (älä muuta täältä
    mitään)
  • Network File Systems ---gt (älä muuta täältä
    mitään)
  • Native Language Support ---gt (älä muuta täältä
    mitään)
  • Edellisiin alivalikoihin palataan tarkemmin
    seuraavilla sivuilla

12
Käännösohjeita
  • Lisää kernel konfigurointia
  • Code maturity level options ---gt Valitaan kaikki
    käännettäväksi kernelin sisälle (built-in)
  • General setup ---gt tänne ei tehdä muutoksia
  • Loadable module support ---gt tänne ei tehdä
    muutoksia
  • Processor type and features ---gt 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) ---gt APM
    (Advanced Power Management) BIOS Support ---gt
    kohdasta poista kaikki valinnat
  • Bus options (PCI, PCMCIA, EISA, MCA, ISA) ---gt
    kohdasta poista seuraavat valinnat
  • ISA support
  • NatSemi SCx200 support
  • PCI Hotplug Support ---gt
  • Executable file formats ---gt tänne ei tehdä
    muutoksia

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

15
Käännösohjeita
  • Lisää kernel konfigurointia
  • Device Drivers ---gt Networking support ---gt
    kohdasta poista valinnat
  • Amateur Radio support ---gt
  • IrDA (infrared) subsystem support ---gt
  • Bluetooth subsystem support ---gt
  • 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 ---gt Networking
    support ---gt alla olevista alipuista poista
    kaikki valinnat
  • ARCnet devices ---gt
  • Ethernet (10000 Mbit) ---gt
  • Token Ring devices ---gt
  • Wireless LAN (non-hamradio) ---gt
  • Wan interfaces ---gt
  • ATM Drivers ---gt

16
Käännösohjeita
  • Lisää kernel konfigurointia
  • Device Drivers ---gt Multimedia devices ---gt
    kohdasta poista kaikki valinnat
  • Tarkasta myös kaikki alipuut!!
  • Security options ---gt kohdasta poista kaikki
    valinnat
  • Cryptographic options ---gt tänne ei tehdä
    muutoksia
  • Library routines ---gt 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 ---gt SCSI device support ---gt
    kohdasta sisällytä kerneliin
  • SCSI device support
  • SCSI disk support
  • Device Drivers ---gt USB support ---gt 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 LILOn 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/ltkernel-versi
    ogt 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/b
    zImage /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
  • labelcustom
  • read-only
  • Poista myös kommenttimerkki riviltä 77 sanan
    prompt edestä editoidessasi lilo.conf -tiedostoa

25
Uuden kernelin lisääminen boot valikkoon
  • Lopuksi ajamme LILOn, joka kirjoittaa
    käynnistyslohkon uusiksi
  • lilo -v
  • Tarkastele LILOn 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 LILOn valikosta, tai
    kirjoittamalla custom LILOn kehoitteessa
  • AltSysRqk
  • tappaa käytössä olevasta virtuaaliterminaalista
    prosessit
  • esim. aja komento top ja kokeile miten käy!
  • altsysrqh 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
  • http//www.debian.org/doc/manuals/user/ch6.html
  • The Debian GNU/Linux FAQ
  • http//www.debian.org/doc/FAQ/
  • apt-get -gt Aptitude
  • http//www.garfieldtech.com/blog/2005/08/19/aptitu
    de/

29
(No Transcript)
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
  • gt1 - 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-ltcommand keygt
  • 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
Write a Comment
User Comments (0)
About PowerShow.com