Archive for vasario, 2007
Antradienis, 20 vasario, 2007
GNU GRUB – GRand Unified Bootloader, bootloader'is (programa, kuri leidžia vartotojams užkrauti operacinę sistemą ir jų turėti daugiau negu vieną; ji yra būtina kompiuterio krovimuisi). Pasistengsiu aprašyti trumpą jo konfigūravimą daugeliui OS.
Truputis istorijos
GRUB „gimė“ 1995 m. Jo kūrėjas – Erich Stefan Boleyn. Erich'as bandė paleisti GNU Hurd (kernelio analogas Unix sistemų kernel'iams). Kartu su Brian Ford jie suformavo multikrovimosi (iš angl. k. multiboot; nesupraskite tiesiogine prasme, nes aš turiu omenyje tai, kad multiboot yra funkcija, kuri leidžia prieš kraunant OS pasirinkti kurią OS užkrauti) specifikacijas. Šios specifikacijos nurodė kaip turėtų veikti multikrovimasis. Vėliau Erich'as bandė modifikuoti FreeBSD bootloader'į taip, kad jis galėtų krauti daugiau negu vieną OS. Visgi jis suprato, kad modifikuoti bus sunkiau ir rezultatas gausis blogesnis negu rašant savo bootloader'į. Taip jis ir padarė t. y. sukūrė savo bootloader'į. Rezultate turime labai galingą ir vieną populiariausių bootloader'ių.
GRUB instaliavimas
Iš pradžių aptarsiu GRUB instaliavimą. Pirmiausiai turime gauti kokį nors Linux LiveCD (rekomenduoju su fdisk ir būtinai su GRUB‘o paketais) ir jį užsikrauti. Pavyzdžiuose mes naudosimės Ubuntu 6.10 Edgy Eft LiveCD. Kai jau gavote LiveCD tai sukurkite bet kokios failų sistemos particiją (būtinai nurodykite tipą kaip primary), kurios dydis būtų apytiksliai 30 MB, pagal mano parašytą straipsnį apie fdisk. Žinoma galite naudotis taip pat Ubuntu 6.10 LiveCD esančiu GParted. Tai grafinis particijų valdiklis, bet nemanau, kad mums jis reikalingas, nes viską galime padaryti su fdisk (nebent reikia „apkarpyti“ particiją, bet tada galime pasinaudoti Partition Magic, kurį nemokamai galime rasti Hiren's BootCD kompakte). Nepamirškime uždėti boot žymę šiai particijai, o kitoms nuimti (kai kur tai traktuojama kaip Active režimas). Kompiuteris pirmiausiai naudos šią particiją.
Dabar pasirinkime failų sistemą. Aš rekomenduoju naudoti ext2, nes jos parametrai labiau tinkami negu ext3 ar kitų failų sistemų. Jeigu norime naudoti ext2 įvykdykime:
# mke2fs /dev/xdyi
Vietoje x rašykite h (IDE naudojantis įrenginys) arba s (SCSI įrenginys). Vietoje y rašykite:
a arba b – Master ir Slave diskai prijungti prie pirminio prievado, 1 IDE kontroleriaus;
c arba d – Master ir Slave diskai prijungti prie antrinio prievado, 1 IDE kontroleriaus;
e arba f – Master ir Slave diskai prijungti prie pirminio prievado, 2 IDE kontroleriaus;
g arba h – Master ir Slave diskai prijungti prie antrinio prievado, 2 IDE kontroleriaus.
O vietoje i rašykite particijos numerį, į kurią sukurėte GRUB‘ui.
Pavyzdžiui:
# mke2fs /dev/hda1
Štai komandų sąrašas failų sistemoms:
ext2 – mke2fs
ext3 – mke2fs -j
reiserfs – mkreiserfs
xfs – mkfs.xfs
jfs – mkfs.jfs
Pasileiskite terminalą ir iš LiveCD vykdykite šią komandą:
# grub-install /dev/xdy
Pavyzdžiui:
# grub-install /dev/hda
Atminkite, kad Linux sistemose skaičiai šalia įrenginio reiškia jo padalinį, todėl šiuo atveju skaičiaus nereikia nurodyti, nes taip instaliuotume GRUB'ą į particiją, o ne kietąjį diską. Jeigu instaliuotume į particiją tai norint užkrauti tą GRUB'ą mums reikėtų dar vieno bootloader'io, kuris būtų įdiegtas tame kietąjame diske iš kurio pasieksime tą GRUB'ą. Bet mes šiame straipsnyje aptariame GRUB'ą pagrindiniame kietąjame diske t. y. įrašytą į MBR (Master Boot Record - HDD takelis, kurį nuskaito ir įvykdo BIOS'ai, taip jie pratęsia kompiuterio krovimąsi ir darbą perduoda bootloader'iui).
Suinstaliavę GRUB'ą galime pradėti jo konfigūravimą. Tik prieš tai nustatykime default ir timeout reikšmes: default rekomenduoju nurodyti 0 (bus kraunamas pats pirmasis meniu punktas, jeigu jūs per nurodytą laiką nepasirinksite ką krauti), o timeout rekomenduoju nurodyti 10, jeigu nurodysite daugiau negu vieną meniu punktą (bus laukiama 10 sekundžių iki numatytosios OS krovimo), arba 0, jeigu nurodysite tik vieną meniu punktą (OS bus kraunama iš karto t. y. nematysite pasirinkimo meniu).
GRUB‘o konfigūravimas Linux‘ui
Primontuokime prie /boot GRUB‘o particiją:
# mkdir /mnt/boot
# mount /dev/xdyi /mnt/boot
Atsidarykime GRUB konfigūracinį failą:
# nano -w /mnt/boot/grub/menu.lst
Pridėkime šias eilutes:
# Meniu punkto pavadinimas, kurį matysime meniu
title Linux# Nurodome kernel'io particiją su HDD
# root ([hd – IDE vartotojams; sd – SCSI įrenginių vartotojams][kietojo disko numeris(pirmasis diskas ne 1, o 0!)],[particijos numeris(pirmoji particija ne 1, o 0!), kurioje yra kernel'is])
# Pavyzdžiui:
root (hd0,0)
# Tai atitiktų /dev/hda1 particiją
# kernel [nurodykite kernelį] root=[nurodykite šakninę (/) particiją]
# Pavyzdžiui:
kernel /boot/kernel root=/dev/hda2
Galutinį variantą šio meniu punkto be komentarų galite gauti http://pastebin.com/f454f294d adresu.
Išsaugoję konfigūracinį failą perkraukite kompiuterį ir jau galite užkrauti savo Linux distribuciją.
Per GRUB'ą užkrauname kitą bootloader'į
Dažnai pasitaiko, kad reikia užkrauti kokią nors Windows OS/Solaris/*BSD ar kitą operacinę sistemą. Bet Windows reikalauja savo bootloader'io. Yra OS, kurios nereikalauja savo bootloader'io ir jas galima sukonfigūruoti pagal Linux konfigūravimą, bet jeigu mes neturime laiko tai sekime straipsnį toliau, o ne grįžkime prie GRUB‘o konfigūravimo Linux‘e. Šioje straipsnio dalyje aptarsime kitų OS užkrovimą.
Mes pasirinksime paprastesnį būdą (jis yra universalesnis negu priversti kokią nors Microsoft Windows nuskaitinėti ir įrašinėti GRUB‘o particiją ir per Windows ar tą kitą OS konfigūruoti GRUB'ą) – užsikrausime mūsų pasirinktą Linux LiveCD ir redaguosime GRUB'o konfigūracinį failą. Bet prieš redaguodami nepamirškime prisimontuoti savo GRUB‘o particiją:
# mkdir /mnt/boot
# mount /dev/xdyi /mnt/boot
Redaguokime GRUB‘o konfigūraciją:
# nano -w /mnt/boot/grub/menu.lst
Pridėkime šias eilutes:
# Meniu punkto pavadinimas, kurį matysime GRUB meniu
# Pavyzdžiui:
title=Windows XP Professional
# Nurodome kurią particiją naudoti
# rootnoverify ([hd – IDE vartotojams; sd – SCSI įrenginių vartotojams][kietojo disko numeris(pirmasis diskas ne 1, o 0!)],[particijos numeris(pirmoji particija ne 1, o 0!), kurioje yra sekantis bootloader'is/operacinė sistema])
# Pavyzdžiui:
rootnoverify (hd0,0)
# Kai kurios OS (Windows OS toji eilutė nėra būtina) reikalauja, kad jų particijos būtų aktyvios, bet jeigu naudojame GRUB atskiroje particijoje tai aktyvi yra ne tos OS, o GRUB‘o particija. Todėl rekomenduoju konfigūraciniame faile nurodyti tolimesnę eilutę.
maceactive
# Tolimesnė eilutė nurodo GRUB‘ui perleisti bootloader'io darbą kitam bootloader'iui, kuris yra rootnoverify eilutėje nurodytoje particijoje. Priešingai negu buvusi eilutė, ši eilutė yra būtina
chainloader +1
Išsaugoję konfigūracinį failą ir perkrovę kompiuterį mes jau galime naudotis norimu bootloader'iu.
Galutinį variantą be komentarų galite gauti adresu http://pastebin.com/f63f4f04d.
GRUB meniu fonas
GRUB'as turi įdomią funkciją (numatyta, kad ji susikompiliuoja jeigu jūs neliepiate kompiliatoriui jos nekompiliuoti, todėl neaprašysiu ką daryti jeigu mūsų GRUB'as neturi tokios funkcijos, apie tai galite pasiskaityti pabaigoje pateiktoje nuorodoje), kuri leidžia mums nustatyti kokio nors paveikslėlio rodymą meniu fone. Iš tikrųjų tai gana daug pagražina mūsųs sistemos krovimąsi. Deja, reikia atminti, kad dydis ribojamas iki 640×480, o spalvų kiekis iki 14, bet ir tai galima puikiai išnaudoti.
Pirmiausiai nusipieškime paveikslėlį, kurio dydis maždaug atitiktų 5:4 santykį (jeigu galima tai pieškite 640×480 iš karto, nes taip išvengsite iškraipymų keičiant dydį). Dabar atidarykime jį su „The Gimp“ ir pakeiskime jo dydį:
Paveikslėlis–>Keisti paveikslėlio dydį
Nuimkime grandinę () ir „Plotis“ laukelyje įrašykime 640, o laukelyje „Ilgis“ - 480. Spustelėkime mygtuką „Ištempti“.
Dabar sumažinkime spalvų kiekį.
Sluoksniai–>Spalvos–>Spalvų sumažinimas…
Sumažinkime spalvų iki 14 ir paspauskime „Gerai“.
Dabar išsaugokime paveikslėlį (Byla–>Išsaugoti kaip…) XPM (X PixMap) formatu ir šia komanda jį suspauskime:
$ tar -cf [paveikslėlis].tar [paveikslėlis]
Paveikslėlį nukopijuokime į /boot katalogą (nepamirškime jo prisimontuoti kaip tai darėme kiekvieno konfigūravimo pradžioje):
# cp [paveikslėlis].tar /boot/[paveikslėlis].tar
Atsidarykime GRUB‘o konfigūraciją:
# nano -w /boot/grub/menu.lst
Ir prirašykime po eilute „timeout“ šias eilutes:
root ([hd – IDE vartotojams; sd – SCSI įrenginių vartotojams][kietojo disko numeris(pirmasis diskas ne 1, o 0!)],[particijos numeris(pirmoji particija ne 1, o 0!), kurioje yra sekantis bootloader'is/operacinė sistema])
splashimage /boot/[paveikslėlis].tar
Pavyzdžiui:
root (hd0,0)
splashimage /boot/vista.xpm.tar
Pastaba. Vietoje „[paveikslėlis]“ parašykite paveikslėlio failo pavadinimą.
Slaptažodžiai
Norėdami apsaugoti GRUB'ą jūs galite pasinaudoti „GRUB apsaugojimas“ straipsniu. Jame puikiai išdėstyta kaip uždėti slaptažodį ant GRUB'o ir apsaugoti jį.
Pabaiga
Apibendrinant, GRUB'as yra pakankamai galingas bootloader'is, kuris ateityje manau išpopuliarės dar labiau. GRUB'as įdedamas beveik į visas Linux OS, o ir būti pasiruošusiam Linux diegimui visada būna pravartu. Tikiuosi, kad jums pavyko puikiai sukonfigūruoti GRUB'ą ir šis straipsnis dar labiau padidins GRUB'o vartotojų skaičių.
Plačiau apie paveikslėlius GRUB meniu fone galite pasiskaityti adresu http://ruslug.rutgers.edu/%7Emcgrof/grub-images/.
2007 m. vasario 20 d., Pixel
Posted in Linux, Patarimai | No Comments »
Penktadienis, 16 vasario, 2007
IPTABLES tai paketų filtras (prafiltruojami nereikalingi paketai (nesupratusiems tai paketai būtų tinklo srautas; juos filtruoti reikia, nes visiškai uždarydami nereikalingus prievadus (pavyzdžiui 80 prievadą, kurio mes nenaudojame, arba 22 (SSH)) mes sumažiname įsilaužimo tikimybę), taip pat jie gali būti persiunčiami į kitą kompiuterį (su IPTABLES galima iš paprasto kompiuterio pasidaryti maršrutizatorių (aparatas, kuris aprūpina tinklą srautu ir atlieka dar keletą funkcijų, bet ši buvo esminė)); kitaip sakant IPTABLES gali dirbti ne tik kaip ugniasienė, bet ir maršrutizatorius) Unix tipo sistemoms. Juo iš tikrųjų gana patogu naudotis ir jis yra labai galingas. Bet tai tik mano nuomonė. Įsitikinti galėsite šiame straipsnyje.
Jau senai norėjau parašyti straipsnį apie IPTABLES naudojimą. Viską darysime Gentoo sistemoje, todėl gali kilti šiek tiek nesuderinamumų tarp kitų OS dėl komandų, bet pagrindinės IPTABLES komandos tos pačios. Pavyzdyje naudosimės 2.6 kernel’iu.
Pirmiausiai turime įsitikinti, kad mūsų sistema palaiko IPTABLES, o ne IPCHAINS (tai senesnė paketų filtro versija, kuri naudojama 2.4 kerneliuose). Tai padarysime šia komanda:
# grep -i netfilter /usr/src/linux/.config
Jeigu gausime atsakymą, kuris nėra „CONFIG_NETFILTER=y“, vadinasi mes neturime IPTABLES palaikymo dabar naudojamame kernel’yje. O jeigu gausime tokį atsakymą tai galime praleisti kernel’io kompiliavimo sekciją.
Kompiliuojame kernel’į su IPTABLES palaikymu
Pirmiausiai atsisiųskime kernel’io išeities tekstus („sources“; iš www.kernel.org) ir išpakuokime į /usr/src/linux komanda:
# tar xzfv kernel*.tar.gz -C /usr/src/linux
tar.gz archyvui, o tar.bz2 archyvui būtų tokia komanda:
# tar xjfv kernel*.tar.bz2 -C /usr/src/linux
Toliau konfigūruosime kernel’į:
$ cd /usr/src/linux
# make menuconfig
Jeigu norite, tai galite naudoti „make xconfig“ komandą, bet atminkite, kad ji reikalauja Qt ir paleistų X'ų. xconfig'e galėsite naudotis paieška, o menuconfig – ne.
Einame į Networking–>Networking Options–>su Space klavišu pažymime Network packet filtering (replaces ipchains)–>įeikime į Network packet filtering (replaces ipchains) ant šios eilutės paspausdami Enter–>įjunkime Netfilter Xtables support (required for iptables), rekomenduoju nejungti kaip modulio t. y. Spauskite Space tol kol pamatysite šią eilutę pažymėta žvaigždute, o ne raide M ar iš viso nepažymėtą–>išeikime vienu lygiu aukščiau ir eikime į IP: Netfilter configuration–>įjunkime IP tables support (required for filtering/masq/nat)–>taip pat įjunkime Packet filtering. To turėtų užtekti, kad kernel’is palaikytų IPTABLES. Pabandykite sukompiliuoti ir išbandyti kernel’į (visur paspauskite Exit ir, kai iškris klausimas Do you wish to save your new kernel configuration?, paspauskite „Yes“).
Kompiliuojame kernel'į:
# make && make modules_install
Įdedame naujojo kernel’io pasirinkimą GRUB'e:
# cp arch/i386/boot/bzImage /boot/kernelis
Atkreipkite dėmesį, kad galite vietoje i386 rašyti savo platformą.
Konfigūruokime GRUB:
# nano -w /boot/grub/menu.lst
Įdėkime šias eilutes:
title=Gentoo Linux 2.6.20 # ši eilutė nurodys ką rodyti GRUB meniu kaip pasirinkimą šio kernel'io
root (hd0,0)# nurodome kur ieškoti kernel'io
kernel /boot/kernelis root=/dev/hda2 video=vesa:mytt:3,ywrap # konfigūruokime kernel'į. Jeigu nenaudojate VESA framebuffer tai ištrinkite "video=vesa:mytt:3,ywrap".
Patikrinkime ar timeout eilutėje nėra nustatyta skaičius 0. Jeigu yra tai jį padidinkime. Tai nurodys kiek sekundžių laukti kol pasirinksime kernel’į. Jeigu jo nepasirinksime tai sistema kraus tą, kuris į x-asis (x tai skaičius nurodytas default eilutėje, kernel’iai numeruojami pagal jų išsidėstymą meniu).
Jeigu turime LILO tai atlikime šiuos veiksmus:
# nano -w /etc/lilo.conf
timeout nurodykime ne mažiau kaip 0.
default reikšmę nurodykime tą meniu punktą, kurį LILO turi krauti jeigu per timeout eilutėje nurodytą sekundžių skaičių jūs nepasirinksite ką krauti.
image=/boot/kernel-2.6.20 # nurodykime kur yra kernel'is
label=gentoo # Meniu punkto pavadinimas
read-only # Uždrausime įrašymą į kernel'io particiją
root=/dev/hda3 # root particija
Ir išsaugokime konfigūracinį failą.
Dabar galima perkrauti kompiuterį ir džiaugtis nauju kernel'iu.
Instaliuojame IPTABLES
Mes pavyzdyje naudosimės Portage, nes mūsų pavyzdinė OS yra Gentoo. Jums siūlau naudotis savo sistemos paketų valdikliais (Aptitude, Yum, Pacman ir pan.).
# emerge net-firewall/iptables
Tai būtų Portage IPTABLES instaliavimo komanda Gentoo sistemoje.
Aptitude vartotojams:
# apt-get install iptables
Yum vartotojams:
# yum install iptables
IPTABLES suinstaliuota. Dabar galime pereiti prie kitos dalies – IPTABLES konfigūravimo.
IPTABLES konfigūravimas
Iš karto norėčiau paminėti, kad vartotojai, kurie tiesiog nori ugniasienės Linux distribucijoje, gali įsidiegti Firestarter (Linux ugniasienė, kuri paremta IPTABLES) arba susigeneruoti konfigūruojantį IPTABLES bash scenarijų tinklalapyje http://easyfwgen.morizot.net/gen/.
Jeigu pasirinkote konfigūracinio failo generavimą tai nueikite pateiktu adresu ir atsakykite į klausimus. Jums bus pateiktas ilgas scenarijus. Jį išsaugokite kaip „scenarijus.sh“ ir suchmodinkite:
# chmod +x scenarijus.sh
Dabar jį paleiskite:
# sh scenarijus.sh
IPTABLES dabar turėtų būti sukonfigūruota. Tiesa, tai nėra geriausias būdas apsaugoti savo kompiuterį ar tinklą nuo įsilaužėlių. Geriausia tai padaryti yra pačiam konfigūruojant IPTABLES. Būtent todėl ir rašau šį straipsnį.
Pirmiausiai turėtume pasirinkti kaip konfigūruosime IPTABLES. Mes galime sukonfigūruoti ją per bash scenarijų (panašiai kaip ir easyfwgen.morizot.net/gen, tik visą failą pasirašysime patys ir taip padidinsime saugumą) arba paprasčiausiai vykdydami pavienes komandas. Tai jau jūsų skonio reikalas.
Norėdami savo bash scenarijų paleisti jūs turite jį suchmodinti kaip ir sugeneruotą scenarijų:
# chmod +x scenarijus.sh
O paleisti jį irgi reikalautina super vartotojo teisių:
# sh scenarijus.sh
Jeigu rašysime bash scenarijų tai atminkime tokią jo konstrukciją (bash scenarijai tai paprasti tekstiniai failai susidedantys iš konsolės komandų):
#!/bin/bash
# pirmoji eilutė („#!/bin/bash“) yra būtina, o kitose eilutėse grotelės („#“ simbolis) reiškia, kad visa toji eilutė yra komentaras ir kad ir ką jūs ten berašytumėte toje eilutėje, bash’as į tai nekreips dėmesio.# pačioje scenarijaus pradžioje susirašykime konstantas, kurias naudosime. Taip vėliau sutaupysime daugiau laiko, nes nereikės atsiminti anksčiau nurodytų duomenų.
TINKLESKE=“eth0“
LANOMASK=“192.168.2.0/24“
# vėliau jos gali būti panaudojamos vietoje reikšmės rašant konstantos pavadinimą su dolerio ženklu priešais ir be kabučių.
# pavyzdžiui: iptables -A FORWARD -s 192.168.1.2 -i $VIDINE_KORTA -j ACCEPT
# komandos rašyti dėl patogumo siūlau atskirose eilutėse. Ir nerašykite komandų su grotelėmis („#“ simbolis prieš komandą), nes jas reikia rašyti be grotelių priekyje, kadangi aš grotelėmis nurodau, kad komanda privaloma vykdyti super vartotojo teisėmis, o dolerio ženklu („$“) nurodau, kad komandą patartina įvykdyti su paprasto vartotojo teisėmis.
# tai yra viskas ką jums reikia žinoti kuriant bash scenarijus.
Dabar apžvelkime didžiąją dalį komandų:
# iptables -F
Šia komanda ištrinsime buvusią konfigūracija.
Prieš sekančiąją komandą norėčiau priminti, kad INPUT – įeinantis srautas (pavyzdžiui, norint pasiekti jūsų kompiuteryje esančią serverinę tarnybą (tarkim Apache) reikia leisti srautą pro 80 prievadą (jeigu norime dirbti iš išorės su mūsų kompiuteryje esančiu Apache)); OUTPUT – išeinantis srautas; FORWARD – persiunčiamas srautas į kitą kompiuterį (jeigu norėsime pakurti maršrutizatorių tai mums prireiks šios grandinės).
# iptables -P chain DROP
Ši komanda nurodys IPTABLES blokuoti tai ką nurodome vietoje chain (INPUT/OUTPUT/FORWARD – tai tarsi taisyklių grandinės (iš angl. k. chains; kiekviena skirta vis kitam srautui), jas ir rašykite vietoje chain). Pavyzdžiui, iptables -P INPUT DROP komanda užblokuos visą įeinantį srautą. Vietoje DROP mes galime rašyti anksčiau nurodytas grandines (INPUT/OUTPUT/FORWARD). Atkreipkite dėmesį, kad IPTABLES konfigūracijoje būtina blokuoti viską, kad toliau esanti konfigūracija turėtų kažkokią reikšmę. Vietoje DROP taip pat galite rašyti kitokią užduotį, bet mes norime viską užblokuoti, o ne leisti.
# iptables -A INPUT -i lo -j ACCEPT
A opcija prideda taisyklę prie mūsų nurodytos grandinės. i opcija mes nurodome tinklo įrenginį, o j nurodome užduotį, kurią IPTABLES turi atlikti su tais duomenimis. ACCEPT – nurodydami šią užduotį mes priimame visą srautą iš lo t. y. localhost.
Nepamirškime to pačio atlikti su OUTPUT ir FORWARD:
# iptables -A OUTPUT -o lo -j ACCEPT
Atkreipkite dėmesį, kad nenaudojame i opcijos, nes i opcija nurodo įeinančio srauto įrenginį, o o nurodo išeinančio srauto įrenginį.
# iptables -A FORWARD -i lo -j ACCEPT
Šiuo metu mes galime naudotis localhost, bet negalime naudotis internetu. Jeigu taip ir yra tai galime tęsti straipsnio skaitymą kaip niekur nieko, o jeigu ne tai rekomenduoju pasiskaityti IPTABLES dokumentaciją ir paieškoti ką darote ne taip.
# iptables -A INPUT -j ACCEPT -i eth0 -p tcp -d xxx.xxx.xxx.xxx –dport x
Vietoje eth0 įrašykime tinklo plokštę (taip nepamirškime padaryti ir kitose komandose, nes apie tai, kad reikia pakeisti eth0 aš tikriausiai jau nebeužsiminsiu), kurią naudojame internetui. p opcija nurodo protokolą (TCP - Transmission Control Protocol (šiuo protokolu duomenys siunčiami „bendraujant“ dviems kompiuteriams t. y. vienas siunčia, o kitas užtikrina pirmąjį kompiuterį, kad duomenis gauna), UDP - User Datagram Protocol (juo siunčiami/gaunami duomenys tiesiog siunčiami be jokių „klausimų“ nutolusiam kompiuteriui)). Šiuo atveju tai tcp. d opcija nurodo išorinį IP (pavyzdyje xxx.xxx.xxx.xxx), su kuriuo atliksime veiksmą, bet prisiminkite, kad tai nebūtina nurodyti. Tačiau IP arba prievadą nurodyti yra būtina. dport opcija nurodo išorinį prievadą (pavyzdyje x). Jeigu prievado nenurodysime tai bus naudojami visi prievadai.
# iptables -A OUTPUT -j ACCEPT -o eth0 -p tcp -s xxx.xxx.xxx.xxx –sport
Viskas taip pat kaip ir prieš tai buvusiame pavyzdyje, tik dabar naudojame vidinius IP adresus ir prievadus ir vietoje i nurodome o opciją.
Šiomis dviem komandomis įsileisime prisijungimus iš mūsų nurodytų IP adresų per mūsų nurodytus prievadus (pvz., 21) TCP protokolu.
# iptables -A INPUT -j ACCEPT -i eth0 -p udp -d xxx.xxx.xxx.xxx –dport 21
# iptables -A OUTPUT -j ACCEPT -o eth0 -p udp -s xxx.xxx.xxx.xxx –sport 21
Čia taip pat kaip ir su TCP, tik dabar p opcijai nurodykime UDP protokolą.
# iptables -A INPUT -i eth0 -p icmp -j ACCEPT
# iptables -A OUTPUT -o eth0 -p icmp -j ACCEPT
ICMP – Internet Control Message Protocol. Turėtume šį protokolą leisti, nes be jo mes negalėsime būti ping’inami ir iškils daug kitų problemų.
# iptables -A OUTPUT -j DROP -o eth0 -d one.lt
Tokia komanda užblokuosime priėjimą prie one.lt pro eth0 tinklo plokštę.
Mano nuomone šios informacijos turėtų užtekti, kad galėtumėte sukonfigūruoti iptables (atminkite, kad straipsnis nebaigtas ir tikriausiai ateityje dar bus pildomas ir koreguojamas, todėl rekomenduojame pastoviai tikrinti Versme.net ar nėra straipsnių apie saugumą arba apžvelkite IPTABLES dokumentaciją).
2007 m. vasario 16 d., Pixel
Posted in Internetas, Linux, Patarimai, Unix | 12 Comments »
Trečiadienis, 7 vasario, 2007
Aptarsiu paprasčiausią Samba įdiegimą ir sukonfigūravimą naudotis „share’ais“. Kartu šiame straipsnyje išnagrinėsime tokiom funkcijoms reikalingą konfigūracijos smb.conf failą ir CUPS suderinamumą su Samba. Šis straipsnis padės jums lengviau ir aiškiau sukonfigūruoti Samba.
Kas yra kas?
Straipsnį pradedu šiuo klausimu, nes gali atsirasti žmonių, kuriems neaišku apie ką šis straipsnis. Pradėkime nuo Samba. Samba yra mano nuomone populiariausia programinė įranga naudojama Linux ir Unix tinkluose. Ši programinė įranga realizuoja SMB ir CIFS tinklus.
SMB - Server Message Block. Programinio lygio protokolas, kuris leidžia naudotis dalinimosi paslaugomis.
CIFS - Microsoft paėmė SMB ir pervadino į Common Internet File System. Microsoft taip pat pridėjo įvairių galimybių, tokių kaip symlink’ai, tiesioginis susijungimas be NetBIOS tvarkymo. NetBIOS tai Network Basic Input/Output System, daugiausiai Windows sistemose naudojama tinklo vardų sistema. Nors ir turi daug daugiau galimybių, tačiau pats NetBIOS’as Windows sistemoje yra nesaugus, todėl naujesnės Windows OS tarpusavyje gali “dirbti” be NetBIOS.
CUPS - Common Unix Printing System. Unix sistemose naudojama sistema spausdinimui, kurią aš taip pat panaudosiu šiame straipsnyje.
foomatic - tam tikra gana kompaktiškai surinkta spausdintuvų tvarkyklių sistema.
WORKGROUP - vietinis tinklas yra suskirstytas į grupes. Workgroup tai būtų grupės pavadinimas.
Sistemos paruošimas ir Samba įdiegimas
Pradėkime nuo pasiruošimo Sambos instaliavimui. Norint naudotis Samba savo kompiuteryje, mes turime sukompiliuoti kernelį su SMBFS ir CIFS palaikymu. Tam užtenka redaguoti .config failą ir jame susirasti šias ar panašias eilutes ir pakeisti į žemiau nurodytąsias:
CONFIG_SMB_FS=y
CONFIG_SMB_NLS_DEFAULT=y
CONFIG_SMB_NLS_REMOTE="cp437"
CONFIG_CIFS=y
Išsaugokime .config failą ir sukompiliuokime kernel’į. Perkraukime sistemą ir užkraukime šį kernel’į.
Dabar sukompiliuokime Samba:
# emerge samba
Jeigu naudosimės spausdintuvų dalinimusi tai dėl viso pikto suchmodinkime /var/spool/samba:
# chmod 777 /var/spool/samba
Nepamirškime įdėti Samba startavimo į sistemos krovimąsi:
# rc-update add samba default
Taip pat jeigu norėsite kitiems tinklo vartotojams leisti naudotis spausdintuvu jį suinstaliuokite į CUPS. Rekomenduoju parsisiųsti foomatic.
# emerge foomatic
Mano pasiūlymas būtų nesinaudoti standartinėmis konfigūracijomis, o pasiskaityti smb.conf.example failą ir pagal jį sukonfigūruoti Samba, bet aš apžvelgsiu paprastutį konfigūravimą (per daug neišsiplėsiu).
smb.conf pagrindo apžvelgimas
Pirmiausiai /etc/samba/smb.conf faile siūlau įrašyti štai tokį konfigūracinį tekstą (grotelės žymi komentarą, o komentaras baigiasi eilutės pabaigoje t. y. sulig kitu Enter):
[global]
# Čia privaloma nurodyti darbo grupę tokią kokią nurodote kituose kompiuteriuose, kad vieni kitus kompiuteriai „matytų“
workgroup = WORKGROUP
# NetBIOS name nurodo kokiu vardu jūsų kompiuteris funkcionuos tinkle
netbios name = CEL1200
# Šį komentarą Windows Explorer daug kur naudos šalia NetBIOS vardo; tai tarsi kompiuterio apibūdinimas
server string = Samba Server %v
# Jeigu nenorėsite dalintis spausdintuvu ar juo naudotis iš nutolusio kompiuterio, galite sekančią eilutę ištrinti, o jeigu naudositės spausdinimo sistema tinkle tai nurodykite kokia sistema norite naudotis (mūsų atveju - CUPS)
printcap name = cups
# Tai nurodo ar reikia iš viso kreipti dėmesį į spausdintuvus ir jų konfigūracijas. Tai patogu jeigu norite atjungti spausdintuvus ir po to juos greitai įjungti neperrašant viso konfigūracinio failo
load printers = yes
# Pakartotinas spausdinimo sistemos nurodymas
printing = cups
# Nurodome kur saugoti log’us (įrašus apie įvykius)
log file = /var/log/samba/log.%m
# Nurodome didžiausią log’ų dydį Kb
max log size = 50
# Apsaugos lygis. Rekomenduoju naudoti share; jeigu nurodysite user tai turėsite dažniau įvesdinėti slaptažodžius ir prisijungimo vardus, bei galbūt turėsite problemų dėl autentifikacijos.
security = share
# Slaptažodžių šifravimo galimybė
encrypt passwords = yes
# Siūlau nesigilinti, nes esamos nuostatos man kol kas davė tikrai pakankamą greitį ant daugelio sistemų. Tai socket’ų nustatymai.
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
# Nurodykime įrenginius t. y. maršrutizatoriaus IP ir tinklo plokštę.
interfaces = eth0 192.168.2.1
# Samba slaptažodžių failo nurodymas. Rekomenduoju palikti reiškmę tokia, kokia ji yra.
smb passwd file = /usr/local/samba/private/smbpasswd
# Nurodykime IP adresus, kuriems leisime prisijungti prie Samba tinklo
hosts allow = 192.168.2.0/24 127.0.0.0/8 192.168.2.100 192.168.2.101
http://pastebin.com/f580ba6d3 – šiuo adresu galite rasti šią smb.conf failo sekciją be komentarų.
Šių eilučių turėtų užtekti, kad veiktų Samba. Jeigu norite ką nors „pasharinti“ tai skaitykite straipsnį toliau. O jeigu nenorite tai galite praleisti sekančius du skyrius.
Dalinimasis spausdintuvu
Norint, kad galėtume kitiems leisti spausdinti mūsų spausdintuvu, mes jį, jau kaip minėjau, privalome įdiegti CUPS sistemoje, nes smb.conf failo global sekcijoje nurodėme, kad Samba naudotų CUPS kaip pagrindinę spausdinimo sistemą.
Dabar suteikime vartotojams slaptažodžius (patariu naudoti kitokius negu naudojote sistemoje iki šiol ir atminkite, kad vartotojas, kuriam priskiriate slaptažodį, jau turi būti sukurtas jūsų Gentoo sistemoje):
# smbpasswd -a root
# pdbedit -a -u root
Vietoje root naudokite vartotojo vardą, kuriam suteikiate slaptažodį. Atminkite, kad pagal mūsų konfigūraciją, jūs privalote suteikti slaptažodį root vartotojui. „pdbedit“ komanda įkelia vartotojo informaciją į Samba duomenų bazę.
Dabar konfigūruokime CUPS:
# nano -w /etc/cups/cupsd.conf
Šiame faile susiraskime ir pakeiskime/pridėkime šias eilutes:
ServerName CEL1200 # rekomenduoju naudoti NetBIOS reikšmę iš /etc/samba/smb.conf
ServerAdmin root@CEL1200 # nurodome administratorių
# Nurodome log'ų buvimo vietą ir jų sudėtingumą
AccessLog /var/log/cups/access_log
ErrorLog /var/log/cups/error_log
LogLevel info
# Nurodome kiek leisti daugiausiai klientų. Rekomenduoju didelę reikšmę, nes gali kilti problemų su mažomis.
MaxClients 100000000
BrowseAddress @IF(eth0) # nurodome vietoje eth0 savo tinklo plokštęOrder Deny,Allow
Deny From All
Allow From 192.168.0.* # nurodykime tuos IP adresus, kuriems leisime spausdinti. Žvaigždutė atitinka visus 255 skaičius.
# tolimesnės konfigūracijos nerekomenduoju keisti, apart tą eilutę, kurią aš pakomentavau
AuthType Basic
AuthClass System
Allow From 192.168.0.* # tas pats kaip aukščiau tik šį kartą čia nurodomi IP adresai, kuriems leidžiama vykdyti administracines užduotis pvz., spausdintuvo ištrynimas ar pridėjimas.
Order Deny,Allow
Deny From All
Toliau pageidautina, kad „mime.convs“ faile atkomentuotumėte šią eilutę:
application/octet-stream application/vnd.cups-raw 0 -
O mime.types faile šitą:
application/octet-stream
Dabar perkraukime CUPS:
# /etc/init.d/cupsd start
Taip pat nepamirškime įdėti CUPS paleidimo krovimos metu į init’ą:
# rc-update add cupsd default
Toliau nagrinėsime mano nurodytą smb.conf konfigūracinio failo spausdinimo sekcijas:
# Jeigu turime spausdintuvą tai nurodykime jo pavadinimą, kuriuo mes esame jį instaliavę CUPS sistemoje
[HPLaserJet1000]
# Galimybė uždrausti spausdinimą šiuo spausdintuvu.
printable = yes
# Pasilikime standartinę reikšmę.
path = /var/spool/samba
# Turėtume nurodyti įrašinėjimo galimybę.
read only = no
# Publikavimo galimybė. Atminkite, kad viešiname tik vidiniame tinkle.
public = yes
# Galimybė spausdinti svečiui. Rekomenduoju palikti „yes“.
guest ok = yes
# Windows sistemoje būtų sukurtas katalogas su visais spausdintuvais.
[printers]
comment = All Printers
path = /var/spool/samba
browseable = no
public = yes
guest ok = yes
writable = no
printable = yes
create mode = 0700
print command = lpr-cups -P %p -o raw %s -r # naudosime kliento spausdintuvo tvarkykles t. y. CUPS spausdinami dokumentai pasieks jau RAW (tai toks formatas, kuris jau visiškai paruoštas spausdintuvui ar kitam įrenginiui) formate.
# Sekančios eilutės praplečia spausdintuvo konfigūraciją. Esami nustatymai turėtų tikti beveik visoms sistemoms
[print$]
path = /etc/samba/printer
browseable = yes
read only = yes
write list = @adm root
guest ok = no
write list = root
Dabar pridėkime savo spausdintuvą į Samba:
# cupsaddsmb -H CEL1200 -U root -h CEL1200 -v HPLaserJet1000
Vietoje HPLaserJet1000 parašykime savo spausdintuvo pavadinimą, kurį naudojome CUPS sistemoje. O vietoje CEL1200 įrašykime localhost. Jeigu net ir nepavyktų šios komandos įvykdyti, vis tiek rekomenduoju pabandyti viską pabaigti iki galo ir pažiūrėti ar spausdinsis.
Šios sekcijos eilutes be komentarų galite gauti adresu http://pastebin.com/f303835c0.
Norėdami pasidalinti kuriuo nors katalogu, smb.conf faile prirašykite tolimesnes eilutes.
Spausdiname per Samba Windows sistemoje
Per Windows Explorer nueikime į savo serverį (adreso laukelyje įveskime pvz., \\CEL1200). Paspauskite dešiniu pelės klavišu ant spausdintuvo ir pasirinkite Connect. Gali iškristi keletas lentelių (jeigu neinstaliavote spausdintuvo tvarkyklių padavimo Windows sistemai per Samba). Tada spauskite Yes–>Ok–>Have Disk… ir įdėkite spausdintuvo tvarkyklių kompaktą, pasirinkite spausdintuvo inf failą ir sudiekite tvarkykles. Viskas. Galite spausdinti.
Pastaba. Siūlau pasiskaityti http://lists.samba.org/archive/samba/2005-September/110571.html ir http://www.ubuntuforums.org/showthread.php?t=47963.
Spausdiname per Samba Unix paremtose OS
Paruošiame sistemą spausdinimui (pavyzdyje imame Gentoo sistemą, skirtingose distribucijose/OS komandos gali šiek tiek skirtis):
# emerge cups
# /etc/init.d/cupsd start
# rc-update add cupsd default
To turėtų užtekti. Sistema pati susiras spausdintuvą.
Tiesa, galite naudotis CUPS straipsniu, jog pasidarytumėte geresnę spausdinimo sistemą.
Dalinimasis katalogais
Pirmiausiai sukurkime katalogą. Mes kuriame /home/ernestas/myshare:
$ mkdir /home/ernestas/myshare
Nepamirškime jo suchmodinti:
$ chmod o=rx /home/ernestas/myshare
Jeigu norime, kad jis būtų tik skaitomas. O jeigu norime, kad galima būtų į jį ir įrašinėti tai naudokime šią komandą:
$ chmod o=rwx /home/ernestas/myshare
arba galime pratęsti /etc/samba/smb.conf failą šiomis eilutėmis:
# Dalinimosi katalogo pavadinimas, kuris bus rodomas tinklo naršyklėj.
[share]
# Komentaras
comment = share ir tiek…
# Katalogo buvimo vieta
path = /home/ernestas/myshare
# Nurodome skaitymo ir kitus parametrus…
read only = no
public = yes
Perkraukime Samba:
# /etc/init.d/samba restart
Ir galime nueiti prie kitos sistemos ir pažiūrėti ar viskas veikia.
Šios sekcijos smb.conf failo eilutes be komentarų galima atsisiųsti iš http://pastebin.com/f4391bd29.
Pabaiga
Pabaigus konfigūruoti, mes galime perkrauti kompiuterį arba įvykdyti šias komandas:
# /etc/init.d/cupsd restart
# /etc/init.d/samba restart
CUPS ir Samba persikraus. Dabar galite viską tikrinti ir žiūrėti.
Apibendrinant turėčiau paminėti, kad jūs galite nebūtinai viską konfigūruoti rankomis, nes yra tokių įrankių kaip SWAT (Samba Web Administration Tool – tai web interface’as skirtas patogiau administruoti Samba; taip pat jis yra Webmin dalis, bet man asmeniškai nepavyko prie jo prisijungti, tik paleisti, todėl rekomenduoju pirmiausiai išbandyti šio straipsnio turinį) ir pan.
Galutinį smb.conf failo variantą galite gauti adresu http://pastebin.com/m72efe665.
Daugiau pagalbos ir informacijos galite rasti šiais adresais:
Gentoo forums
Gentoo wiki
Atkreipkite dėmesį, kad šiek tiek pakeitus vieną konfigūracinio failo vietą, teks keisti ir kitas nuostatas.
2007 m. vasario 7 d., Pixel
Posted in Linux, Patarimai | No Comments »
Antradienis, 6 vasario, 2007
Manau, kad šis straipsnis gali būti naudingas daugeliui žmonių, nes su USB spausdintuvais (ypač HP LaserJet 1000) būna labai daug problemų Unix šeimos sistemose. Atsižvelgdamas į tai, kad USB naudoja beveik visi spausdintuvai kaip standartą ir su jais pateikiami LPT–>USB kabeliai tai rašau apie HP LaserJet 10xx USB spausdintuvų instaliavimą. Jeigu nenaudojate USB, tai spausdintuvo instaliacija skiriasi nuo mano pateikto būdo.
Pirmiausiai norėčiau užsiminti apie simbolius „$“ ir „#“ prieš komandas. „$“ simbolis rodo, kad komanda turėtų būti vykdoma paprasto vartotojo teisėmis, be sudo. „#“ rodo, kad komandą patartina naudoti root ar kito super vartotojo teisėmis. Galima pasitelkti sudo, kai norima vesti komandą, prieš kurią parašytas simbolis „#“.
Tikriausiai naudojame coldplug. Todėl pirmiausiai reikia jį pašalinti, nes naujesni UDEV (tai tam tikras įrenginių valdiklis Unix sistemose) turi savyje coldplug (programa, kuri pasirūpina, kad nauji įrenginiai (daugiausiai USB įrenginiai) būtų paruošti darbui ir įjungiami į /dev) funkcijas. Kartu dėl viso pikto pašalinsime ir hotplug (geresnis analogas coldplug‘ui), kurį vėliau sukompiliuosime iš naujo.
# emerge –unmerge hotplug coldplug
# rc-update del hotplug
# rm /etc/init.d/hotplug
# rc-update del coldplug
# rm -rd /etc/hotplug*
Norėčiau paminėti, kad -rd opcijos nurodo, kad būtų trinamos ir direktorijos. Jeigu /etc kataloge bus failas /etc/hotplug tai jis bus ištrintas kartu su katalogu /etc/hotplug.
# rm -rd /etc/udev
# emerge =sys-fs/udev-103
Pastaba. Nepamirškite lygybės ženklo prieš paketą. Jį reikia nurodyti visą laiką kai nurodote paketo versiją. Taip pat prieš kompiliuodami susinchronizuokite Portage:
# emerge --sync
Siūlau naudoti UDEV 103, nes, mano nuomone, jis žymiai stabilesnis ir dėl jo reikėjo mažiausiai vargo. O šiuo metu naujausias yra UDEV 104-r5.
# emerge hotplug
Taigi, UDEV ir hotplug’ą jau turime. Galima bandyti perkrauti sistemą.
Perkrovus sistemą galime dirbti toliau.
Susikompiliuokime CUPS (Common UNIX Printing System - spausdinimo sistema (tiksliau paketas) Unix pobūdžio operacinėms sistemoms). Tai padarome komanda
emerge cups
Aš pasirinkau 1.2.6 versiją, todėl jeigu norite visiškai sekti šį straipsnį tai veskite šią komandą:
# emerge =net-print/cups-1.2.6
# USE="foomaticdb cups usb ppds" emerge hplip
Dabar atėjo eilė foo2zjs (zjStream protokolo (protokolas, kurį naudoja HP LaserJet 10xx spausdintuvai spausdinimui) tvarkyklės Linux’ui):
$ wget -o foo2zjs.tar.gz http://foo2zjs.rkkda.com/foo2zjs.tar.gz
$ tar zxf foo2zjs.tar.gz
$ cd foo2zjs
Jeigu jau buvome suinstaliavę foo2zjs tai vykdykime:
# make uninstall
Taip išinstaliuosime jau sistemoje esančią foo2zjs versiją.
Instaliuokime foo2zjs toliau:
# make
# ./getweb [spausdintuvo modelis]
Vietoje “[spausdintuvo modelis]” įrašykite spausdintuvo modelį (foo2zjs iš HP LaserJet spausdintuvų palaiko tik 1000, 1005, 1018, 1020). Pvz.:
# ./getweb 1000
Ši komanda parsiųs HP LaserJet 1000 spausdintuvui pilnai pasiruošti darbui reikalingus failus.
# make install
# make install-hotplug
# make cups
Tai buvo paskutiniai žingsniai su foo2zjs. Dabar patikrinkime sistemos krovimąsi komanda:
# rc-update show
Ekrane turėtume išvysti teksto, kuriame turėtume surasti šias eilutes (ne iš eilės):
cupsd | defaulthotplug | boothplip | default
Jeigu viskas taip kaip ir rašau tai galime perkrauti kompiuterį.
Bet gali pasitaikyti taip, kad ne visi išvardinti komponentai buvo sąraše. Tada vykdome atitinkamas komandas:
# rc-update add cupsd default
# rc-update add hplip default
# rc-update add hotplug boot
Vykdykite tas, kurių reikia. Kitų galite nevykdyti.
Perkraukite kompiuterį. Išjunkite (ištraukite iš el. lizdo, bet USB neištraukite) spausdintuvą kokiom 5 sekundėm ir vėl jį įjunkite. Iki visiško sistemos užsikrovimo jis turėtų pasiruošti darbui, t. y. turėtų trumpam pradėti veikti visi mechanizmai. Jeigu tai neįvyko, tai pabandykite perkompiliuoti CUPS ir HPLIP, o tada jeigu niekas nepasikeitė – keliauti į straipsnio galą. O jeigu spausdintuvas pasiruošė, tai jūs galite jį suinstaliuoti per CUPS. Galite naudoti įvairius įrankius, bet aš paprasčiausiai rekomenduočiau naršyklėje suvesti localhost:631. Tada sekite instrukciją:
Add Printer–>prisijunkite kaip root vartotojas
–>užpildykite “Name” laukelį (patariu naudoti tik lotyniškas raides)
–>Device laukelyje pasirinkite savo spausdintuvą (rinkitės visiškai tikslų adresą pvz., hp:/usb/hp_LaserJet_1000?device=/dev/usb/lp0; spausdintuvas turi būti įjungtas ir jeigu jis nepasiruošė darbui tai jums nepavyks jo instaliuoti per CUPS)
–>paspauskite Continue
–>pasirinkite HP ir spauskite Continue
–>pasirinkite savo spausdintuvo tvarkyklę (šalia jos privalo būti parašyta foo2zjs) ir paspauskite Continue
–>kelias sekundes palaukite ir, kai atsidarys konfigūracijos puslapis, jame sukonfigūruokite spausdinimo parametrus
–>bet kur paspauskite Set Printer Options.
Jūs jau galite spausdinti. Tik nepamirškite kartu perkraudami kompiuterį perkrauti ir spausdintuvą. Nebent su spausdintuvu buvo nedirbta ilgą laiką. Apskritai kalbant tai yra didelis HP LJ 10xx minusas, kad firmware užkrauti (kai spausdintuvas įsijungia, jis laukia kada kompiuteris jam nusiųs tam tikras tvarkykles, kurios jį paruoš spausdinimui) galima tik vieną kartą po spausdintuvo įjungimo.
Jeigu jūsų spausdintuvas vis tiek neveikia tai siūlau pasižvalgyti klaidų /var/log/messages faile. Taip pat nepamirškite dmesg komandos (ją reikėtų susikompiliuoti komanda emerge dmesg). Taip pat nepamirškite, kad kernel’yje privaloma įkompiliuoti USB palaikymą. /usr/src/linux/.config ar kitoje direktorijoje esančio kernel'io „.config“ faile turėtų būti nurodyta šios opcijos:
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_ARCH_HAS_OHCI=y
CONFIG_USB_ARCH_HAS_EHCI=y
CONFIG_USB=y
CONFIG_USB_DEVICEFS=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_OHCI_HCD=y
CONFIG_USB_PRINTER=y
CONFIG_USB_OHCI_LITTLE_ENDIAN=y
CONFIG_USB_STORAGE=y
Pastaba: kai kurios opcijos nėra būtinos, tačiau rekomenduotinos.
Apžvelgę informaciją pagalbos galite ieškoti adresais http://forums.gentoo.org ir http://gentoo-wiki.com.
2007 m. vasario 6 d., Pixel
Posted in Linux, Patarimai | No Comments »
Ketvirtadienis, 1 vasario, 2007
TTF – TrueType Font. Tai šriftai, kuriuos naudojame Windows sistemoje. Rašau šį straipsnį, nes tikriausiai migruojantiems iš Windows į Linux OS yra gana sudėtinga priprasti prie standartinių šriftų ir labai dažnai pasitaiko tokių atvejų, kad Linux distribucijoje parašytas dokumentas nenuskaitomas taisyklingai Windows sistemoje, nes naudojami šriftai, kurių Windows sistemoje nėra (dažniausiai ne TTF).
Norint matyti TTF mums reikės:
TTF šriftų (galima paimti iš bet kurios Windows OS %system root%/Fonts katalogo);
Xfs serverio (šis serveris naudojamas šriftams);
ttmkfdir paketo (naudojamas fonts.scale failo sukūrimui);
veikiančio X’ų serverio.
Visa tai sudiegiame (X’ų diegimo šiame straipsnyje neaprašysiu):
# emerge x11-apps/ttmkfdir
# emerge x11-apps/xfs
Sukuriame direktoriją mūsų TTF šriftams (kadangi aš vėliau dėjau daugiau šriftų ir juos grupavau tai sukūriau TTF šriftams visai atskirą katalogą - /usr/local/fonts/ttf):
# mkdir /usr/local/fonts
# mkdir /usr/local/fonts/ttf
Dabar perkeliame TTF šriftus į /usr/local/fonts/ttf (šriftų perkėlimui naudojau USB raktą; jūs nurodote savo TTF šriftų direktoriją vietoje /mnt/usbkey/ttf):
# mv /mnt/usbkey/ttf/* /usr/local/fonts/ttf/
Pereiname į sukurtą šriftų direktoriją:
# cd /usr/local/fonts/ttf
Sukuriame fonts.scale failą:
# ttmkfdir > fonts.scale
Taip pat pažymime šią direktoriją kaip šriftų:
# mkfontdir
Dabar redaguosime xorg.conf failą:
# nano -w /etc/X11/xorg.conf
Jame susirandame sekciją Files ir joje pridedame naują eilutę:
FontPath "/usr/local/fonts/ttf"
„/usr/local/fonts/ttf“ galite keisti priklausomai nuo to, kur padėjote šriftus.
Dabar turime veikiančius TTF šriftus. Perkrovus X’ų serverį jis turėtų dirbti su jais.
2007 m. vasario 1 d., Pixel
Posted in Linux, Patarimai | 3 Comments »