summaryrefslogtreecommitdiff
path: root/doc/official_installation_guide_en
blob: 76df02c0e3bc769590aa86e982c7e69b8b14f888 (plain)
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
General installation documentation for the Parabola GNU/Linux-Libre
distribution. 

You can find an updated version of this guide [5]here. This is the
plain text version of the 2011-01-29 revision.


Table of Contents

  * General installation documentation for the Parabola GNU/Linux-Libre
    distribution.
      o Introduction
          + What is Parabola GNU/Linux-Libre?
      o Pre-Installation
          + Architectures
          + Available images
          + AIF, the installation tool
          + Acquiring Parabola GNU/Linux-Libre
          + Preparing the Installation Media
      o Installing Parabola GNU/Linux-Libre
          + Using the Install Media
          + Using PXE (Network booting)
          + Performing the installation
      o Your new system
      o More information
          + Package Management
          + History

# General installation documentation for the Parabola GNU/Linux-Libre
distribution.

## Introduction

### What is Parabola GNU/Linux-Libre?

Parabola GNU/Linux-Libre is a libre software project aiming to provide a fully
free, as in freedom, Archlinux i686 and x86_64 optimized GNU/Linux
distribution.

Development is focused on a balance of simplicity, elegance,
code-correctness and bleeding edge free software.

Its lightweight and simple design makes it easy to extend and mold into
whatever kind of system you're building.

### Acknowledgement

This installation guide is substantially based on and copied from the
[6]Official_Arch_Linux_Install_Guide. Please see the history section at the
bottom of this guide.


## Pre-Installation

### Architectures

Parabola GNU/Linux-Libre is optimized for i686 and x86_64 processors and
therefore will not run on any lower or incompatible generations of x86
CPUs (i386, i486 or i586). (An entirely free distribution for older
machines can be found [7]here )

A Pentium Pro, Pentium II or AMD Athlon (K7) processor or higher is
required. (technically, cpu's without the cmov instruction such as AMD K6
and via C3 are also i686, but we use gcc and it uses cmov instructions)

Before installing Parabola GNU/Linux-Libre, you should decide which
installation method you would like to use.

### Available images

Parabola GNU/Linux-Libre provides [8]isofiles which can be written to
CD-roms or to disks and usb sticks

The Isolinux bootloader is used. There are two variants of each installation
medium which only differ in terms of supplied packages.

* The “core” images contain a snapshot of the core packages.

  These images are best suited for people who have an internet connection
  which is slow or difficult to set up.

* The “netinstall” images contain no packages at all, and will use the
network to install packages.

  These images are preferred since you will end up with an up-to-date
  system and they are best suited for people with fast internet
  connections.

You can instruct the installer to obtain the packages via the internet (or
any network) using either of these images, and all images can also be used
as fully functioning recovery environments.

The images run like any regular installed GNU/Linux system. In fact, they're
exactly the same, just installed to a CD or USB image instead of a hard
disk.

They include the entire “base” package set, as well as various networking
utilities and drivers and have the aif package installed.

If there's something else you happen to need at runtime, just get your
Internet connection up and install it using pacman.

A short pacman command reference is available at the end of this document.

All images are available in a i686 or x86_64.

### AIF, the installation tool

Parabola GNU/Linux-Libre uses AIF aka 'Archlinux Installation Framework'
to perform installations.

This tool - written in bash - consists of some libraries to perform various
functions (installing packages, setting up disks etc) and some so called
procedures which use these libraries to provide an easy means to do an
installation or to smaller related tasks ('partial procedures').

These procedures are shipped by default:

*interactive*: An interactive installation procedure, which asks you some
questions, guides you through an installation and helps you configuring the
target system by automatically changing some settings for you depending on
what you did earlier (eg network settings) The installed system will
initially have only a customisable set of “base” packages installed with
whatever utilities and drivers you need to get. Then once you've
successfully booted the installed system, you'll run a full system upgrade
and install any other packages you want.

Aliased as:

  /arch/setup

*automatic*: An automated, deploy-tool-alike procedure designed for low-to
zero interactivity. It uses profiles for configuration of the target system.
See /usr/share/aif/examples/ for example profile files. The examples
implement quite generic scenarios but you're free to change them how you
like to install extra packages, do configuration tweaks, etc.

*base*: basic, little-interactivity installation with some common defaults.
This procedure is used by the others to inherit from, it is NOT meant to be
used directly by end users.

*partial-configure-network*: exposes the network configuration step from the
interactive procedure, to help you setup the network in the live environment

*partial-disks*: Process disk subsystem or do a rollback

*partial-keymap*: change your keymap/console font settings.

Aliased as:

  km

The benefit of procedures such as partial-keymap and
partial-configure-network over direct usage of tools such as loadkeys or
ifconfig is that when running the interactive procedure, you will get asked
if you want to apply your settings to the config files of the target system.

If you want to go further, you can also:

  * write your own procedures from scratch or by overriding certain parts of
    other procedures
  * write your own libraries, to provide new, reusable functionality
  * create your own configs for the procedures that support them (eg
    automatic)

For more information, consult the readme of AIF.


### Acquiring Parabola GNU/Linux-Libre

You can download Parabola GNU/Linux-Libre via direct download http/ftp or
BitTorrent (preferred).

### Preparing the Installation Media

Download your chosen medium through torrent (preferred) or from the mirror.
Obtain the md5sum or sha256sum from the download directory. Verify the
integrity of the .iso image using sha256sum or md5sum:

paraboloa-20XX.XX.XX.iso: OK Burn the ISO image to a CD-R or CD-RW using any
software of your choice, or if using a USB mass storage device, such as a
thumb drive, using dd or similar raw-write software:

dd if=paraboloa-20XX.XX.XX.iso of=/dev/sdX

Make sure to use /dev/sdX and not /dev/sdX1. This command will irrevocably
delete all files on your USB stick, so make sure you don't have any
important files on it before doing this.


## Installing Parabola GNU/Linux-Libre

### Using the Install Media

#### Pre-boot

Make sure your BIOS is set in a way to allow booting from your CD-ROM or
USB device. Reboot your computer with the Parabola GNU/Linux-Libre
Installation CD in the drive or the USB stick plugged in the port. Once
the installation medium has started booting you will see the Parabola
GNU/Linux-Libre logo and a grub menu waiting for your selection. Most
likely you can just hit enter at this point. If Grub hangs, you're one of
the unlucky few whose CD-rom drive doesn't work with grub and you should
try the isolinux image.

#### Post-boot

At the end of the boot procedure, you should be at a login prompt with some
simple instructions at the top of the screen. You should login as root. At
this point you can optionally perform manual preparations and commence the
actual installation

If you prefer a non-US keymap or specific consolefont, type

  km

to change any of these. If for some reason you need network access before
starting the installer (the interactive procedure lets you configure the
network for NET installations) you can type

  aif -p partial-configure-network

For both items, changed settings will be remembered to be optionally applied
to the target system when using the interactive procedure.

There is also an

  arch

login which can be usefull if you want to do things as non-privileged user.
Most people don't need this.

<<<<<<< HEAD
You will find that everything you need to perform this installation (a copy
of this guide, aif README, shortcuts to common aif procedures) can be found
in /arch
=======
Make sure your BIOS is set in a way to allow booting from your CD-ROM or USB
device. Reboot your computer with the Arch Linux Installation CD in the drive or
the USB stick plugged in the port. Once the installation medium has started
booting, you will see the Arch Linux logo and an Isolinux menu waiting for your
selection. Most likely you can just hit enter at this point.

>>>>>>> 13c8c0813328eb8f52b03b3c53a32f1f40558021

### Using PXE (Network booting)

#### Server

On another machine running (Arch) Linux (live or normal), you need to
install and configure a dhcp and tftpd daemon. Dnsmasq is a fine choice
which can do both. You also need a nbd (network block device) daemon so the
client can load the needed files.

You can find more info on the [9]wiki (this section could be a bit more
elaborate)

#### Client

Configure your system to try network booting (pxe) first. On most systems
this happen by default. You will get an IP from the server and load all
needed files over the network automatically. Once booted, you can proceed as
normal.

### Performing the installation

You can either use the interactive procedure or the automatic one. See the
AIF readme for more info.

#### Interactive Installation Procedure

Type

  /arch/setup

(or

  aif -p interactive

, which is the same) to start.

After the welcome message and disclaimer you will be presented with the main
installation menu. You can use UP and DOWN arrow to navigate menus. Use TAB
to switch between buttons and ENTER to select. At any point during the
install process, you can switch to your 7th virtual console (ALT-F7) to view
the output from the commands the setup is running. Use (ALT-F1) to get back
to your first console where the installer is running, and any F-key in
between if you need to open another console to intervene manually for any
reason.

#### Select Source

As a first step you must choose the method you want to install Parabola
GNU/Linux. If you have a fast Internet connection, you might prefer the NET
installation to ensure you get the latest packages instead of using the
potentially outdated CD or USB image contents. If you're using a NET image
you don't have much choice ;-).

#### CD-ROM or OTHER SOURCE

When choosing a CD-ROM or OTHER SOURCE install you will only be able to
install packages contained on the CD, which may be quite old, or packages
stored on a medium you were able to mount (DVD, USB stick or similar)
somewhere in the filesystem tree manually. Of course it has the advantage
that you won't need an Internet connection, and is therefore the recommended
choice for dialup users or those unable or unwilling to download the entire
package set.

#### NET (FTP/HTTP)

#### Setup Network

The first entry Setup Network will allow you to install and configure your
network device. If you are using a wireless device you will still need to
use the usual utilities to configure it manually, in which case this part of
the installer isn't much use to you. A list of all currently available
network devices is presented to you. If no ethernet device is available yet,
or the one you wish to use is missing, either hit OK and go on to probe for
it, or switch to another console and load the module manually. If you still
can't configure your network card, make sure it's physically been properly
installed, and that it is supported by the Linux kernel.

When the correct module is loaded, and your desired network card is listed,
you should select the ethernet device you want to configure and you will be
given the option to configure your network with DHCP. If your network uses
DHCP, hit YES and let the installer do the rest. If you select NO, you will
be asked to enter the networking information manually. Either way, your
network should be successfully configured, and you may check connectivity
using standard tools like ping on another console.

#### Set Clock

Set Clock will allow you to set up your system clock and date. First you
have to say if your hardwareclock is (or should be) in UTC or localtime. UTC
is preferred, but if you have an OS installed which cannot handle UTC BIOS
times correctly -like Windows- you'll have to choose localtime. Next the
setup will want you to select your continent/country (timezone), and allow
you to set the date and time (for which you can also use [10]NTP if your
network is up)

#### Prepare Hard Drive

Prepare Hard Drive will lead you into a submenu offering two alternatives of
preparing your target drive(s) for installation, and a means to undo changes
if you want to retry.

Auto-prepare will automatically partition (and fully overwrite) one disk of
your choice. It creates a simple layout with a /boot, swap, / and /home
partition where you have some control over the used filesystems and sizes
thereof. If you wish/need more control you can manually partition one or
more hard disks and then manually specify a complete setup using the
partitions on your disks. You can also use things such as lvm and dm_crypt
here. The Rollback feature will check which filesystems were created by
either of these methods, unmount the relevant filesystems and destroy lvm
and dm_crypt volumes if they were created by you. You need this option if
you want to undo or redo a certain scheme. You will be prompted for this if
you forget.

Notes:

AIF can help you set up new dm_crypt and lvm volumes, but not (yet)
softraid. AIF currently doesn't help you creating volumegroups that span
multiple physical volumes. (if you need this -unlikely- : use vgcreate) AIF
supports reusing filesystems, but only if it can find the blockdevice. If
you want to reuse a filesystem that is on top of lvm/dm_crypt/softraid,
you'll need to bring up the volumes yourself.

#### Auto-Prepare

Auto-Prepare will automatically partition a hard drive of your choice into a
/boot, swap, a root partition, and a /home and then create filesystems on
all four. These partitions will also be automatically mounted in the proper
place. To be exact, this option will create:

32 MB ext2 /boot partition 256 MB swap partition 7.5 GB root partition /home
partition with the remaining space

You will be prompted to modify the sizes to your requirements, but /home
will always use the remaining disk space. You can customize the used
filesystem for /boot and for both of root and /home at once.

*AUTO-PREPARE WILL ERASE ALL DATA ON THE CHOSEN HARD DRIVE!*

#### Manually partition Hard Drives

Here you can select the disk(s) you want to partition, and you'll be dropped
into the cfdisk program where you can freely modify the partitioning
information until you [Write] and [Quit]. You will need at least a root
partition to continue the installation.

#### Manually configure block devices, filesystems and mountpoints

In this menu all recognized partitions are listed. On top of these you can
create new filesystems. You should be aware of three things:

All of this is just a model, everything will only be set up after you
confirm. Not all blockdevices support all filesystems (Eg you cannot put an
LVM volumegroup on something other then a LVM physical volume). The
installer will automatically filter the list of possible filesystems and
even select the one automatically for you if there's only one option. Some
filesystems will cause new blockdevices to be created. This is the case for
dm_crypt and lvm volumes. You will see them appear in the model and you can
use them to put another filesystem on top of it. When asked for (optional)
options to mkfs tools, pass arguments which will literally be added when
calling mkfs. For example, to disable the journal on ext filesystems:

don't do:

  ^has_journal

but rather:

  -O ^has_journal

When filesystems setup is complete, you can select 'Done'. At this point a
check will be run which will tell you any critical errors (such as no root
filesystem) and/or give you some warnings which you may ignore (like no
swap). If anything is found, you can go back to fix these issues, or
continue at which point everything will be setup the way you asked.

For example, if you want a setup that uses LVM on top of dm_crypt, you
would:

make sure that you have a 2 partitions: a small one for the unencrypted boot
(about 100M) and one for the rest of the (encrypted) system. (do this in
“Manually partition hard drives”) on your /dev/sdX1, make an ext2 filesystem
with mountpoint /boot on your /dev/sdX2, make a dm_crypt volume, with label
sdX2crypt (or whatever you want) /dev/mapper/sdX2crypt will appear. Put a
LVM physical volume on this /dev/mapper/sdX2crypt+ appears. This is the
representation of the physical volume. Put a volumegroup on this, with label
cryptpool (or whatever you want) /dev/mapper/cryptpool appears. On this
volumegroup you are able to put multiple logical volumes. Make 2:

one with size 5G: label this cryptroot one with size 10G: label this
crypthome

2 new volumes appear:

/dev/mapper/cryptpool-cryptroot: on this blockdevice, you can put your root
filesystem, with mountpoint /. /dev/mapper/cryptpool-crypthome is the
blockdevice on which you can put the filesystem with mountpoint /home.

If you want swapspace, make a logical volume for swap and put a swap volume
on it. That's it! If you select 'done' it should process the model and
create your disk setup the way you specified. The cool part is that you can
pick relatively small values for your volumes to start with, and if you need
more space later you can grow the logical volume and the filesystem on top
of it.

#### Rollbacks

The rollback function will do everything necessary to “undo” changes you
made in the 'Manually configure block devices, filesystems and mountpoints'
or 'Autoprepare' step, to allow you completely redo your setup.

It will:

unmount filesystems from the target system destroy/undo lvm and dm_crypt
volumes.

It will not:

undo any partitioning remove 'simple' filesystems such as ext3, xfs, swap
etc.

The reason for this is simple: only things that might disturb subsequent
hard disk preparations need to be undone.

#### Select Packages

<<<<<<< HEAD
Select Packages will let you select the packages you wish to install from
the CD, USB or your NET mirror. You have the opportunity to specify whole
package groups from which you'd generally like to install packages, then
fine-tune your coarse selection by (de)selecting individual packages from
the groups you have chosen using the space bar. It is recommended that you
install all the “base” packages, but not anything else at this point. The
only exception to this rule is installing any packages you need for setting
up Internet connectivity.
=======
Select Packages will let you select the packages you wish to install from the
CD, USB or your NET mirror. First, you are prompted to select a bootloader
package (the bootloader will be configured later on in the "Install Bootloader"
stage). After this, you can select package groups from which you'd generally
like to install packages, then fine-tune your coarse selection by (de)selecting
individual packages from the groups you have chosen using the space bar. It is
recommended that you install all the "base" packages, but not anything else at
this point. The only exception to this rule is installing any packages you need
for setting up Internet connectivity.
>>>>>>> 13c8c0813328eb8f52b03b3c53a32f1f40558021

Once you're done selecting the packages you need, leave the selection screen
and continue to the next step.

#### Install Packages

Install Packages will now install the base system and any other packages you
selected with resolved dependencies onto your harddisk.

#### Configure System

Configure System does multiple things:

automatically preseed some configuration files (eg grub's menu.lst,
mkinitcpio.conf's HOOKS, keymap settings in rc.conf, pacman mirror etc)
preseed some configuration files after you agreed. (eg network settings)
allow you to manually change important config files for your target system.
You'll be asked which text editor you want to use. You have the choice
between nano, joe and vi allow you to set the root password for the target.

<<<<<<< HEAD
#### Configuration Files
=======
  * /etc/rc.conf
  * [ /etc/fstab][48]
  * /etc/mkinitcpio.conf
  * /etc/modprobe.d/modprobe.conf
  * /etc/resolv.conf
  * /etc/hosts
  * /etc/locale.gen
  * /etc/pacman.d/mirrorlist
  * /etc/pacman.conf
  * /etc/crypttab
>>>>>>> 13c8c0813328eb8f52b03b3c53a32f1f40558021

These are the core configuration files for Parabola GNU/Linux-Libre. If
you need help configuring a specific service, please read the appropriate
manpage or refer to any online documentation you need. In many cases, the
Arch Linux [11]Wiki and [12]forums are a rich source for help as well.

/etc/rc.conf [13]etc/fstab /etc/mkinitcpio.conf
/etc/modprobe.d/modprobe.conf /etc/resolv.conf /etc/hosts /etc/hosts.deny
/etc/hosts.allow /etc/locale.gen /etc/pacman.d/mirrorlist /etc/pacman.conf
/etc/crypttab

#### /etc/rc.conf 

This is the main configuration file for Parabola GNU/Linux-Libre. It
allows you to set your keyboard, timezone, hostname, network, daemons to
run and modules to load at bootup, profiles, and more.

*LOCALE:* This sets your system language, which will be used by all i18n-
friendly applications and utilities. See locale.gen below for available
options. This setting's default is fine for US English users.

*HARDWARECLOCK*: Either UTC if your BIOS clock is set to UTC, or localtime
if your BIOS clock is set to your local time. If you have an OS installed
which cannot handle UTC BIOS times correctly, like Windows, choose localtime
here, otherwise you should prefer UTC, which makes daylight savings time a
non-issue and has a few other positive aspects.

*USEDIRECTISA:* If set to “yes” it tells hwclock to use explicit I/O
instructions to access the hardware clock. Otherwise, hwclock will try to
use the /dev/rtc device it assumes to be driven by the rtc device driver.
This setting's default “no” is fine for people not using an ISA machine.

*TIMEZONE:* Specifies your time zone. Possible time zones are the relative
path to a zoneinfo file starting from the directory /usr/share/zoneinfo. For
example, a German timezone would be Europe/Berlin, which refers to the file
/usr/share/zoneinfo/Europe/Berlin. If you don't know the exact name of your
timezone file, worry about it later.

*KEYMAP:* Defines the keymap to load with the loadkeys program on bootup.
Possible keymaps are found in /usr/share/kbd/keymaps. Please note that this
setting is only valid for your TTYs, not any graphical window managers or X!
Again, the default is fine for US users.

*CONSOLEFONT:* Defines the console font to load with the setfont program on
bootup. Possible fonts are found in /usr/share/kbd/consolefonts.

*CONSOLEMAP:* Defines the console map to load with the setfont program on
bootup. Possible maps are found in /usr/share/kbd/consoletrans. Set this to
a map suitable for the appropriate locale (8859-1 for Latin1, for example)
if you're using an UTF-8 locale above, and use programs that generate 8-bit
output. If you're using X11 for everyday work, don't bother, as it only
affects the output of Linux console applications.

*USECOLOR:* Enable (or disable) colorized status messages during boot-up.

*MOD_AUTOLOAD:* If set to “yes”, udev will be allowed to load modules as
necessary upon bootup. If set to “no”, it will not.

*MODULES:* In this array you can list the names of modules you want to load
during bootup without the need to bind them to a hardware device as in the
modprobe.conf. Simply add the name of the module here, and put any options
into modprobe.conf if need be. Prepending a module with a bang ('!') will
blacklist the module, and not allow it to be loaded.

*USELVM:* Set to “yes” to run a vgchange during sysinit, thus activating any
LVM groups

*HOSTNAME:* Set this to the hostname of the machine, without the domain
part. This is totally your choice, as long as you stick to letters, digits
and a few common special characters like the dash.

*INTERFACES:* Here you define the settings for your networking interfaces.
The default lines and the included comments explain the setup well enough.
If you use DHCP, 'eth0=“dhcp”' should work for you. If you do not use DHCP
just keep in mind that the value of the variable (whose name must be equal
to the name of the device which is supposed to be configured) equals the
line which would be appended to the ifconfig command if you were to
configure the device manually in the shell.

*ROUTES:* You can define your own static network routes with arbitrary names
here. Look at the example for a default gateway to get the idea. Basically
the quoted part is identical to what you'd pass to a manual route add
command, therefore reading man route is recommended or simply leave this
alone.

*[14]NET_PROFILES:* Enables certain network profiles at bootup. Network
profiles provide a convenient way of managing multiple network
configurations, and are intended to replace the standard INTERFACES/ROUTES
setup that is still recommended for systems with only one network
configuration. If your computer will be participating in various networks at
various times (eg, a laptop) then you should take a look at the
/etc/network-profiles/ directory to set up some profiles. There is a
template file included there that can be used to create new profiles. This
now requires the netcfg package.

*DAEMONS:* This array simply lists the names of those scripts contained in
/etc/rc.d/ which are supposed to be started during the boot process. If a
script name is prefixed with a bang (!), it is not executed. If a script is
prefixed with an “at” symbol (@), then it will be executed in the
background, ie. the startup sequence will not wait for successful completion
before continuing. Usually you do not need to change the defaults to get a
running system, but you are going to edit this array whenever you install
system services like sshd, and want to start these automatically during
bootup.

#### [15]/etc/fstab

Filesystem settings and mountpoints are configured here. The installer
should have created the necessary entries. Ensure they are accurate and
correct.

#### /etc/mkinitcpio.conf

This file allows you to fine-tune the initial ramdisk for your system. The
ramdisk is a gzipped image that is read by the kernel during bootup. Its
purpose is to bootstrap the system to the point where it can access the root
filesystem. This means it has to load any modules that are required to “see”
things like IDE, SCSI, or SATA drives (or USB/FW, if you are booting off a
USB/FW drive). Once the ramdisk loads the proper modules, either manually or
through udev, it passes control to the Arch system and your bootup
continues. For this reason, the ramdisk only needs to contain the modules
necessary to access the root filesystem. It does not need to contain every
module you would ever want to use. The majority of your everyday modules
will be loaded later on by udev, during the init process.

By default, mkinitcpio.conf is configured to autodetect all needed modules
for IDE, SCSI, or SATA systems through so-called HOOKS. The installer should
also have inserted hooks like crypt, lvm, keymap and usbinput if relevant.
This means the default initrd should work for almost everybody. You can edit
mkinitcpio.conf and remove the subsystem HOOKS (ie, IDE, SCSI, RAID, USB,
etc) that you don't need. You can customize even further by specifying the
exact modules you need in the MODULES array and remove even more of the
hooks, but proceed with caution.

If you're using RAID on your root filesystem, the RAID settings near the
bottom must be configured. See the wiki pages for RAID and mkinitcpio for
more info. If you're using a non-US keyboard, you should also add the
'keymap' hook, as well as the 'usbinput' hook if you are using a USB
keyboard.

#### /etc/modprobe.d/modprobe.conf

This tells the kernel which modules to load for system devices, and what
options to set. For example, to have the kernel load the Realtek 8139
ethernet module when it starts the network (ie. tries to setup eth0), use
this line:

  alias eth0 8139too

Most people will not need to edit this file.

#### /etc/resolv.conf

Use this file to manually setup your preferred nameserver(s). It should
basically look like this:

  search domain.tld
  nameserver 192.168.0.1
  nameserver 192.168.0.2

Replace domain.tld and the ip addresses with your settings. The so-called
search domain specifies the default domain that is appended to unqualified
hostnames automatically. By setting this, a ping myhost will effectively
become a ping myhost.domain.tld with the above values. These settings
usually aren't mighty important, though, and most people should leave them
alone for now. If you use DHCP, this file will be replaced with the correct
values automatically when networking is started, meaning you can and should
happily ignore this file.

#### /etc/hosts

<<<<<<< HEAD
This is where you stick hostname/ip associations of computers on your
network. If a hostname isn't known to your DNS, you can add it here to allow
proper resolving, or override DNS replies. You usually don't need to change
anything here, but you might want to add the hostname and hostname + domain
of the local machine to this file, resolving to the IP of your network
interface. Some services, postfix for example, will bomb otherwise. If you
don't know what you're doing, leave this file alone until you read man
hosts.

#### /etc/hosts.deny

This file denies network services access. By default all network services
are denied.

  ALL: ALL: DENY

#### /etc/hosts.allow

This file allows network services access. Enter the services you want to
allow here. eg. to allow all machines to connect via ssh:

  sshd: ALL: ALLOW

#### /etc/locale.gen
=======
**/etc/locale.gen**
>>>>>>> 13c8c0813328eb8f52b03b3c53a32f1f40558021

This file contains a list of all supported locales and charsets available to
you. When choosing a LOCALE in your /etc/rc.conf or when starting a program,
it is required to uncomment the respective locale in this file, to make a
“compiled” version available to the system, and run the locale-gen command
as root to generate all uncommented locales and put them in their place
afterwards. You should uncomment all locales you intend to use.

During the installation process, you do not need to run locale-gen manually,
this will be taken care of automatically after saving your changes to this
file. By default, all locales are enabled that would make sense by rc.conf's
LOCALE= setting. To make your system work smoothly, you should edit this
file and uncomment at least the one locale you're using in your rc.conf.

#### /etc/pacman.d/mirrorlist

This file contains a list of mirrors from which pacman will download
packages for the official Parabola GNU/Linux-Libre repositories. The
mirrors are tried in the order in which they are listed. The $repo macro
is automatically expanded by pacman depending on the repository (core,
extra, community or testing).

If you are performing an FTP installation, the mirror you used to download
the packages from will be added on top of the mirror list, in order to be
used as the default mirror in your new Parabola GNU/Linux-Libre system.

#### /etc/pacman.conf

Here you can customize pacman settings such as which repositories to use.

#### /etc/crypttab

If you use encryption on a device which is not used to bring up your root,
(and hence is not enabled by the encrypt hook in mkinitcpio.conf), you
should configure the volume in this file.

#### Set Root Password

At this step, you must set the root password for your system. Choose this
password carefully, preferably as a mixture of alphanumeric and special
characters, since this password allows you to modify critical parts of your
system.

When you are done editing the configuration files choose Return to return to
the main menu. The setup will regenerate the initial ramdisk to enable the
changes you made in mkinitcpio.conf.

#### Install Bootloader

<<<<<<< HEAD
Install Bootloader will install a bootloader on your hard drive, either GRUB
or NONE in case you have a bootloader already installed and want to use that
one instead. If you choose to install GRUB, the setup script will want you
to examine the appropriate configuration file to confirm the proper
settings.

#### /boot/grub/menu.lst

You should check and modify this file to accommodate your boot setup if you
want to use GRUB, otherwise you will have to modify your existing
bootloader's configuration file. The installer will have pre-populated this
file using UUID entries which you may have to change in the same cases you'd
need to change them in your fstab.
=======
Install Bootloader will install and help you configure the bootloader that you
selected in the "Select Packages" stage.

**/boot/grub/menu.lst**
**/boot/syslinux/syslinux.cfg**

An editor will open, allowing you to edit the appropriate bootloader
configuration file which the installer has pre-populated. You should check and
modify this file, if needed, to accommodate your boot setup.

Syslinux:
After checking your bootloader configuration for correctness, you'll be asked to
allow the installer to Set the Boot Flag and install the Syslinux MBR.

Grub:
>>>>>>> 13c8c0813328eb8f52b03b3c53a32f1f40558021

After checking your bootloader configuration for correctness, you'll be
prompted for a disk to install the loader to. You should install GRUB to the MBR
of the installation disk.

#### Exit Install

Exit the Installer, remove the media you used for the installation, type
reboot at the command line and cross your fingers!


### Automatic Installation Procedure

With the automatic installation procedure, you can do scripted/automatic
installations. In /usr/share/aif/examples you will find example profiles
which will need no or minimal editing in order to install a system:

generic-install-on-sda this file demonstrates some things you can do (adding
custom packages, setting timezone, update config files etc) it sets up a
simple installation (with a structure similar to what you get with
Auto-prepare) on /dev/sda fancy-install-on-sda very similar to
generic-install-on-sda, but sets up a “filesystems on lvm on dm_crypt”
system on /dev/sda

Note that these files are plain bash files, so if you want to define for
example

  SYNC_URL

it must be singlequoted to prevent bash expanding

  $repo

Invoke as

  aif -p automatic -c /path/to/configfile

Obviously, don't forget to change the hard disk names unless you want to use
/dev/sda.

#### Config file syntax

Config files will be sourced by the bash shell, so they need to be valid
bash code.

*PARTITIONS:* Allows you to define partitions for your hard disk, separated
by spaces.

first comes the device file for the hard disk then for each partition you
want: size in MiB (or '*' for all remaining space),filesystem type and
optionally a '+' to toggle the bootable flag. separated by colons (':')

*BLOCKDATA:* In this multi-line variable you can describe for each partition
you'll have how it should be used. Study the examples to see how it works.


### Customizing Installations

You can also customize your installation experience by writing new
procedures (possibly inheriting from current procedures) or config files for
procedures that support it (eg automatic). You have all the aif libraries at
your disposal and you can create new libraries. (see /usr/lib/aif) This is a
moving target, so consult the AIF readme for more information.


## Your new system

If all went well, you can reboot your system (make sure you don't boot again
from the same USB disk or CD-ROM drive) and your new system will boot.

You'll notice that in the early userspace (the part that comes after the
bootloader) the hooks (as defined in mkinitcpio.conf) needed to get your
root filesystem are run. If you have lvm, it will run the lvm hook. If you
use encryption, it will run the keymap and encrypt hooks so you can enter
your password to decrypt the volume.

Once the system is booted, login as root. By default the password is empty
but in the interactive procedure you can change it.


## More information

### Package Management

Pacman is the package manager which tracks all the software installed on
your system. It has simple dependency support and uses the standard gzipped
tar archive format for all packages. Some common tasks you might need to use
during installation, are explained below with their respective commands. For
an extensive explanation of pacman's options, read man pacman or consult the
[16]Pacman Wiki.

*Typical tasks:*

Refreshing the package list

  # pacman --sync --refresh
  # pacman -Sy

This will retrieve a fresh master package list from the repositories defined
in the /etc/pacman.conf file and decompress it into the database area.

Search the repositories for a package

  # pacman --sync --search <regexp>
  # pacman -Ss <regexp> 

Search each package in the sync databases for names or descriptions that
match regexp.

Display specific package info from the repository database

  # pacman --sync --info foo
  # pacman -Si foo

Displays information from the repository database on package foo (size,
build date, dependencies, conflicts, etc.)

Adding a package from the repositories

  # pacman --sync foo
  # pacman -S foo 

Retrieve and install package foo, complete with all dependencies it
requires. Before using any sync option, make sure you refreshed the package
list.

List installed packages

  # pacman --query
  # pacman -Q

Displays a list of all installed packages in the system.

Check if a specific package is installed

  # pacman --query foo
  # pacman -Q foo 

This command will display the name and version of the foo package if it is
installed, nothing otherwise.

Display specific package info

  # pacman --query --info foo
  # pacman -Qi foo 

Displays information on the installed package foo (size, install date, build
date, dependencies, conflicts, etc.)

Display list of files contained in package

  # pacman --query --list foo
  # pacman -Ql foo

Lists all files belonging to package foo.

Find out which package a specific file belongs to

  # pacman --query --owns /path/to/file
  # pacman -Qo /path/to/file

This query displays the name and version of the package which contains the
file referenced by its full path as a parameter.

## History

This guide is based on and copied from the Official Arch Linux Install Guide
at [17]ArchWiki. It was viewed multiple times between in January 2011. The
original guide is viewable by clicking this [18]link.

Except where otherwise noted, content on this wiki is licensed under the
following license:[19]GNU Free Documentation License 1.3


## References:
   5. http://wiki.parabolagnulinux.org/installation_guide
   6. https://wiki.archlinux.org/index.php/Official_Arch_Linux_Install_Guide
   7. http://www.connochaetos.org/wiki/doku.php
   8. http://parabolagnulinux.org/download
   9. http://wiki.archlinux.org/index.php/Archiso-as-pxe-server
  10. http://www.ntp.org
  11. http://wiki.archlinux.org
  12. http://bbs.archlinux.org
  13. http://wiki.archlinux.org/index.php/Fstab
  14. http://wiki.archlinux.org/index.php/Network_profiles
  15. http://wiki.archlinux.org/index.php/Fstab
  16. http://wiki.archlinux.org/index.php/Pacman
  17. https://wiki.archlinux.org/index.php/ArchWiki
  18. https://wiki.archlinux.org/index.php?title=Official_Arch_Linux_Install_Guide&amp;oldid=124561
  19. http://www.gnu.org/licenses/fdl-1.3.html
  20. http://www.gnu.org/licenses/fdl-1.3.html