Difference between revisions of "Install/Download and Extract Stage3"

From Funtoo
Jump to navigation Jump to search
(Add lxd steps)
(39 intermediate revisions by 6 users not shown)
Line 14: Line 14:
To download the correct build of Funtoo Linux for your system, head over to the [[Subarches]] page. Subarches are builds of Funtoo Linux that are designed to run on a particular type of CPU, to offer the best possible performance. They also take advantage of the instruction sets available for each CPU.
To download the correct build of Funtoo Linux for your system, head over to the [[Subarches]] page. Subarches are builds of Funtoo Linux that are designed to run on a particular type of CPU, to offer the best possible performance. They also take advantage of the instruction sets available for each CPU.


<!--T:4-->
==== What Subarch? ==== <!--T:17-->
If you don't know which subarch to choose, issue this command:
 
{{console|body=
<!--T:19-->
###i## gcc -march=native -Q --help=target | grep march
From the subarch list at [[Subarches]], choose your desired level of optimization. A system built specifically for your CPU will run faster than a less-optimized system. For a modern Intel or AMD system, it is safe to pick the exact optimization level for your particular family of CPU. This will offer the best possible performance.
}}
 
The [[Subarches]] page lists all CPU-optimized versions of Funtoo Linux. Find the one that is appropriate for the type of CPU that your system has, and then click on its name in the first column (such as {{c|corei7}}, for example.) You will then go to a page dedicated to that subarch, and the stage3s available for download will be listed. If you are using a virtualization technology to run Funtoo Linux, and your VM may migrate to different types of hardware, then it's recommended that you use a stage3 that is optimized for the oldest CPU instruction set that your VM will run on, or a generic image if it may run on both AMD and Intel processors.
<!--T:18-->
If you are using a virtualization technology to run Funtoo Linux and your VM may be used on different types of hardware, then it's recommended that you use a stage3 that is optimized for the oldest CPU instruction set that your VM will run on, or a more generic image if it may run on both AMD and Intel processors.


<!--T:5-->
<!--T:5-->
For most subarches, you will have several stage3s available to choose from. This next section will help you understand which one to pick.
Once you have found the appropriate subarch at [[Subarches]], you will likely have a few installation images to choose from. This next section will help you understand which one to pick.


==== Which Build? ==== <!--T:6-->  
==== Which Image? ==== <!--T:6-->  
 
<!--T:29-->
{{VMwareBlurb}}
 
<!--T:20-->
You can always manually choose an installation image via [https://build.funtoo.org https://build.funtoo.org] as well as using the [[Subarches]] page. Here is some guidance on choosing the best {{c|.tar.xz}} image for download. When choosing an image:


<!--T:7-->
<!--T:7-->
''Pick {{c|funtoo-current}}.''
;''Pick {{c|1.4-release-std}}.'': This is release 1.4 of Funtoo Linux, our current release.


==== Which Variant? ==== <!--T:8-->  
<!--T:21-->
;''Pick the subarch for the CPU family of the system you are installing on.'': This will provide the best performance.


<!--T:9-->
<!--T:22-->
If you're not sure, pick {{c|standard}}.
;Choose ''{{c|stage3}}'' for...: The ''{{c|stage3}}'' is a more traditional, minimal and non-graphical installation of Funtoo. You will then build your system up to your desired state using {{c|emerge}}.


<!--T:10-->
<!--T:23-->
Our "regular" stage3's are listed with a variant of {{c|standard}}. The following variant builds are available:
;Choose ''{{c|gnome}}'' for...: The ''{{c|gnome}}'' installation image, if available, includes the full GNOME environment as well as Firefox already optimized for your hardware. You can then continue to further customize your system after installation.


<!--T:11-->
<!--T:25-->
{{TableStart}}
;The ''{{c|lxd}}'' image for...: The ''{{c|lxd}}'' image is for use with [[LXD]], and is not used for installing directly on a desktop or laptop, so you should not select this option for regular installs. To install, first download and then {{c|lxc image import <name>.tar.xz --alias funtoo}} and then you can {{c|lxc  launch funtoo my_container}}.
{{2ColHead|Variant|Description}}
<tr><td>{{c|standard}}</td><td>The "standard" version of Funtoo Linux</td></tr>
<tr><td>{{c|pure64}}</td><td>A 64-bit build that drops multilib (32-bit compatibility) support. ''Can be ideal for server systems.''</td></tr>
{{TableEnd}}


==== Download the Stage3 ==== <!--T:12-->  
==== Download the Stage3 ==== <!--T:12-->  
Line 52: Line 56:
{{console|body=
{{console|body=
###i## cd /mnt/funtoo
###i## cd /mnt/funtoo
###i## wget https://build.funtoo.org/funtoo-current/x86-64bit/generic_64/stage3-latest.tar.xz
###i## wget https://build.funtoo.org/1.4-release-std/x86-64bit/generic_64/stage3-latest.tar.xz
}}
}}
Note that 64-bit systems can run 32-bit or 64-bit stages, but 32-bit systems can only run 32-bit stages. Make sure that you select a Stage 3 build that is appropriate for your CPU. If you are not certain, it is a safe bet to choose the {{c|generic_64}} or {{c|generic_32}} stage. Consult the [[Subarches]] page for more information.


==== Verify downloaded tarball ==== <!--T:24-->
Funtoo Linux stage tarballs are signed using GPG by the build server they are built on. It's a good practice to verify [https://en.wikipedia.org/wiki/Digital_signature#Applications authenticity and integrity] of downloaded files when possible. For instructions how to import and trust GPG keys check [[GPG_Signatures|our wiki page about GPG signatures]].
<!--T:26-->
Then, you can download the stage3's GPG signature and use the {{c|gpg --verify}} command in order to verify your tarball:
{{console|body=
###i## wget https://build.funtoo.org/1.4-release-std/x86-64bit/generic_64/stage3-latest.tar.xz.gpg
###i## gpg --verify stage3-latest.tar.xz.gpg stage3-latest.tar.xz
}}


<!--T:15-->
<!--T:15-->
Once the stage is downloaded, extract the contents with the following command, substituting in the actual name of your Stage 3 tarball:
Once the stage is downloaded and verified, extract the contents with the following command, substituting in the actual name of your Stage 3 tarball:
{{console|body=
{{console|body=
###i## tar xpf stage3-latest.tar.xz
###i## tar --numeric-owner --xattrs --xattrs-include='*' -xpf stage3-latest.tar.xz
}}
}}
{{Important|It is very important to use {{c|tar's}} "{{c|'''p'''}}" option when extracting the Stage 3 tarball - it tells {{c|tar}} to ''preserve'' any permissions and ownership that exists within the archive. Without this option, your Funtoo Linux filesystem permissions will be incorrect.}}
{{Important|It is very important to use all the options included above. See below for details.}}
 
<!--T:27-->
Here are what the options to {{c|tar}} do:
 
<!--T:28-->
;{{c|--numeric-owner}}: Without this option, {{c|tar}} will map ownership and group ownership based on the UID to user and GID to group mappings as defined on the LiveCD. We don't want this -- we want the ''numeric values'' of the UIDs and GIDs in the tarball to be preserved on disk, so when your Funtoo Linux system boots, the UIDs and GIDs are set correctly for Funtoo. That is what this option tells {{c|tar}} to do.
;{{c|1=--xattrs --xattrs-include='*'}}: Funtoo Linux uses filesystem extended attributes to set Linux capabilities, which allow for certain programs such as {{c|ping}} to have enhanced privileges without having to be fully 'suid root'. Even with the {{c|-p}} option, {{c|tar}} will not restore extended attributes we need unless these two options are specified.
;{{c|-xpf}}: This instructs {{c|tar}} to extract ({{c|x}}), preserve regular permissions and ownership ({{c|p}}), and use the filename ({{c|f}}) specified.
<noinclude>{{InstallNavigation|num=8|prev=Setting the Date|next=Chroot|align=right}}</noinclude>
</translate>
</translate>

Revision as of 20:32, December 20, 2020

Other languages:
English • ‎español • ‎polski • ‎português do Brasil • ‎русский • ‎中文(中国大陆)‎

Install Guide: Download and Extract Stage3

Install Guide, Chapter 8 < Prev Next >

Now that filesystems are created and your hardware and system clock are set, the next step is downloading the initial Stage 3 tarball. The Stage 3 is a pre-compiled system used as a starting point to install Funtoo Linux.

To download the correct build of Funtoo Linux for your system, head over to the Subarches page. Subarches are builds of Funtoo Linux that are designed to run on a particular type of CPU, to offer the best possible performance. They also take advantage of the instruction sets available for each CPU.

What Subarch?

From the subarch list at Subarches, choose your desired level of optimization. A system built specifically for your CPU will run faster than a less-optimized system. For a modern Intel or AMD system, it is safe to pick the exact optimization level for your particular family of CPU. This will offer the best possible performance.

If you are using a virtualization technology to run Funtoo Linux and your VM may be used on different types of hardware, then it's recommended that you use a stage3 that is optimized for the oldest CPU instruction set that your VM will run on, or a more generic image if it may run on both AMD and Intel processors.

Once you have found the appropriate subarch at Subarches, you will likely have a few installation images to choose from. This next section will help you understand which one to pick.

Which Image?

Our desktop environment stages (GNOME, Cinnamon, etc.) now support seamless installation on VMware Workstation Pro virtual machines. We highly recommend you enable 3D Accelerated Video for your VM, which is not enabled by default. Click here for more info.

You can always manually choose an installation image via https://build.funtoo.org as well as using the Subarches page. Here is some guidance on choosing the best .tar.xz image for download. When choosing an image:

Pick 1.4-release-std.
This is release 1.4 of Funtoo Linux, our current release.
Pick the subarch for the CPU family of the system you are installing on.
This will provide the best performance.
Choose stage3 for...
The stage3 is a more traditional, minimal and non-graphical installation of Funtoo. You will then build your system up to your desired state using emerge.
Choose gnome for...
The gnome installation image, if available, includes the full GNOME environment as well as Firefox already optimized for your hardware. You can then continue to further customize your system after installation.
The lxd image for...
The lxd image is for use with LXD, and is not used for installing directly on a desktop or laptop, so you should not select this option for regular installs. To install, first download and then lxc image import <name>.tar.xz --alias funtoo and then you can lxc launch funtoo my_container.

Download the Stage3

Once you have found the stage3 that you would like to download, use wget to download the Stage 3 tarball you have chosen to use as the basis for your new Funtoo Linux system. It should be saved to the /mnt/funtoo directory as follows:

root # cd /mnt/funtoo
root # wget https://build.funtoo.org/1.4-release-std/x86-64bit/generic_64/stage3-latest.tar.xz

Verify downloaded tarball

Funtoo Linux stage tarballs are signed using GPG by the build server they are built on. It's a good practice to verify authenticity and integrity of downloaded files when possible. For instructions how to import and trust GPG keys check our wiki page about GPG signatures.

Then, you can download the stage3's GPG signature and use the gpg --verify command in order to verify your tarball:

root # wget https://build.funtoo.org/1.4-release-std/x86-64bit/generic_64/stage3-latest.tar.xz.gpg
root # gpg --verify stage3-latest.tar.xz.gpg stage3-latest.tar.xz

Once the stage is downloaded and verified, extract the contents with the following command, substituting in the actual name of your Stage 3 tarball:

root # tar --numeric-owner --xattrs --xattrs-include='*' -xpf stage3-latest.tar.xz
   Important

It is very important to use all the options included above. See below for details.

Here are what the options to tar do:

--numeric-owner
Without this option, tar will map ownership and group ownership based on the UID to user and GID to group mappings as defined on the LiveCD. We don't want this -- we want the numeric values of the UIDs and GIDs in the tarball to be preserved on disk, so when your Funtoo Linux system boots, the UIDs and GIDs are set correctly for Funtoo. That is what this option tells tar to do.
--xattrs --xattrs-include='*'
Funtoo Linux uses filesystem extended attributes to set Linux capabilities, which allow for certain programs such as ping to have enhanced privileges without having to be fully 'suid root'. Even with the -p option, tar will not restore extended attributes we need unless these two options are specified.
-xpf
This instructs tar to extract (x), preserve regular permissions and ownership (p), and use the filename (f) specified.
Install Guide, Chapter 8 < Prev Next >