LPIC-1 - Kaku konspekt 2011, 3. osa

From EIK wiki

JÄTKUU... LPIC-1 - Kaku konspekt 2011, 2. osa


LPI-102

X

Kolm peamist varianti:

  • XFree86 - 2004. aastani peamine Linuxi akenduskeskkond
  • X.org - 2004. aastast Linuxi peamine keskkond (XFree86 litsentsimuudatuste tõttu)
  • Accelerated-X - omandvaraline X versioon (http://www.xig.com)

XFree86 ja X.org'i erinevus - fontide asukoht ja konfifaili nimi...

NB! Edaspidi siin kasutatavad lühendid:

  • Xo - X.org
  • XF3 - XFree86 versioonid kuni 3.3.6-ni
  • XF4 - XFree86 versioonid alates 3.3.6-st


XFree86 ja X.org-i konfivahendid

X server ise - konfikäsud vastavalt:

  • XFree86 -configure
  • Xorg -configure

Selle tulemusena luuakse kas:

  • /root/XF86Config.new või
  • /root/xorg.conf.new

NB! X ei tohi töötada, vaja on tekstirežiimi!

Distrospetsiifilised vahendid:

  • system-config-display (RH)
  • yast, yast2 (Suse)

Vananenud:

  • xf86cfg
  • xorgcfg

Veel varasemaid (XF3):

  • xf86config, Xconfigurator, XF86Setup


Põhiline konf:

  • X.org - fail xorg.conf; enamasti /etc/X11 all, aga võib olla ka /etc vmm kohas
  • XFree86 v4 - XF86Config-4 või ka XF86Config, /etc/X11 või /etc
  • XFree86 v3 - XF86Config, /etc/X11 või /etc

Konfifail on kõigil sama ülesehitusega ja koosneb sektsioonidest. N klaveri sektsioon:

Section "InputDevice"
	Identifier "Keyboard0"
	Driver "kbd"
	Option "XkbModel" "pc105"
	Option "XkbLayout" "et"
	Option "AutoRepeat" "500 200"
EndSection

Üldiselt suht sarnane kõigil. XF3-s ei ole:

  • Option-klauslit - selle asemel on vastavad väärtused esimeses positsioonis (AutoRepeat "500 200")
  • ServerLayout-sektsiooni
  • Identifier- ja Driver- klausleid

X-i parandamistsükkel:

  1. Reeglina ei saa torkida töötavat X-i. Aitab telinit 3 (RH) või /etc/init.d/gdm stop (Debian ja lapsed)
  2. Teha muudatused
  3. Lasta X prooviks käima startx-käsuga. Kui korras, siis telinit 5 või /etc/init.d/gdm start

Protsessi "tapmine": Ctrl-Alt-Bksp või grep-kill:

# ps ax | grep X
	1375 ? S 6:32 /etc/X11/X -auth /etc/X11/xdm/authdir/
# kill 1375

X-i torkimisel tasub fokuseerida tähelepanu ükshaaval eri seadmetele ja vastavatele konfi sektsioonidele.

NB! sektsioonide järjekord ei loe!!!

Tüüpilised sektsioonid XF4 ja Xo puhul:

  • Module
  • InputDevice
  • Monitor
  • Device
  • Screen
  • ServerLayout

NB! XF4 ja Xo kasutavad hiire ja klaveri jaoks kaht InputDevice-sektsiooni, XF3 kasutas hiire jaoks Pointer-sektsiooni


Module - riistvaradraiverid (kernelimoodulid)
Section “Module”
	Load “dbe”
	Load “extmod”
	Load “fbdevhw”
	Load “glx”    # 3D
	Load “record”
	Load “freetype” # TrueType fonts
	Load “type1”  # Adobe Type 1 fonts
	Load “dri”	# 3D
EndSection

Üldiselt ei tasu mooduleid eriti torkida (ainus selge juhus on 3D töölesaamine!)

InputDevice 1 - klaviatuur
Section “InputDevice”
	Identifier “Keyboard0”  # tegelikult ei oma identifikaatori kuju otsest tähendust - sisuliselt 1. klaviatuur
	Driver “kbd”
	Option 	“XkbModel” “pc105”
	Option “XkbLayout” “et”
	Option “AutoRepeat” “500 200” # klahvikordusmehhanism rakendub 500 ms (0,5sek) pärast ja järgnevad kordused 200ms intervalliga (5x sekundis)
EndSection

NB! Kordustegurit tasub muuta siiski kasutajalähedasemate vahenditega (nagu Accessibility)


InputDevice 2 - hiir
Section “InputDevice”
	Identifier “Mouse0”
	Driver “mouse”
	Option “Protocol” “IMPS/2”
	Option “Device” “/dev/input/mice”
	Option “Emulate3Buttons” “no”  # kas keskmist hiirenuppu saab asendada kahe nupu koosklõpsuga
	Option “ZAxisMapping” “4 5”   # 4. ja 5. nupp - sisuliselt tähendavad hiireratta kerimist üles ja alla!
EndSection

Tähtis - Device võib olla:

  • /dev/input/mice
  • /dev/mouse # enamasti sümlink
  • /dev/psaux # PS2 hiir
  • /dev/usb/usbmouse # vanad USB hiired
  • /dev/ttyS0 # vanaaegne jadapordihiir
  • /dev/ttyS1 # sama teises pordis

Tähtis - Protocol võib olla:

  • IMPS/2 # tänapäeval levinud - enamik rattaga hiiri
  • ExplorerPS/2 # see ka - NB! PS/2 võib tähistada nii riist- kui tarkvaraprotokolli, viimast kasutavad ka paljud USB-hiired!)
  • PS/2 # vanem PS/2
  • Microsoft
  • Logitech
  • Auto # X üritab ise protokolli ära arvata, enamasti edukalt!


Monitor - kuvar
Section “Monitor”
	Identifier “Monitor0”
	ModelName “VisionMaster Pro 450”
	HorizSync 27.0-115.0    # kilohertsides!
	VertRefresh 50.0-160.0	# hertsides!
	# kohandatud graafikarežiim 1360x1024
	Modeline “1360x1024” 197.8 1360 1370 1480 1752 1024 1031 1046 1072 -HSync -VSync
EndSection

Identifier ja ModelName eriti ei loe - sync ja refresh on aga väga olulised, määrates reso ja refresh rate'i.

Mõned utiliidid võimaldavad valida väärtused (N: 1024x768@75) ja arvutavad siis vastavad väärtused, kuid käsitsi saab täpsemini (vaata manuaalist!).

Vanad monitorid võivad katki minna, uued suudavad liiga kõrgeid väärtusi eirata!

Modeline on keerukas väärtustekomplekt, niisama torkida ei maksa. XF3 ja varem pani igaks juhuks hirmsa hunniku monitore nõnda kirja

XF4 ja Xo kasutavad Data Display Channelit (DDC), mis võimaldavad -configure käsuga Modeline'i arvutada (monitor teatab ise vastavad väärtused). Seetõttu on konfifailid enamasti märksa lühemad.


Device - videokaart
Section “Device”
	Identifier “Videocard0”
	Driver “nv”
	VendorName “nVidia”
	BoardName “GeForce 6100”
	VideoRam 131072 # kilobaitides => 128MB 
EndSection

Draiverid asuvad kataloogis /usr/X11R6/lib/modules/drivers/ , enamikul on nime järel _drv.o (N: nv_drv.o). Identifier, VendorName ja BoardName on jällegi lugeja jaoks. VideoRam pole enamasti vajalik, harva peab määrama.


Screen - video lahutusvõime ja värvigamma
Section “Screen”
	Identifier “Screen0”
	Device “Videocard0”
	Monitor “Monitor0”
	DefaultDepth 24
	SubSection “Display”
		Depth 24
		Modes “1024x768” “1024x600” “800x600” “640x480”
	EndSubSection
	SubSection “Display”
		Depth 8
		Modes “1024x768” “800x600” “640x480”
	EndSubSection
EndSection

Kaks võimalikku komplekti, vaikimisi väärtuse määrab DefaultDepth (XF3-s oli DefaultColorDepth).

Vajatava põhimälu valem: R = xres × yres × bpp ÷ 8,388,608

N: R = 1280 × 1024 × 24 ÷ 8,388,608 = 3.75MB


ServerLayout - koondinfo
Section “ServerLayout”
	Identifier “single head configuration”
	Screen “Screen0” 0 0
	InputDevice “Mouse0” “CorePointer”
	InputDevice “Keyboard0” “CoreKeyboard”
EndSection


xdpyinfo - pikk joru tehnilist infot monitor jõudluse kohta. Vaikimisi kuvab kõik laiendused, täpsustamiseks xdpyinfo -ext laiendus

xwininfo - info mingi akna kohta (tuleb klõpsata). Parameetrid:

  • -id id, -name name - akna ID või nime järgi
  • -root - juuraken (töölaud)

Kirjastiilid

Tuumstiilid saab kirjutada X-i konfi, vahepeal (XF3 aja lõpus) kasutati ka X-ist sõltumatut fondiserverit (tänaseks teeb jälle põhitöö ära X).

Põhiliigid:

  • rasterkirjastiilid (bitmap) - hulk piksleid sees-väljas. Miinusena on vajadus optimeerida konkreetsele resole ja erinev suurus eri resodega (kuvar vs printer). Eri suuruste jaoks on eri failid (vältimaks skaleerimise vajadust)
  • skaleeruvad (scalable) e. joonkirjastiilid (outline) - koosneb maatriksise paigutatud sirg- ja kõverjoontest. Parem skaleeruvus, aga mitte universaalne, samuti vajab rohkem prosejõudu

Joonkirjastiilide põhitüübid:

  • Adobe Postscript Type 1 (harilikult lihtsalt Type 1)
  • Apple TrueType - uuem, XF3 ei toetanud (sai lisada fondiserveri abil)


Tuumstiilid - need, mida haldab X ise. Asukohad:

  • XFree86 (traditsiooniliselt) - /usr/X11R6/lib/X11/fonts/
  • X.org-X11 - /usr/share/fonts või /usr/share/X11/fonts

Väliseid stiile võib panna ka mujale, näiteks /opt/fonts või /usr/local/fonts alla.

Installifailid:

  • Type 1 - .pfa või .pfb
  • TrueType - .ttf

Windowsi, OS2 ja paljude muude süsteemide stiile saab Linuxis otse kasutada, Maci "suitcase"-konteinereid ei saa. Teisendamiseks on rida utiliite (näiteks FontForge)

Peale fondifailide kopeerimist vastavasse kataloogi tuleb sinna luua paar vajalikku faili. Lihtsam on teha seda käskudega

  • mkfontscale - loob fonts.scale faili, toetab mõlemat tüüpi (T1 jaoks on ka type1inst ja TTF jaoks ttmkfdir)
  • mkfontdir - loob fonts.dir -faili

Seejärel tuleb luua X-i konfifaili vastav sektsioon:

Section “Files”
	FontPath “/usr/share/fonts/100dpi:unscaled”
	FontPath “/usr/share/fonts/Type1”
	FontPath “/usr/share/fonts/truetype”
	FontPath “/usr/share/fonts/URW”
	FontPath “/usr/share/fonts/Speedo”
	FontPath “/usr/share/fonts/100dpi”
EndSection

NB! Järjekord loeb - kui sama stiil esineb mitmes kohas, kasutatakse eespool olevat!

unscaled lubab rasterfonte kasutada vaid siis, kui nende suurus klapib

Testimiseks on lihtsaim võimalus X-i restart. Võib aga ka proovida:

  • $ xset fp+ fondikataloog
  • $ xset fp rehash

fp+ lisab nimekirja lõppu, +fp algusse!


Fondiserver - otseselt pole enam vajalik, aga sobib tsentraalseks kirjastiilijaotuseks paljudele masinatele:

Section “Files”
	FontPath “unix:/7100”  		# kohalik fondiserver - võib olla ka kujul "unix:/~1"
	FontPath “tcp/fount.pangaea.edu:7100”  # eemalasuv fondiserver
EndSection


Fondifailid paigaldatakse samamoodi kui eespool, serveri konf asub /etc/X11/fs/config -failis.

catalogue = /usr/share/fonts/100dpi:unscaled,
/usr/share/fonts/Type1,
/usr/share/fonts/truetype,
/usr/share/fonts/URW,
/usr/share/fonts/Speedo,
/usr/share/fonts/100dpi

NB! Eraldatakse komadega!!

Testimine: etc/init.d/xfs restart ja ka X-i taaskäivitus (või rehash, vt eespool).


Tänapäevane viis - Xft

X-i tuumfontidel ja fondiserveril on samad probleemid:

  • raske ühildada kuvari- ja printerikuju
  • serveripõhisus: failid võivad asuda füüsiliselt mujal (võib tekkida jama printimise korraldamisega)
  • Vähe tuge uuematele tüpograafiavõtetele (eeskätt printimisprobleem)
  • ei toeta silumist (antialiast) ehk hallide pikslite kasutamist lisaks valgetele ja mustadele


Xft põhineb FreeType -teegil ja on tänastes Linuxites teine kasutatav süsteem X-i tuumfontide kõrval.

Saab kasutada eelnevate süsteemide fondikatalooge - vt failis /etc/fonts/local.conf read <dir>/font/directory</dir>

Pärast muudatusi tuleb anda käsk fc-cache - idee poolest sarnane mkfontdir jms-ga


Graafiline sisselogimine

X Display Manager Control Protocol (XDMCP) - haldab nii eemalt kui kohalikke sisselogimisi

Kolm peamist XDMCP serverit: XDM, GDM, KDM

XDMCP serveri käivitab init-protsess, kas /etc/inittab'i või mõne selle alamfaili või siis SysV startup-skriptide abil

Enamasti ongi runlevel 3 ja 5 vahe ainult XDMCP serveri käivitamises

Vaikimisi runlevel inittab'is: rida id:5:initdefault:

Debiani perekond ja Gentoo aga ei kasuta runleveleid (kõigil tasemetel kas käivitatakse XDMCP või ei käivitata), vaid SysV skripte.

Ajutine käivitamine/peatamine - xdm/kdm/gdm start/stop. Püsivamalt aga tuleb redigeerida /etc/init.d/ all vastavaid skripte


XDM

kõige lihtsam, võimaldab sisse logida, kuid mitte keskkonda valida (seda tuleb teha login-failide abil)! konf /etc/X11/xdm/xdm-config. NB! Vaikimisi on remote login keelatud - DisplayManager.requestPort: 0 . Lubamiseks tuleb panna 0 asemele 177 (traditsioooniline XDMCP port).

Kui remote login on lubatud, tuleb konfida /etc/X11/xdm/Xaccess -fail. Vaikimisi on kõik lahti:

*			&& Igaüks võib ühenduda
* CHOOSER BROADCAST	&& igaüks võib valida kohaliku süsteemi, millega ühenduda
*.pangaea.edu 		&& kogu domeen võib ühenduda
tux.example.com		&& võib ühenduda (aga mitte süsteemi valida, vt järgmist)
*.pangaea.edu CHOOSER BROADCAST &&  võib valida kohaliku süsteemi

Veel valikuid on failis /etc/X11/xdm/Xresources (näiteks saab määrata tervitusteksti)


KDM

Baseerub XDM-il, mitmed konfivariandid on samad. Probleem on konfifaili ebastabiilne asukoht eri süsteemides - /etc/X11/kdm, /etc/kde/kdm, /usr/share/kde4/config/kdm/kdmrc (otsinguvahendid abiks). Võimaldab valida ka sessiooni. Tihti ka täiendav konfifail kdmrc. Remote login tuleb eraldi lubada (enable=yes).


GDM

Sarnaneb XDM-iga vähem kui KDM, ei kasuta sama tüüpi konfi. Põhikonf enamasti /etc/X11/gdm -kataloogis, peamine fail gdm.conf. Nagu KDM-i puhul tuleb remote login eraldi lubada (enable=yes), Konfikäsk gdmconfig (root-tase). Võimaldab sessiooni valikut ja ka arvuti sulgemist. Erinevus: esmalt küsib kasutajanime ja alles siis parooli (XDM ja KDM näitavad mõlemat välja koos).


X-i kaugligipääs

X on klient-server süsteem - ekraanipilti võib saata teise arvutisse või jooksutada X-i rakendusi eemalt. Tavaolukorras töötavad X-i server ja klient samas masinas - klientideks on rakendused nagu Evolution, OO.o, gnome-terminal, Firefox jt. Kaugligipääsu korral töötab X-i server kasutaja arvutis, rakendused aga eemalolevas masinas. Mõnevõrra sobib paralleel veebilehitsejaga (tarkvara enda arvutis, veebilehed mujal - X-i server täidab siin veebiserveri rolli).


VEEBISERVER  <=======>	X-i KLIENT JA VEEBIKLIENT 	<========>	X-i SERVER

Majutab veebilehti	Käitab kasutaja tarkvara		Näitab pilti ja võtab vastu sisendit (klaver, hiir)

Harilikult vastab X vaikimisi ainult kohalikele pöördumistele (turvakaalutlus). Väljast ligipääs tuleb eraldi konfida, aga turvalisust tuleb jälgida.


Näide: karu on server, kass on klient (aga hea kuvari ja klaveriga, parem töökeskkond).

  1. Logida kassi ja käivitada X (kui juba ei tööta)
  2. Avada terminal
  3. Terminalist käsk xhost +karu . Annab õiguse kasutada kassi karu terminalina, s.t. kass lubab kuvada karult tulevat infot ekraanil
  4. logida kassist karusse (SSH, telnet)
  5. karus anda käsk export DISPLAY=kass:0.0 (bashi puhul; tcsh puhul setenv export'i asemel). Karu saadab nüüd ekraanipildi kassi.
  6. käivitada vajalik programm, nt Firefox. Firefox jookseb karus, aga pilt ja juhtimine toimub kassist.
  7. Peale töö lõppu programmid kinni, karust logout ja kassi terminalis käsk xhost -karu.


Variant on kasutada kogu ühenduse jaoks SSH tunnelit - aeglasem, aga turvalisem. Tuleb kas

  1. kasutada ssh-ga karusse logimisel -X võtit või
  2. lisada kliendi faili /etc/ssh_config säte ForwardX11=yes

Lisaks peab olema serveri /etc/ssd_config -is X11Forwarding=yes !!

Enamasti on tänapäeva distrodes ka X-i konfist võrguühendused maha keeratud. Sisselülitamiseks:

  • GDM vanemad versioonid: /etc/X11/gdm/gdm.conf, DisallowTCP false'iks
  • GDM uuemad: /etc/gdm/gdm.schemas:
   <schema>
      <key>security/DisallowTCP</key>
      <signature>b</signature>
      <default>true</default>  && false'iks
    </schema>
  • XDM: /etc/X11/xdm/XServers: :0-ga algaval real võtta lõpust ära -nolisten tcp
  • KDM: /etc/X11/kdm/XServers, sama

OpenSUSE on erijuht: failis /etc/sysconfig/displaymanager panna DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN väärtuseks "yes".

Kui X käivitatakse startx-iga tekstirežiimist, tuleks muuta startx-skripti (/usr/bin/ ja võtta -nolisten tcp maha

Peale seda kõike tuleb X taaskäivitada. Veel üks võimalus X-i rakendusi eemalt käivitada on VNC.


X-i ligipääsetavus

Mitmed asjad klaveri ja hiire sätete all. Debounce keys - väldib mitut tahtmatut vajutust järjest


GOK, fonts, kontrastse teema valimine, ekraaniluup (gnome-magnifier/Orca, KMag)

Kõne: Orca, Emacspeak

BRLTTY: tekstirežiimis töötab üsna otse. z


Lokaliseerimine

/etc/localtime - väga väheseid konfis kasutatavaid mitte-tekstifaile. Vahel on sümlink /usr/share/zoneinfo vastavale failile, vahel on see kopeeritud sealt ära.

date-käsk:

kakk@aragorn:~$ date
E apr   18 01:09:49 EEST 2011

Ajavööndid vt http://www.timeanddate.com/library/abbreviations/timezones/

Muutmiseks tuleb linkida või kopeerida /etc/localtime asemele näiteks /usr/share/zoneinfo/Europe/Tallinn


Lisaks kasutatakse ka ajavööndifaili:

  • /etc/timezone - Debian ja sugulased
  • /etc/sysconfig/clock - Red Hat ja sugulased

Mõnes distros ka utiliidid nagu tzsetup, tzselect, tzconfig (Ubuntus on viimane ebasoovitav, teine võimaldab vööndit valida).


Locale ehk riigiinfo

Üldkuju: [language[_territory][.codeset][@modifier]]

Kodeeringud:

  • ASCII 7bit (enamasti 8-bitiste baitidena)
  • ISO 8859 (kasutab 8 bitti tähestiku laiendamiseks 128 märgini), regionaalsed alamtähestikud
  • Unicode/UTF-8 - ASCII + 0-3 lisabaiti


locale-käsk:

kakk@aragorn:~$ locale
LANG=et_EE.UTF-8
LANGUAGE=et_EE:en
LC_CTYPE="et_EE.UTF-8"
LC_NUMERIC="et_EE.UTF-8"
LC_TIME="et_EE.UTF-8"
LC_COLLATE="et_EE.UTF-8"
LC_MONETARY="et_EE.UTF-8"
LC_MESSAGES="et_EE.UTF-8"
LC_PAPER="et_EE.UTF-8"
LC_NAME="et_EE.UTF-8"
LC_ADDRESS="et_EE.UTF-8"
LC_TELEPHONE="et_EE.UTF-8"
LC_MEASUREMENT="et_EE.UTF-8"
LC_IDENTIFICATION="et_EE.UTF-8"
LC_ALL=
kakk@aragorn:~$ 

locale -a näitab kõiki süsteemis olemasolevaid

Ajutine muutmine:

  • $ export LANG=en_GB.UTF-8
  • $ export LC_ALL=en_GB.UTF-8

Püsivalt tasub panna ~/.bashrc või /etc/profile -faili.


X-i konfis on XkbLayout-parameeter - sinna käib sisuliselt seesama locale

LANG=C - eirab locale'sid

iconv - tõlgib kooditabelite vahel:

  • iconv -f encoding [-t encoding] [inputfile]...
  • iconv --list näitab kõiki

N: $ iconv -f iso-8859-1 -t UTF-8 umlautfile.txt > umlautfile-utf8.txt

Printimine

Üldine süsteem: rakendus väljastab PostScripti, see saadetakse GhostScripti abil printerile. Printerijärjekorda haldab enamasti CUPS. Alternatiivid

  • LPD
  • LPRng

Käsud suht samad, printeri konfimine aga erinev

Üldine printerikäsk - lpr (võib kasutada ka rakendustes). Printerijärjekord asub tüüpiliselt kataloogis /var/spool/cups

Unixi/Linuxi printimine on võrgupõhine, printimistöid võib saata nii eemalt kui kohalikust masinast. CUPS on muidu serverirakendus, kuid printimistööde mujale saatmisel töötab ka kliendina.

Printeridraiverid kuuluvad GhostScripti koosseisu. Windowsis suhtleb rakendus otse draiveriga, Unixis tehakse PS ja saadetakse printerijärjekorda.

Kallimad printerid suudavad otse PSi vastu võtta, odavamatel on vaja GhostScripti tõlgiks vahele - võtab PS-i, interpreteerib seda ja väljastab tulemuse vastavale printerile sobiva bitmapina. GS peamine miinus on väljundfaili suur maht

Kiire printimise jaoks tuleb valida PS-i toetav printer (keeruline värviliste tindikate osas - mõnel on peal PSi Windowsi analoogid, mille tarkvaraga aga pole Linuxis midagi teha).

Ilma PS toeta printeri puhul saadetakse töö printerijärjekorda, kus tark filter (smart filter) näeb seda ja laseb enne printerisse saatmist läbi GS-i.

Printeriprotsessid käivitatakse reeglina buudiprotsessis (/etc/rc.d, /etc/init.d või /etc/rc?.d kaudu - ? on vastav runlevel).


CUPS

etc/cups/printers.conf - printerite fail:

# Printer configuration file for CUPS v1.4.4
# Written by cupsd
# DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING
<DefaultPrinter HP-LaserJet-1320>
Info ITK printer
Location 221 koridoris
MakeModel HP LaserJet 1320 series Postscript (recommended)
DeviceURI hp:/net/hp_LaserJet_1320_series?ip=192.168.2.63
State Idle
StateTime 1301394578
Type 8425540
Filter application/vnd.cups-raw 0 -
Filter application/vnd.cups-command 0 commandtops
Filter application/vnd.cups-postscript 0 -
Accepting Yes
Shared Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy retry-job 
</Printer>

Täiendavad printeridefinitsioonidega failid asuvad /etc/cups/ppd -kataloogis!

CUPSi võrguprintimise protokoll: IPP (Internet Printing Protocol)

CUPSi enda konf: /etc/cups/cupsd.conf. Sarnaneb ülesehituselt Apache'i konfiga:

<Location /printers>
	Order Deny,Allow 			&& vaikimisi keelatud, ekstra lubamine
	Deny from All				&& vaikimisi kõik kinni
	BrowseAllow from 127.0.0.1		&& lubame konkreetseid asju...
	BrowseAllow from 192.168.1.0/24
	BrowseAllow from @LOCAL
	Allow from 127.0.0.1
	Allow from 192.168.1.0/24
	Allow from @LOCAL
</Location>

Browsing On - printerite autdetect võrgus, kasulik suurte, kiirelt muutuvate printeritega võrgu korral

Printeridefinitsioone saab distrost endast, Foomaticust, Gutenprintist, CUPSi DDK-st ja vahel ka printeritootjatelt

CUPSi IPP-protokoll on nii sarnane HTTP-ga, et sinna saab ligi veebilehitsejaga: http://localhost:631

CUPSi häälestamisel peavad USB printerid olema ühendatud ja töötama! Kui ei, tuleb panna tööle ja CUPS taaskäivitada

Võrguprinteri korral võib minna vaja asukohta: lpd://printserv/brother (protokoll, arvuti, printer)

CUPSi ei tohiks üle võrgu häälestada - ühendus on krüptimata!!


Võrguprinterid

Samba:

Üldkuju: smb://username:password@SERVER/SHARE

vrdl EIK ketaste ühendamisega:

zerblat/Avalik$    /media/itk_avalik   cifs  credentials=/root/.smbcredentials,iocharset=utf8,file_mode=0777,dir_mode=0777  0  0
//zerblat/kaido$    /media/itk_kodu   cifs  credentials=/root/.smbcredentials,iocharset=utf8,file_mode=0777,dir_mode=0777  0  0

LPD: lpd://hostname/queue IPP: ipp://hostname/queue

Võimaluse korral protokollide eelistusjärjekord: IPP, LPD, SMB/CIFS


Printerijärjekorra haldamine

Käsud: lpr, lpq, lprm ja lpc. Kõigile saab lisada -P parameetri konkreetse järjekorra määramiseks (kui on mitu)


lpr:

  • -Pqueue (NB! vanades süsteemides ei tohi tühikut vahel olla!) - järjekord
  • -r - kustutab algse faili peale printimist
  • -h - ei lisa trükipäist
  • -j, -C, -T jobname - konkreetse töö valimine printerijärjekorrast
  • -m username - saadab peale printimist kasutajale e-kirja
  • -# nr - koopiate arv

N: $ lpr -Plexmark -m ljones report.txt && report läheb lexmarki järjekorda, peale printimist saab ljones meili.

mpage - mitu lehte vähendatuna samale paberile. N: $ mpage -Plexmark report.ps. Võib määrata ka lehtede arvu, -1, -2, -4, -8


lpq - järjekorra vaatamine

$ lpq -Php4000
hp4000 is ready and printing
Rank	Owner	Job	File(s)
active rodsmit 1630	file:///
Total Size 90112 bytes

lprm - töö eemaldamine:

  • lprm nr - vastava numbriga (vt eelmist!) töö eemaldamine
  • lprm - - kõik selle kasutaja tööd

lpc - juhtimiskäsk, kuid selle asemel soovitatakse kasutada CUPSi veebiliidest


JÄTKUU... LPIC-1 - Kaku konspekt 2011, 4. osa