Kære gæst, velkommen til Tweak.dk. Hvis dette er dit første besøg her, bør du læse Hjælp. Her forklares i detaljer hvordan denne side fungerer. For at benytte alle funktionerne på denne side, bør du overveje at lade dig registrere. Benyt venligst registreringsformularen for at registrere her eller læs yderligere information om registreringsprocessen. Hvis du allerede er registreret, så log på her.

1

lørdag, 19. juli 2008, 11:53


Dette kapitel af guiden beskæftiger sig med diverse tips og tricks til Gentoo. Tips og tricks der kan hælpe dig med at få det bedste ud af systemet. Husk på at jeg ikke kan drages til ansvar for amatøragtige handlinger det får jeres filer til at forsvinde eller eres systemer til at futte af.

Forkortelse af emerge kommandoer

Ved at køre kommandoen emerge --help kan man få en liste over mulige kommandoer, men jeg vil give en lille kort liste over kommandoer og parametre der kan bruges i hverdagen.

emerge -avt pakkenavn giver en liste over hvilke pakker der skal installeres og hvilke USE flag der skal sættes for programmet. Pakkenavn udskiftes med navnet på pakken

emerge -uD world opdaterer alle pakker på systemet der opdateres kan. Det anbefales at køre denne efter en ugentlig eller månedlig emerge --sync, så man har alle de nyeste pakker.

emerge -uDN world opdaterer alle pakker og gør dem i stand til at bruge nye USE flag som man har sat. Samme kommando bruges med det samme efter at man har sat USE flag til at recompile pakker til at bruge nye flag.

Brug af grafikkort RAM som swap eller RAM drev

Alle grafikkort har i dag mindst 64 MB RAM og en forholdsvis hurtig GPU. et typisk grafikkort har i omegnen af 128-512 MB RAM. Problemet er bare at man ikke kan udnytte det i fx. en server eller til andre formål hvor grafik ikke spiller den store rolle. Noget man kan i Gentoo, er at man kan bruge grafikkortets hurtige RAM (typisk ned til 1ns, hvor en harddisk er på min. 50-75 ns læsetid)

For at man kan bruge grafikkortets RAM som swap eller som RAMdisk, skal man helst køre med vesa driveren eller med open source driveren, da man kan bestemme hvor meget RAM på grafikkortet de skal styre. Dette kan man ikke med producenternes egne grafikkortdrivere, og filer, samt system kan gå i stykker hvis man gør dette med producenternes drivere.

For at kunne bruge det ekstra RAM på grafikkortet og andre kort, skal det kunne styres af kernen. kernel 2.6 leverer hvad vi har brug for: Memory Technology Device (MTD). Gå ind i kernens menuconfig (Hvis de forrige guider er blevet fulgt, vil i vide det nu. enten make menuconfig eller genkernel --menuconfig all):

Citeret


Device Drivers --->
....Memory Technology Devices (MTD)--->
........Memory Technology Device (MTD) support
......... [*] eller [M] Direct char device access to MTD devices
......... [*] eller [M] Caching block device access to MTD devices
..........Self-contained MTD device drivers --->
..............[*] eller [M] Uncached system RAM
..............[*] eller [M] Physical system RAM


Du kan både kompilere dem som moduler eller som indbyggede drivere, det virker uanset hvad.

Herefter skam vi finde grafikkortets RAM, det nemmeste er at bruge lspci:

Citeret

lspci -vvv


Hvorefter vi får en masse output (min laptop som eksempel):

Kildekode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
...
01:00.0 VGA compatible controller: ATI Technologies Inc Unknown device 9581 (prog-if 00 [VGA controller])
	Subsystem: ASUSTeK Computer Inc. Unknown device 1562
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0, Cache Line Size: 64 bytes
	Interrupt: pin A routed to IRQ 20
	Region 0: Memory at c0000000 (32-bit, prefetchable) [size=512M]
	Region 1: I/O ports at c000 [size=256]
	Region 2: Memory at fdff0000 (32-bit, non-prefetchable) [size=64K]
	Expansion ROM at fdfc0000 [disabled] [size=128K]
	Capabilities: [50] Power Management version 3
		Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
		Status: D0 PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [58] Express (v1) Legacy Endpoint, MSI 00
		DevCap:	MaxPayload 128 bytes, PhantFunc 0, Latency L0s <4us, L1 unlimited
			ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
		DevCtl:	Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
			RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+
			MaxPayload 128 bytes, MaxReadReq 128 bytes
		DevSta:	CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
		LnkCap:	Port #0, Speed 2.5GT/s, Width x16, ASPM L0s L1, Latency L0 <64ns, L1 <1us
			ClockPM- Suprise- LLActRep- BwNot-
		LnkCtl:	ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+
			ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
		LnkSta:	Speed 2.5GT/s, Width x16, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
	Capabilities: [a0] Message Signalled Interrupts: Mask- 64bit+ Queue=0/0 Enable-
		Address: 0000000000000000  Data: 0000
	Kernel driver in use: fglrx_pci
	Kernel modules: fglrx
...


Den vi skal holde øje med er Region 0. Begyndelsen af hukommelsesområdet er 0xc0000000, en 32 bit hex-værdi (x86_64 udgaven viser det måske som en 64-bit hexadecimalværdi, jeg ved det ikke og har ikke prøvet, men sig til hvis den gør)

For at kunne bruge denne hukommelse skal man fortælle MTD driveren hvor den starter og slutter. Det er nemt at udregne slutadressen, man skal bare vide hvor meget RAM man vil tage af. Men husk at det er en god idé at lade noget RAM være til selve grafikchippen også for at kunne gøre brug af GPUens basale funktioner.

Start af SLRAM modulet hvis man har kompileret SLRAM (Uncached system RAM) som modul:

Kildekode

1
2
3
# Region 0 starter ved 0xc0000000, lad 12 MB RAM ligge (så har vi 500MB til swap eller RAMdrev). Brug derefter en #lommeregner til at udregne 12*1024*1024 og konvertér denne værdi til hex (som er 0x00c00000 i 32-bit hex). Dette #betyder at 0xc0c00000 er startpositionen. Den tredje parameter har et plus foran fordi det IKKE markerer #slutpositionen, men derimod et offset. Denne skal i dette tilfælde svare til 500MB i 32-bit hex. (som er 0x1F400000)

modprobe slram map=VRAM,0xc0c00000,+0x1f400000


Start af PHRAM (Physical System RAM)modulet:

Kildekode

1
2
3
4
5
6
7
8
9
#At loade med PHRAM modulet er meget i stil med at loade med SLRAM modulet udover at det bruger en #længdeparameter i stedet for et offset.
# Loading with PHRAM module is very similar to SLRAM module, except that it uses a "length"
# parameter by default rather than an "end offset".

# Dette gør det samme som SLRAM modulet ovenfor
modprobe phram phram=VRAM,0xc0c00000,0xc00000

# Igen det samme, bare nemmere at læse
modprobe phram phram=VRAM,0xc0c00000,500Mi


eller hvis SLRAM modulet er bygget ind i kernel skal dette ind i kernel command line:

Kildekode

1
2
3
4
5
# mtd0 er enheden der skal mappes (hvis grafikkortet er det første kort der blev konfigureret er denne mtd0) 
# De andre parametre viser det samme som dem ovenfor, startadresse og offset.
# Computeren skal genstartes for at man kan bruge den nye hukommelse

slram=mtd0,0xc0c00000,+0x1f400000


Man burde så med dmesg kunne se:

Kildekode

1
2
3
4
5
slram: devname = mtd0
slram: devstart = 0xc0c00000
slram: devlength = +0x1f400000
slram: devname=mtd0, devstart=0xc0c00000, devlength=0x1f400000
# derefter kommer informationer om i hvilke RAM områder mtd0 ligger i og om at mtd0 er registreret.


Desuden kan man tjekke /proc/mtd for at se om denne har fundet mtd enheden.

Når du så har understøttelse på plads i kernen og har fået alle data, så skal du have adgang til hukommelsen. Det er tid til at lave enhederne. Hvis du har udev, skal du bare modprobe mtdchar og mtdblock (alm. Gentoo indeholder udev) og hald vil lave drivere automatisk.

Kildekode

1
2
3
4
5
6
7
8
9
#Opret character enheden. MTD vil bruge og allokere denne så den ikke bruges af almindelige programmer. Den er #vital for at MTD skal kunne fungere
#Hvis Direct Character Device access to MTD devices er blevet kompileret som et modul, skal man først køre modprobe: #modprobe mtdchar

mknod /dev/mtd0 c 90 0


#Opret block enheden. Denne vil blive brugt og behøver "Caching block device access to MTD devices". Hvis denne er #kompileret som et modul skal man først køre modprobe mtdblock

mknod /dev/mtdblock0 b 31 0


Herefter kan vi så bestemme om grafikkortets RAM skal bruges som RAMdisk eller som swaphukommelse. Ligemeget hvad skal der oprettes et filsystem

For at oprette swaphukommelse:

Citeret


mkswap /dev/mtdblock0
swapon /dev/mtdblock0


Dette vil oprette swapstrukturen i grafikkortets RAM og aktivere det som swaphukommelse som systemet kan bruge. For at sætte en prioritet (hvilken swapkilde der skal bruges først) kan man bruge swapons parameter -p X hvor X er et tal mellem 0 og 32767, jo højere tallet er, jo højere ligger grafikkortets hukommelse på listen

Citeret

swapon /dev/mtdblock0 -p 10

Hvis ikke der specificeres en prioritet, så vil den næstlaveste prioritet blive brugt. Desuden kan MTD området lægges i /etc/fstab så man ikke skal oprette enheden efter boot.

Kildekode

1
2
# <fs>                          <mountpoint>    <type>          <opts>                  <dump/pass>
/dev/mtdblock0                  none            swap            sw,pri=10

i options feltet svarer pri=10 til swapons -p parameter.

Det kan godt være fedt at have hurtig swaphukommelse eller en hurtig RAMdisk på din computer, men husk at hvis enten NVidias eller ATIs egne drivere bliver startet op med X, så kan det få systemet til at fryse eller lave grafikfejl. Der er ingen måder at fortælle disse drivere hvor meget af grafikkortets hukommelse må bruge. (de vil styre hele grafikkortets hukommelse). Dog er VESA driveren god, da den giver mulighed for at fastsætte antal RAM på grafikkortet.
Det betyder at det enten er DRI og 3D effekter eller hurtig swap.

I modsætning til alm. RAM og harddiske, så er der ingen grafikkort der har ECC RAM. Dette betyder måske ikke det store når der skal tegnes grafik, men det er en dum idé at lægge vigtige data på, eller at bruge det til andet end compiling på servere.

Dette indlæg er blevet redigeret 1 gange, senest redigeret af "Foxx" (19.07.2008, 11:55)


2

mandag, 9. februar 2009, 23:26


Huskeregler med RAID

Hvis man har en server eller bare en hardware RAID controller, så kan man stort set sætte det hele op som det passer en, ligesom med Windows XP. Normalt har Gentoo et drivermodul til din controller medmindre dit hardware er nyt og sygt. Langt de fleste servercontrollere sørger for at dine diske bliver sat op og gjort klar til dagens dont.

Derimod vil du få et problem hvis du vil bruge software RAID i forbindelse med Gentoo, især fordi du kan risikere at GRUB vil brokke sig. /boot må ALDRIG ligge på en software-RAID0 partition, da GRUB på ingen måde understøtter dette. Grub må gerne ligge på en software-RAID1 partition, da alle data stadig hænger sammen her.
Giv endelig lyd fra dig hvis du ved om LILO understøtter software-RAID0, jeg aner det ikke


3

fredag, 27. marts 2009, 12:22


lige et spørgsmål ang raid0 i gentoo

jeg kan simpelthen ikke få lortet til at virke :-)

i fdisk fasen har jeg ikke som jeg troede en samlet disk enhed(fx: sda) nej jeg har 2 disk enheder (sda og sdb) og det er lidt uforståeligt fordi bundkortet har en intel matrix controller hvori jeg har lavet et "hardware" raid og så troede jeg at gentoo også ville kunne forstå det, men nej den ser stadig 2 diske.. why ? og hvordan pokker kommer jeg uden om det ?

AMD

4

mandag, 6. september 2010, 18:46


Citeret

Oprindeligt indlæg af !wfdi
lige et spørgsmål ang raid0 i gentoo

jeg kan simpelthen ikke få lortet til at virke :-)

i fdisk fasen har jeg ikke som jeg troede en samlet disk enhed(fx: sda) nej jeg har 2 disk enheder (sda og sdb) og det er lidt uforståeligt fordi bundkortet har en intel matrix controller hvori jeg har lavet et "hardware" raid og så troede jeg at gentoo også ville kunne forstå det, men nej den ser stadig 2 diske.. why ? og hvordan pokker kommer jeg uden om det ?


Jeg ved godt at dette er en ældre tråd, men jeg syntes lige så godt at svaret kan postes.

Det er naturligvis fordi at det RAID som intel tilbyder ikke er "rigtig" hardware RAID, men RAID hvor meget af logikken stadigvæk ligger i software.

Det betegnes ofte som fakeraid og er desværre gældende for stortset alle RAID controllere på bundkort, med meget få undtagelser (mener Silicon Image har lavet en som Gigabyte bruger på visse bundkort udover fakeraid SATA controlleren som de bundkort normalt også har).

I gentoo regi, kan man læse mere om det her: LINK

Husk at tænke dig om inden du poster, underbyg gerne svar med argumenter baseret på fakta og husk kilder.

5

mandag, 6. september 2010, 19:32


Citeret

Oprindeligt indlæg af RTM

Citeret

Oprindeligt indlæg af !wfdi
lige et spørgsmål ang raid0 i gentoo

jeg kan simpelthen ikke få lortet til at virke :-)

i fdisk fasen har jeg ikke som jeg troede en samlet disk enhed(fx: sda) nej jeg har 2 disk enheder (sda og sdb) og det er lidt uforståeligt fordi bundkortet har en intel matrix controller hvori jeg har lavet et "hardware" raid og så troede jeg at gentoo også ville kunne forstå det, men nej den ser stadig 2 diske.. why ? og hvordan pokker kommer jeg uden om det ?


Jeg ved godt at dette er en ældre tråd, men jeg syntes lige så godt at svaret kan postes.

Det er naturligvis fordi at det RAID som intel tilbyder ikke er "rigtig" hardware RAID, men RAID hvor meget af logikken stadigvæk ligger i software.

Det betegnes ofte som fakeraid og er desværre gældende for stortset alle RAID controllere på bundkort, med meget få undtagelser (mener Silicon Image har lavet en som Gigabyte bruger på visse bundkort udover fakeraid SATA controlleren som de bundkort normalt også har).

I gentoo regi, kan man læse mere om det her: LINK


det gør ike noget, men jeg er blevet lidt klogere på det felt :-)

og fik det faktisk til at virke, med en nyere udgave.

AMD


Seasonic S12II-Bronze 620W

Seasonic kender enhver entutiast som producent af rigtig gode strømforsyninger samt CAPS og kondensatorer til
Læs Mere

Thermaltake Suppressor F51

Vi skal denne gang kigge på et nyt lækkert kabinet fra producenten Thermaltake. Der er tale om et kabinet, der
Læs Mere

MSI AG240 AIO

MSI lancerede for ikke så længe siden en serie af All-In-One maskiner, hvoraf vi har modtaget mellemstørrelsen
Læs Mere

NZXT Noctis 450

Hvis du har fulgt med på sidelinjen hos NZXT i år, er det nok ikke gået din næse forbi, at de for nyligt lance
Læs Mere

be quiet! Dark Rock TF CPU køler

be quiet! er en velkendt producent af hardware til computere, og nærmere betegnet CPU kølere, strømforsyninger
Læs Mere

Noctua NF-A9 PWM 92 mm cooler

Den meget anerkendte producent af kølere og blæsere Noctua har tilsendt Tweak.dk en ny model af en af deres bl
Læs Mere

TP-LINK AV1200 Gigabit Powerline Netværk

TP-LINK har være på markedet i mange år efterhånden, og de fornyer hele tiden deres produktsortiment, så de er
Læs Mere

Philips HR2195 ProBlend 6 blender

Blandt de mange stykker forbrugerelektronik, vi modtager her på Tweak.dk, gemmer der sig en hel del blendere i
Læs Mere

Steam Summer Sale dato måske afsløret?

Selvom datoen for Steam Summer Sale er forbeholdt den indre kreds endnu, så er der en god chance for, at det v
Læs Mere

Resident Evil 4 HD Remastered screenshots fremvist

Lige nu er to moddere ved navn Chris og Albert i gang med at lave en texture mod pack til det meget populære s
Læs Mere

Ny GTA V mod opdaterer politiet i spillet

Selvom den omtalte mod endnu ikke er klar på markedet til download, så har folkene bag alligevel valgt at teas
Læs Mere

QNAP lancerer ny og hidsig NAS server

NAS servere er efterhånden noget, som mange private og også virksomheder nyder godt af, da et netværksdelt dre
Læs Mere

Var det noget med lidt Witcher 3 glitches?

Er du en af de mange, der allerede har kastet sig over The Witcher 3: Wild Hunt? Og er du også en af de mange,
Læs Mere

ASRock fremviser Z170 godter forud for Computex

Med Computex lige om hjørnet er det svært at forestille sig, at producenterne vil vise noget som helst frem af
Læs Mere

EVGA hopper med på Titan X bølgen

Som vi nævnte forleden, så har NVIDIA vist ændret mening i forhold til at lade producenterne lave custom kølel
Læs Mere

AMD bringer Fury tilbage fra de døde

I forbindelse med at vi meget snart får AMD's næste serie af grafikkort at se, har AMD også valgt at bringe na
Læs Mere
Nyeste Videoer og Trailers

Indsend nyhed
Har du fundet en fed nyhed så indsend den så alle andre på Tweak.dk kan få glæde af den.