This commit is contained in:
Rodrigo Caballero
2017-10-25 17:01:46 -05:00
51 changed files with 1088 additions and 286 deletions
@@ -1,286 +1,319 @@
.. _bare-metal-install:
Install Clear Linux host OS on bare metal
#########################################
This instruction set will guide you through the automatic installation of |CL|
on bare metal using a bootable USB drive.
.. include:: ../compatibility-check.rst
:Start-after: compatibility-check:
.. include:: ../bootable-usb/bootable-usb-linux.rst
:Start-after: bootable-usb-linux:
:end-before: download-cl-image
.. include:: ../bootable-usb/bootable-usb-linux.rst
:Start-after: download-cl-image:
:end-before: verify-checksum
.. include:: ../bootable-usb/bootable-usb-linux.rst
:Start-after: verify-checksum:
:end-before: copy-usb-linux
.. include:: ../bootable-usb/bootable-usb-linux.rst
:Start-after: copy-usb-linux:
:end-before: usb-next
.. _install-on-target:
Install Clear Linux on your target system
*****************************************
The USB drive that was created in the previous step has been formatted as a
UEFI boot device. Our target system has a hard drive installed containing a
single primary partition. The target system needs a wired Internet connection
with DHCP.
Follow these steps to install |CL| on the target system:
#. Insert the USB drive into an available USB slot.
#. Power on the system.
#. Open the system BIOS setup menu, normally by pressing the F2 key. Your
BIOS setup menu entry point may vary.
#. In the setup menu, enable the UEFI boot and set the USB drive as the first
option in the device boot order.
#. Save these settings and exit.
#. Reboot the target system and the |CL| Installer menu will start.
.. note::
Use the arrow keys, space bar, and enter key to navigate the menu of the
|CL| Installer.
#. In this tutorial, we will enable telemetrics and select the `Automatic`
installation type.
The primary drive to install |CL| onto is :file:`/dev/sdb` since the
target system identifies the USB drive as :file:`/dev/sda`.
#. Follow the instructions to begin the installation.
The installation is completed in the following stages:
.. code-block:: console
Reading configuration
Validating configuration
Creating partitions
Creating file systems
Setting up mount points
Starting swupd. May take several minutes
Cleaning up
Successful installation
Once complete, an `<OK>` prompt appears in the dialog box, letting you know
that you have successfully installed |CL| onto your system.
#. Press enter once the <OK> prompt appears. The following dialog box takes
its place:
.. code-block:: console
Successful installation, the system will be rebooted
<OK>
#. Press enter, remove the USB drive from the system, and the system will
reboot running |CL|.
.. _initial-setup:
Clear Linux initial setup after installation
********************************************
Your newly installed |CL| boots on your target system and presents a full
screen console requesting `Login:`. |CL| is designed to install with minimal
software overhead. Therefore, some housekeeping and package installations
must occur before you have a full-featured |CL| operating system.
Set up your root and user accounts
==================================
#. At the initial login prompt, enter: root
#. Once you are prompted, enter a new password
#. Re-enter the password to verify it.
You have set your root password and are logged in with root privileges.
The next step is to create a new user and set a password for
that user:
.. code-block:: console
useradd <userid>
passwd <userid>
Replace <userid> with the name of the user account you want to create.
Remain logged in as the root user because there are some other things to do
before we can fully enable your new user space.
Software installation and updates
=================================
|CL| has a unique application and architecture to add and update applications
and to perform system updates called software update utility or `swupd`.
Software applications are installed as bundles using the command
:command:`bundle-add`.
Next, we should install some useful applications using the software update
utility. The `os-clr-on-clr` bundle installs the vast majority of
applications useful to a system administrator or a developer. The bundle
contains other bundles such as `sysadmin-basic`, `editors`, `c-basic`, `dev-
utils-dev`, and other useful packages.
.. code-block:: console
swupd bundle-add os-clr-on-clr
.. note::
The image we installed may not be the latest version of |CL| available on
the server. However, whenever the command
:command:`swupd bundle-add <bundle>` runs, the OS is updated to the latest
available version. Our website provides more `information about swupd`_.
We provide the full list of bundles and packages installed with the
`os-clr-on-clr`_ bundle. Additionally, we have listed
`all Clear Linux bundles`_, active or deprecated. Click any bundle on the
list to view the manifest of the bundle.
Finish setting up your new user
===============================
Before logging off as root and logging into your new user account, we must
enable the :command:`sudo` command for your new `<userid>`.
To be able to execute all applications with root privileges, we must add the
`<userid>` to the `wheel group`_ and enable the wheel group in the
:file:`/etc/sudoers` file.
#. To add `<userid>` to the wheel group, enter the following command:
.. code-block:: console
usermod -G wheel -a <userid>
#. To open the :file:`/etc/sudoers` file, enter the following command:
.. code-block:: console
vi /etc/sudoers
.. note::
Normally, we would use the visudo script to edit the :file:`/etc/sudoers`
file to safely modify the contents of the file. In this instance, the file
does not exist yet. Therefore, we create the initial instance of the file.
#. In the vi\* editor window, press the :kbd:`o` to open a new line.
#. Add the following line to the file:
.. code-block:: console
%wheel ALL=(ALL) ALL
#. To save the changes to the file and exit vi, press the :kbd:`ESC` key
followed by the :kbd:`:` and :kbd:`x` keys.
.. important::
Creating the file logged as the root user keeps the permissions of the
file with the root user.
Now, we can log out of root and into our new <userid>.
#. To log off as root, enter :command:`exit`.
The command should bring you back to the `Login:` prompt.
#. Enter your new `<userid>` and the password you created earlier.
You should now be in the home directory of `<userid>`. The bundle
`os-clr-on-clr`_ contains the majority of applications that a developer or
system administrator would want but it does not include a graphical user
interface. The `desktop` bundle includes the Gnome Desktop Manager and
additional supporting applications.
Install a GUI
=============
#. To test the :command:`sudo` command and ensure we set it up correctly, we
can install the Gnome Desktop Manager (gdm) and start it.
#. To install Gnome using swupd, enter the following command:
.. code-block:: console
sudo swupd bundle-add desktop
#. To start the Gnome Desktop Manager, enter the following command:
.. code-block:: console
systemctl start gdm
You will be prompted to authenticate your user. Enter the password for
`<userid>` and the Gnome Desktop should start as shown in figure 1:
.. figure:: figures/gnomedt.png
:alt: Gnome Desktop
Figure 1: :guilabel:`Gnome Desktop`
#. To start the Gnome Desktop each time you start your system, enter
the following command:
.. code-block:: console
systemctl enable gdm
**Congratulations!**
You have successfully installed |CL| on a bare metal system.
Additionally, you performed the following basic setup for your system:
* Setup of a root user.
* Updated the OS to its most current version using `swupd`.
* Installed the most common applications for system administrators and
developers using bundles.
* Setup of a new user.
* Setup of `sudo` privileges for that new user.
* Installed a GUI using those `sudo` privileges.
Next steps
**********
With your system now running |CL| many paths are open for you.
Visit our :ref:`tutorials` page for examples on using your |CL|
system.
.. _`information about swupd`:
https://clearlinux.org/features/software-update
.. _`os-clr-on-clr`:
https://github.com/clearlinux/clr-bundles/blob/master/bundles/os-clr-on-clr
.. _`all Clear Linux bundles`:
https://github.com/clearlinux/clr-bundles/tree/master/bundles
.. _`wheel group`:
https://en.wikipedia.org/wiki/Wheel_(Unix_term)
.. _image: https://download.clearlinux.org/image
.. _releases: https://download.clearlinux.org/releases
.. _bare-metal-install:
Install Clear Linux OS on bare metal
####################################
These instructions guide you through the installation of |CLOSIA|
on bare metal using a bootable USB drive.
.. include:: ../compatibility-check.rst
:Start-after: compatibility-check:
.. include:: ../bootable-usb/bootable-usb-linux.rst
:Start-after: bootable-usb-linux:
:end-before: download-cl-image
.. include:: ../bootable-usb/bootable-usb-linux.rst
:Start-after: download-cl-image:
:end-before: verify-checksum
.. include:: ../bootable-usb/bootable-usb-linux.rst
:Start-after: verify-checksum:
:end-before: copy-usb-linux
.. include:: ../bootable-usb/bootable-usb-linux.rst
:Start-after: copy-usb-linux:
:end-before: usb-next
.. _install-on-target:
Install Clear Linux on your target system
*****************************************
We formatted the previously created USB drive as a UEFI boot device. Our
target system has a hard drive installed containing a single primary
partition. The target system needs a wired Internet connection with DHCP.
Follow these steps to install |CL| on the target system:
#. Insert the USB drive into an available USB slot.
#. Power on the system.
#. Open the system BIOS setup menu, normally by pressing the :kbd:`F2` key.
Your BIOS setup menu entry point may vary.
#. In the setup menu, enable the UEFI boot and set the USB drive as the first
option in the device boot order.
#. Save these settings and exit.
#. Reboot the target system.
#. The |CL| Installer menu will start as shown in Figure 1.
Select :guilabel:`Clear Linux OS for Intel Architecture` and press the
:kbd:`Enter` key or wait five seconds to automatically select it.
.. figure:: figures/bare-metal-install-1.png
:scale: 50 %
:alt: Clear Linux boot menu
Figure 1: :guilabel:`Clear Linux boot menu`
#. This will take you into the :guilabel:`Clear Linux OS for Intel
Architecture Installer` menu as shown in figure 2 and explains how to
navigate through the |CL| installer setup menus.
.. figure:: figures/bare-metal-install-2.png
:scale: 50 %
:alt: Clear Linux OS for Intel Architecture Installer
Figure 2: :guilabel:`Clear Linux OS for Intel Architecture Installer`
Press the :kbd:`Enter` key.
#. The :guilabel:`Keyboard selection` menu shown in figure 3 allows you to set
up the keyboard layout that you will be using to navigate within the |CL|
installer setup menus.
.. figure:: figures/bare-metal-install-3.png
:scale: 50 %
:alt: Keyboard Selection
Figure 3: :guilabel:`Keyboard Selection`
For this guide we will select :menuselection:`Keyboard Selection -->
< * us >` for the keyboard mapping, which should already be highlighted.
Press the :kbd:`Enter` key to continue to the next menu.
Network requirements
====================
The :guilabel:`Network Requirements` menu, the first step of the |CL|
installer setup process, will attempt to connect to the |CL| update server
where the installer image is located. Once the connection to the |CL| update
server is established, you will see a screen similar to the one shown in
figure 4:
.. figure:: figures/bare-metal-install-4.png
:scale: 50 %
:alt: Network Requirements
Figure 4: :guilabel:`Network Requirements`
If you need to configure any :guilabel:`Proxy Settings` to gain access to the
update server, enter the appropriate address and port of your proxy server in
the :guilabel:`HTTPS proxy:` field. Select the :guilabel:`< Set proxy
configuration >` button and press :kbd:`Enter`. You will then see the
connection to the update server established.
Optionally, set up a :guilabel:`static IP configuration` to your |CL|
installer image. Enter the required information in the :guilabel:`Interface`,
:guilabel:`IP address`, :guilabel:`Subnet mask`, :guilabel:`Gateway` and
:guilabel:`DNS` fields and then select the :guilabel:`< Set static IP
configuration >` button and press the :kbd:`Enter` key.
The information displayed in the lower right quadrant of the screen shows the
current IP configuration for the |CL| update server where the installer image
is located.
.. note::
If you are having difficulty establishing a connection to the update server
and you see the message :guilabel:`none detected, install will fail`, you
can press the :kbd:`Tab` key to highlight the :guilabel:`< Refresh >`
button and press :kbd:`Enter` to attempt to reconnect to the |CL| update
server. If this fails to establish a connection after multiple attempts,
reboot your system and return to this step.
Once the connection to the |CL| udpate server is established, use the
:kbd:`Tab` key to advance to the :guilabel:`< Next >` button and press
:kbd:`Enter` to advance to the next |CL| installer setup menu.
Choose Clear Linux installer action
===================================
The :guilabel:`Choose Action` menu is where you can choose to install, repair,
open a shell, or exit the |CL| installer. This menu is shown in figure 5:
.. figure:: figures/bare-metal-install-5.png
:scale: 50 %
:alt: Choose Action
Figure 5: :guilabel:`Choose Action`
#. Select the :menuselection:`Choose action --> Install` menu item to continue
the installation process.
The :menuselection:`Choose action --> Repair` menu option will run the
:command:`swupd --fix` command to correct any issues found with the system
software that has already been installed on your system and correct any
issues found by overwriting the incorrect file content, adding missing
files, fixing permissions and any additional changes required to return the
file to it's original content and permissions.
The :menuselection:`Choose action --> Shell` menu item opens a terminal
session on your system as the root user and you will be able to manage your
system from this console. When you are finished, type :command:`exit` to
return to the :guilabel:`Choose Action` menu.
The :menuselection:`Choose action --> Exit` menu option terminates the |CL|
installation process and the system will shut down.
#. You will be prompted to join the :guilabel:`Stability Enhancement Program`
as shown in figure 6. Press the :kbd:`Spacebar` or :kbd:`Enter` key while
the cursor is in the :guilabel:`[ ] Yes.` button to enable this
functionality and then select the :guilabel:`< Next >` button to advance to
the next menu item.
.. figure:: figures/bare-metal-install-6.png
:scale: 50 %
:alt: Stability Enhancement Program
Figure 6: :guilabel:`Stability Enhancement Program`
If you choose not to enable this functionality during this step, you can
install the ``telemetrics`` software bundle at a later time. As stated in
the menu, this feature only collects anonymous information about your
system to help improve system stability and no personally identifiable
information is collected. Please visit our website to
`learn more about telemetry.`_
Choose Clear Linux installation type
************************************
Figure 7 shows the next step of the |CL| installer:
:guilabel:`Choose installation Type`. Chose whether to install |CL|
**automatically** or **manually**. To end the installer process and shut down
the system, select the :guilabel:`< Exit >` button.
.. figure:: figures/bare-metal-install-7.png
:scale: 50 %
:alt: Choose installation type
Figure 7: :guilabel:`Choose installation Type`
If you select :guilabel:`< Automatic >` as the installation type, the |CL|
Installer will add the minimum amount of functionality required for a fully
functional |CL| system. You will not be able to modify the disk layout, add
a user or any other tasks that the manual installation process will allow.
With the :guilabel:`< Manual(Advanced) >` option, you can do the following
additional tasks during |CL| Installer setup:
* Modify the disk layout using the cgdisk utility.
* Add additional command-line parameters to the kernel.
* Create a hostname for your system.
* Create an administrative user.
* Add additional software bundles to enhance the functionality of your initial
|CL| installation.
* Optionally, set up a static IP address for your system.
If you want to perform any of these additional tasks, select the
:guilabel:`< Manual(Advanced) >` menu item and follow the steps in our
:ref:`bare-metal-manual-install` to complete the |CL| manual installation
process. Otherwise, you can follow the |CL| automatic installation steps.
Clear Linux automatic installation
**********************************
To install the minimum components for your |CL| implementation, select the
:guilabel:`< Automatic >` menu item shown in figure 7 and press the
:kbd:`Enter` key.
The :guilabel:`Choose target device for installation` screen shown in figure 8
appears. Move the cursor to the desired target and press the :kbd:`Enter`
key.
.. figure:: figures/bare-metal-install-8.png
:scale: 50 %
:alt: Choose target device for installation
Figure 8: :guilabel:`Choose target device for installation`
In this example we selected the single primary partition from our hard drive.
With all the |CL| installer setup information gathered for the automatic
installation option, the |CL| Installer prompts you to begin the actual
installation as shown in figure 9.
.. figure:: figures/bare-metal-install-9.png
:scale: 50 %
:alt: Begin installation
Figure 9: :guilabel:`Begin installation`
When you are satisfied with the information you have entered, select the
:guilabel:`< Yes >` button and press :kbd:`Enter` to begin installing |CL|.
|CL| Installation begins and each step shows its status as it progresses
through the automated installation process.
Once all steps have completed, you will see the `:guilabel:`Successful
installation` status message and the :guilabel:`< Ok >` button is highlighted
as shown in figure 10. Press the :kbd:`Enter` key to continue.
.. figure:: figures/bare-metal-install-10.png
:scale: 50 %
:alt: Installation complete
Figure 10: :guilabel:`Installation complete`
Figure 11 shows the installer's final screen prompting you that the
installation completed successfully and the system will reboot. Press the
:kbd:`Enter` key and remove the USB media while the system restarts.
.. figure:: figures/bare-metal-install-11.png
:scale: 50 %
:alt: Successful installation
Figure 11: :guilabel:`Successful Installation`
Set up your root account
========================
Once the |CL| installation is complete and the system boots, a full screen
console requests your login: as shown in figure 12:
.. figure:: figures/bare-metal-install-12.png
:scale: 50 %
:alt: Login screen
Figure 12: :guilabel:`Login screen`
#. At the initial login prompt, enter: ``root``
#. Once prompted, enter a new password.
#. Re-enter the password to verify it.
You have now set your root password and are logged in with root privileges.
**Congratulations!**
You have successfully installed |CL| on a bare metal system using the
automatic installation method and set the password for the ``root`` user.
The automatic installation of |CL| is designed to install with minimal
software overhead. Therefore, some housekeeping and package installations
could be needed before you can take full advantage of the |CL| operating
system. These instructions are captured in the :ref:`enable-user-space`.
* Create a new user
* Update the OS to its most current version using `swupd`.
* Install the most common applications for system administrators and
developers using bundles.
* Setup a new user.
* Setup `sudo` privileges for that new user.
* Install a GUI using those `sudo` privileges.
.. _`information about stateless`:
https://clearlinux.org/features/stateless
.. _`learn more about telemetry.`:
https://clearlinux.org/features/telemetry
.. _`NUC6i5SYH product page`:
http://www.intel.com/content/www/us/en/nuc/nuc-kit-nuc6i5syh.html
@@ -0,0 +1,282 @@
.. _bare-metal-manual-install:
Bare metal manual installation guide
####################################
This section contains the steps for a |CL| manual installation. It picks up
where the :ref:`bare-metal-install` left off:
Select the :guilabel:`< Manual(Advanced) >` menu option as seen in figure
1, to do the following additional tasks during the |CL| Installer setup:
* :ref:`Modify the disk layout using the cgdisk utility<cgdisk-manual-install>`
* Add additional command-line parameters to the kernel
* Create a hostname for your system
* Create an administrative user
* Add additional software bundles to enhance the functionality of your initial
|CL| installation
* Optionally set up a static IP address for your system
Begin the manual installation process
*************************************
#. Move the cursor to the :guilabel:`< Manual(Advanced) >` menu item
and press the :kbd:`Enter` key.
.. figure:: figures/bare-metal-manual-install-1.png
:scale: 50 %
:alt: Choose installation Type
Figure 1: :guilabel:`Choose installation Type`
#. The :guilabel:`Choose partitioning method` screen is shown in figure 2.
.. figure:: figures/bare-metal-manual-install-2.png
:scale: 50 %
:alt: Choose partitioning method
Figure 2: :guilabel:`Choose partitioning method`
If your hard drive has already been partitioned for a Linux system, you can
select the :guilabel:`< Use default partition and mount scheme on target
device >` menu item and press :kbd:`Enter` to move to the next step of the
installer setup process.
.. _cgdisk-manual-setup:
Otherwise, to set up your hard drive partitions manually before moving to
the next step, select the :guilabel:`< Manually configure mounts and
partitions >` menu item and follow the instructions for :ref:`using CGDISK
to set up your Clear Linux hard drive<cgdisk-manual-install>`.
.. _choose-target-device:
Choose target device for installation
=====================================
The :guilabel:`Choose target device for installation` menu, shown in figure 3,
displays the current device and partition information. In
this example, ``/dev/sda`` is the only drive on the system with three
partitions defined and assigned. The menu cursor highlights the partition
to install |CL| onto.
#. Select the :guilabel:`< Partition /dev/sda >` button and press the
:kbd:`Enter` key.
.. note::
To return to the previous menu, press the :kbd:`Tab` key
to highlight the :guilabel:`< Previous >` button and press :kbd:`Enter`
to return to the previous menu.
.. figure:: figures/bare-metal-manual-install-3.png
:scale: 50 %
:alt: Choose target device for installation
Figure 3: :guilabel:`Choose target device for installation`
#. After selecting the :guilabel:`< Partition /dev/sda >` button you will be
presented with a warning screen as shown in figure 4 with the
:guilabel:`< No >` button highlighted. If you are satisfied this is the
device that you want to install |CL| onto, use the :kbd:`Tab` key to
highlight the :guilabel:`< Yes >` button and press :kbd:`Enter` to proceed
to the next step.
.. figure:: figures/bare-metal-manual-install-4.png
:scale: 50 %
:alt: Device installation warning
Figure 4: :guilabel:`Device installation warning`
Additional manual installer settings
====================================
The next steps of the manual installer setup process allows you to:
* Set up any additional command-line parameters to the kernel.
* Create a hostname for your system.
* Set up an administrative user.
* Install additional software bundles.
* Optionally create a static IP address for your system.
#. The :guilabel:`Append to kernel cmdline` menu shown in figure 5 allows you
to add additional options to the kernel command-line to further customize
your installation. Normally this is not required but if there are
specific options that need to be set in the Linux kernel you can enter them
here. For a complete list of command-line parameters for the Linux kernel
you can visit the official documentation of the `latest kernel's
command-line parameters`_.
Add any additional command-line parameters in the :guilabel:`Append to
cmdline:` field and then press the :kbd:`Tab` key to move to the
:guilabel:`< Next >` button and press :kbd:`Enter`.
.. figure:: figures/bare-metal-manual-install-5.png
:scale: 50 %
:alt: Append to kernel cmdline
Figure 5: :guilabel:`Append to kernel cmdline`
#. The :guilabel:`Configuring Hostname` menu shown in figure 6 suggests
a hostname string prefaced with "clr". You can make your hostname anything
meaningful and unique. Once complete, press the :kbd:`Tab` key to move to
the :guilabel:`< Next >` button and press :kbd:`Enter`.
.. figure:: figures/bare-metal-manual-install-6.png
:scale: 50 %
:alt: Configure Hostname
Figure 6: :guilabel:`Configure Hostname`
To learn more about hostname naming conventions and restrictions, you can
check this `wiki page about hostnames`_.
#. The :guilabel:`User configuration` menu shown in figure 7 allows you to
create a userid with administrative privileges. If you do not want to create a
user at this time, select :guilabel:`< No user creation (login as root) >` to
skip this step and proceed to the :guilabel:`Bundle selector` menu.
.. figure:: figures/bare-metal-manual-install-7.png
:scale: 50 %
:alt: User configuration
Figure 7: :guilabel:`User configuration`
#. To create a userid, select the :guilabel:`< Create an administrative user >`
field and press :kbd:`Enter` to go to the the next screen.
#. You will be presented with the second :guilabel:`User configuration` menu
shown in figure 8. You are only required to fill in the
:guilabel:`Username`, :guilabel:`Password`, and :guilabel:`Confirm password`
fields.
#. To give the user administrative privileges, select the
:guilabel:`Add user to the sudoers?` field to add the user to the ``wheel``
group. This enables using the :command:`sudo` command for the new user.
Once you have entered all the data for this menu, press the :kbd:`Tab` key
to highlight the :guilabel:`< Next >` button and press :kbd:`Enter`.
.. figure:: figures/bare-metal-manual-install-8.png
:scale: 50 %
:alt: User configuration - create user
Figure 8: :guilabel:`User configuration - create user`
#. The :guilabel:`Bundle selector` menu shown in figure 9 allows you to
add additional software bundles to your initial |CL| installation. In this
example we select all additional bundles offered by pressing the
:kbd:`Tab` key to go to each field and pressing the :kbd:`Spacebar` or the
:kbd:`Enter` key to select each bundle. This menu will also list the
additional :guilabel:` --- required ---` software bundles that will be
installed during the |CL| installation.
.. figure:: figures/bare-metal-manual-install-9.png
:scale: 50 %
:alt: Bundle selector
Figure 9: :guilabel:`Bundle selector`
For a complete description of the content of these additional bundles, go to
the :ref:`software bundle list<available-bundles>` and select the name for a
specific bundle to show the contents within the bundle.
Target system network configuration
===================================
Before the actual |CL| installation begins, we must set up the
:guilabel:`Network configuration` shown in figure 10. Select
:guilabel:`< Use DHCP >` to have an IP address automatically assigned when
the system boots up.
.. figure:: figures/bare-metal-manual-install-10.png
:scale: 50 %
:alt: Network configuration
Figure 10: :guilabel:`Network configuration`
You can optionally set up a static IP address for your system. Select the
:guilabel:`< Use static IP configuration >` menu item and fill in the
required fields.
Begin installation
******************
The |CL| installer is now ready to use the information you provided on the
previous sections to begin the actual installation. Figure 11 shows the
installer's prompt to begin the installation.
.. figure:: figures/bare-metal-manual-install-11.png
:scale: 50 %
:alt: Begin installation
Figure 11: :guilabel:`Begin installation`
When you are satisfied with the information entered, select the
:guilabel:`< Yes >` button and press :kbd:`Enter` to begin installing |CL|.
The |CL| Installation begins and each step shows its status as it progresses
through the manual installation process as shown in figure 12.
.. figure:: figures/bare-metal-manual-install-12.png
:scale: 50 %
:alt: Installation status
Figure 12: :guilabel:`Installation status`
Once all steps have completed, you will see the ``Successful installation``
status message and the :guilabel:`< Ok >` button is highlighted as shown in
figure 13. Press the :kbd:`Enter` key to continue.
.. figure:: figures/bare-metal-manual-install-13.png
:scale: 50 %
:alt: Installation complete
Figure 13: :guilabel:`Installation complete`
Congratulations! The installation completed successfully and the system will
reboot. Figure 14 shows the installer's final prompt. Press the :kbd:`Enter`
key and remove the USB media while the system restarts.
.. figure:: figures/bare-metal-manual-install-14.png
:scale: 50 %
:alt: Successful Installation
Figure 14: :guilabel:`Successful Installation`
Once the system boots, the Gnome Desktop sign-in screen shown in figure 15
appears:
.. figure:: figures/bare-metal-manual-install-15.png
:scale: 50 %
:alt: Gnome sign-in screen
Figure 15: :guilabel:`Gnome sign-in screen`
Click on the :guilabel:`username` you created, enter the password, and you
will be logged into the system. The Gnome 3 desktop appears as shown in
figure 16:
.. figure:: figures/bare-metal-manual-install-16.png
:scale: 50 %
:alt: Gnome Desktop Manager
Figure 16: :guilabel:`Gnome Desktop Manager`
**Congratulations!**
You have successfully installed |CL| on a bare metal system using the
manual installation method.
Visit our :ref:`tutorials <tutorials>` section for examples on using your
|CL| system.
.. _`information about stateless`:
https://clearLinux.org/features/stateless
.. _`wiki page about Hostnames`:
https://en.wikipedia.org/wiki/Hostname
.. _`learn more about telemetry.`:
https://clearLinux.org/features/telemetry
.. _`latest kernel's command-line parameters`:
https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html
@@ -0,0 +1,304 @@
.. _cgdisk-manual-install:
Clear Linux partitioning using CGDISK
#####################################
These instructions guide you through the initial setup of your hard drive
partitions using the :command:`cgdisk` utility as part of the |CL| manual
installation process. If you do not wish to continue creating your own
partitions, :ref:`return to the bare metal manual installation
<cgdisk-manual-setup>`.
Prerequisites
*************
This guide assumes that you have followed the :ref:`bare-metal-install`
guide and intend to :ref:`install Clear Linux manually
<bare-metal-manual-install>` by choosing the :guilabel:`< Manual(Advanced) >`
menu item on the :guilabel:`Choose Installation Type` |CL| Installer setup
menu as shown in figure 1:
.. figure:: figures/cgdisk-manual-install-1.png
:scale: 50 %
:alt: Choose installation Type
Figure 1: :guilabel:`Choose installation Type`
Partition using CGDISK
**********************
We use the :command:`cgdisk` application to create a
:abbr:`GPT (GUID Partition Table)` since |CL| only supports the
:abbr:`UEFI (Unified Extensible Firmware Interface)` specification. For a
complete description of the :command:`cgdisk` utility and how to use it, visit
Rod Smith's website for a `GPT fdisk tutorial`_.
In this guide, we intend to use an unpartitioned hard drive for the |CL|
installation.
#. On the :guilabel:`Choose partitioning method` menu, shown in figure 2,
select the :guilabel:`< Manually configure mounts and partitions >` menu
item to manually partition your hard drive.
.. figure:: figures/cgdisk-manual-install-2.png
:scale: 50 %
:alt: Choose partitioning method
Figure 2: :guilabel:`Choose partitioning method`
The screen then shows the current device on your system you can partition.
In this example, shown in figure 3, :file:`/dev/sda` is available but
does not have any partitions defined.
#. Select the :guilabel:`< Partition /dev/sda >` menu item and press
:kbd:`Enter` to begin the process of modifying this disk.
.. figure:: figures/cgdisk-manual-install-3.png
:scale: 50 %
:alt: Choose a drive to partition using cgdisk tool
Figure 3: :guilabel:`Choose a drive to partition using cgdisk tool`
The :command:`cgdisk` application starts and displays the settings for
:file:`/dev/sda` as shown in figure 4.
.. figure:: figures/cgdisk-manual-install-4.png
:scale: 50 %
:alt: cgdisk
Figure 4: :guilabel:`cgdisk`
Linux Partition setup
*********************
In order to properly set up the |CL| partitioning scheme, we create three
partitions using the :command:`cgdisk` utility in the following order:
#. EFI boot partition
#. Linux swap partition
#. Linux root partition
For a complete understanding of these partitions, you can review the
`Linux partitioning scheme`_ information.
Create the EFI boot partition
=============================
#. With the free space highlighted in the :command:`cgdisk` utility,
you can either select the :guilabel:`[ New ]` button and press :kbd:`Enter`
or press the :kbd:`N` key to define a new partition.
The utility prompts you to enter the first sector. Press the :kbd:`Enter`
key to accept the default value shown.
.. note::
In this example, the first sector starts at 2048. For more information
about alignment using the cgdisk tool, see
`Rod Smith's Partitioning Advice about alignment`_.
#. The program then prompts you for the size of the partition. To create a
512MB partition, enter 512M and press :kbd:`Enter` as shown in figure 5:
.. figure:: figures/cgdisk-manual-install-5.png
:scale: 50 %
:alt: cgdisk - New
Figure 5: :guilabel:`cgdisk - New partition`
#. To define the type of partition, the :command:`cgdisk` utility has
pre-defined partition types. Press the :kbd:`L` key to show the hex codes
you can use. Use these codes to set the correct
:abbr:`GUID (Globally unique identifier)` for *GPT partition types* as
shown in figure 6:
.. figure:: figures/cgdisk-manual-install-6.png
:scale: 50 %
:alt: cgdisk - hex codes for partition types
Figure 6: :guilabel:`cgdisk - hex codes for partition types`
We need to use the following three codes for our partitions:
* ef00 - EFI System
* 8200 - Linux swap
* 8300 - Linux filesystem
#. To create the EFI boot partition, enter ``ef00`` as the hexcode for this
partition and press :kbd:`Enter`.
#. To name the partition, enter ``boot`` and press :kbd:`Enter` to finish
setting up the EFI boot partition. The utility shows the first partition as
an ``EFI System`` 512MiB partition named ``boot`` as shown in figure 7:
.. figure:: figures/cgdisk-manual-install-7.png
:scale: 50 %
:alt: cgdisk - boot partition defined
Figure 7: :guilabel:`cgdisk - boot partition defined`
Create the Linux swap partition
===============================
Next, we must create the Linux swap partition. In figure 7, notice the two
areas defined as free space. We created the first 1007.0 KiB free space area
when we started the EFI boot partition at sector 2048. For more information
about it, review `Rod Smith's Partitioning advice about alignment`_.
#. Move your cursor to highlight the larger free space of 334.8 GiB at the
bottom of the partition list before you begin to create the Linux swap
partition as shown in figure 8:
.. figure:: figures/cgdisk-manual-install-8.png
:scale: 50 %
:alt: cgdisk - free space selection
Figure 8: :guilabel:`cgdisk - free space selection`
#. To create the Linux swap partition, with the largest free space
highlighted, select the :guilabel:`[ New ]` button or press the :kbd:`N`
key and enter the following values for the Linux swap partition:
.. code-block:: console
First sector: press :kbd:`Enter` to select the default value
Size in sectors: 4G
Hex code or GUID: 8200
Enter new partition name: swap
Your :command:`cgdisk` partition list should now look like figure 9.
.. figure:: figures/cgdisk-manual-install-9.png
:scale: 50 %
:alt: cgdisk - swap partition defined
Figure 9: :guilabel:`cgdisk - swap partition defined`
Create the Linux filesystem partition
*************************************
Lastly, we must create the the Linux filesystem partition to use it as the
root mount point for you |CL| installation.
#. Highlight the largest free space entry at the bottom of the list and select
the :guilabel:`[ New ]` button or press the :kbd:`N` key and enter the
following values to create the Linux filesystem partition:
.. code-block:: console
First sector: press :kbd:`Enter` to select the default value
Size in sectors: press :kbd:`Enter` to select the default value, which
is the remainder of available space on the disk
Hex code or GUID: 8300
Enter new partition name: root
With all the partitions now defined, you should see a list similar to what
is shown in figure 10:
.. figure:: figures/cgdisk-manual-install-10.png
:scale: 50 %
:alt: cgdisk - defined partitions
Figure 10: :guilabel:`cgdisk - defined partitions`
#. If you are satisfied that the partition scheme is correct, you need to
write this GPT to the hard drive. Select the :guilabel:`[ Write ]` button
or press the :kbd:`W` key and the :command:`cgdisk` program prompts with:
.. code-block:: console
Are you sure you want to write the partition table to disk? (yes or no)
#. Enter ``yes`` and press :kbd:`Enter` to write this data to the hard drive
and then select the :guilabel:`[ Quit ]` button or press :kbd:`Q` to exit
the :command:`cgdisk` utility.
#. You see the partitions that were created as shown in figure 11. Move your
cursor to the :guilabel:`< Next >` button and press :kbd:`Enter`.
.. figure:: figures/cgdisk-manual-install-11.png
:scale: 50 %
:alt: defined partitions
Figure 11: :guilabel:`defined partitions`
Set the mount points
********************
The :guilabel:`Set mount points` menu sets the mount points that the |CL|
installer uses for your |CL| installation and is shown in figure 12.
.. figure:: figures/cgdisk-manual-install-12.png
:scale: 50 %
:alt: Set mount points
Figure 12: :guilabel:`Set mount points`
In this menu you need to set the mount points for the boot and root partitions
and select to format them.
#. Highlight the EFI System partition type menu entry and press the
:kbd:`Enter` key to edit this item. The :guilabel:`Set mount point of
sda1` menu is be shown.
#. For the :guilabel:`Enter mount point:` type `/boot` and press
:kbd:`Enter`.
#. Enable formatting the partition by checking the :guilabel:`[ ] Format`
toggle field.
Figure 13 shows the entered information. Select the :guilabel:`< Yes >`
button and press :kbd:`Enter`.
.. figure:: figures/cgdisk-manual-install-13.png
:scale: 50 %
:alt: Set mount point of sda1
Figure 13: :guilabel:`Set mount point of sda1`
#. Do the same for the Linux filesystem partition by highlighting the
:guilabel:`Linux filesystem` menu entry and entering the information shown
in figure 14 to set the :guilabel:`Enter mount point:` to :file:`/` and
enable formatting:
.. figure:: figures/cgdisk-manual-install-14.png
:scale: 50 %
:alt: Set mount point of sda3
Figure 14: :guilabel:`Set mount point of sda3`
The final :guilabel:`Set mount points` menu item looks like figure 15:
.. figure:: figures/cgdisk-manual-install-15.png
:scale: 50 %
:alt: Set mount point completed
Figure 15: :guilabel:`Set mount points completed`
#. Select the :guilabel:`< Next >` button and press :kbd:`Enter` to proceed to
the :guilabel:`Warning!` menu to accept your changes as shown in figure 16.
.. figure:: figures/cgdisk-manual-install-16.png
:scale: 50 %
:alt: Warning
Figure 16: :guilabel:`Warning`
Highlight the :guilabel:`< Yes >` button and press :kbd:`Enter` to accept
these changes and move on to the next step of the |CL| manual install
process.
This completes the process of manually setting up your hard drive
partitions and you can now :ref:`continue with the Clear Linux manual
install<choose-target-device>`.
.. _`GPT fdisk tutorial`:
http://www.rodsbooks.com/gdisk/
.. _`Rod Smith's Partitioning Advice about alignment`:
http://www.rodsbooks.com/gdisk/advice.html#alignment
.. _`information about swupd`:
https://clearlinux.org/features/software-update
.. _`Linux partitioning scheme`:
https://wiki.archlinux.org/index.php/partitioning#Partition_scheme
Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 269 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 323 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 270 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 148 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 236 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 123 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 181 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 131 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 159 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 861 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 633 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 138 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 124 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 138 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 215 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 337 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 118 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 138 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 107 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 811 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 127 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 127 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 149 KiB

@@ -16,6 +16,8 @@ information and instructions on how to complete pre-install tasks.
../reference/system-requirements
bare-metal-install/bare-metal-install
bare-metal-install/bare-metal-manual-install
bare-metal-install/cgdisk-manual-install
virtual-machine-install/virtual-machine-install
live-image
compatibility-check
@@ -0,0 +1,180 @@
.. _enable-user-space:
Create and enable a new user space
##################################
This section provides steps to complete the following basic setup tasks for
a newly installed |CL| system:
* Create a new user
* Update the OS to its most current version using `swupd`.
* Install the most common applications for system administrators and
developers using bundles.
* Setup a new user.
* Setup `sudo` privileges for that new user.
* Install a GUI using those `sudo` privileges.
.. note::
You must be logged in as the root user to complete the tasks in this
section.
Create a new user
=================
To create a new user and set a password for that user, enter the following
commands as a root user:
.. code-block:: console
useradd <userid>
passwd <userid>
Replace <userid> with the name of the user account you want to create and
with the password for said user. The :command:`passwd` command prompts you
to enter a new password and then retype the new password for the new user
account you just created.
Install and update software
===========================
|CL| has a unique application and architecture to add and update applications
and to perform system updates called software update utility or
:command:`swupd`. Software applications are installed as bundles using the
sub-command :command:`bundle-add`.
The `os-clr-on-clr` bundle installs the vast majority of
applications useful to a system administrator or a developer. The bundle
contains other bundles such as `sysadmin-basic`, `editors`, `c-basic`,
`dev-utils-dev`, and other useful packages.
Install the `os-clr-on-clr` bundle using the software update
utility:
.. code-block:: console
swupd bundle-add os-clr-on-clr
.. note::
The image we installed may not be the latest version of |CL| available on
the server. However, whenever the command
:command:`swupd bundle-add <bundle>` runs, the OS is updated to the latest
available version. Our website provides more `information about swupd`_.
We provide the full list of bundles and packages installed with the
`os-clr-on-clr`_ bundle. Additionally, we have listed
`all Clear Linux bundles`_, active or deprecated. Click any bundle on the
list to view the manifest of the bundle.
Finish setting up your new user
===============================
Before logging off as root and logging into your new user account, we must
enable the :command:`sudo` command for your new `<userid>`.
To be able to execute all applications with root privileges, we must add the
`<userid>` to the `wheel group`_ and enable the wheel group in the
:file:`/etc/sudoers` file.
#. Add `<userid>` to the wheel group:
.. code-block:: console
usermod -G wheel -a <userid>
#. Open the :file:`/etc/sudoers` file:
.. code-block:: console
vi /etc/sudoers
.. note::
Normally, we would use the visudo script to edit the :file:`/etc/sudoers`
file to safely modify the contents of the file. In this instance, the
file does not exist yet. Therefore, we create the initial instance of
the file.
#. In the vi\* editor window, press the :kbd:`o` key to open a new line.
#. Add the following line to the file:
.. code-block:: console
%wheel ALL=(ALL) ALL
#. To save the changes to the file and exit vi, press the :kbd:`ESC` key
followed by the :kbd:`:` and :kbd:`x` keys.
.. important::
Creating the file logged as the root user keeps the permissions of the
file with the root user.
#. Now, we can log out of root and into our new `<userid>`.
To log off as root, enter :command:`exit`.
The command will bring you back to the `login:` prompt.
#. Enter the new `<userid>` and the password you created earlier.
You will now be in the home directory of `<userid>`. The bundle
`os-clr-on-clr`_ contains the majority of applications that a developer or
system administrator would want but it does not include a graphical user
interface. The `desktop` bundle includes the Gnome Desktop Manager and
additional supporting applications.
Install a GUI to test sudo
--------------------------
To test the :command:`sudo` command and ensure it is set up correctly,
install the Gnome Desktop Manager (gdm) and start it.
#. To install Gnome using :command:`swupd`, enter the following command:
.. code-block:: console
sudo swupd bundle-add desktop
#. To start the Gnome Desktop Manager, enter the following command:
.. code-block:: console
systemctl start gdm
#. The system prompts you to authenticate the user. Enter the password for
`<userid>` and the Gnome Desktop should start as shown in figure 13:
.. figure:: figures/gnomedt.png
:scale: 50 %
:alt: Gnome Desktop
Figure 13: :guilabel:`Gnome Desktop`
#. To start the Gnome Desktop each time you start your system, enter
the following command:
.. code-block:: console
systemctl enable gdm
Next steps
==========
With your system now running |CL| many paths are open for you.
Visit our :ref:`tutorials <tutorials>` page for examples on using your |CL|
system.
.. _`information about swupd`:
https://clearlinux.org/features/software-update
.. _`os-clr-on-clr`:
https://github.com/clearlinux/clr-bundles/blob/master/bundles/os-clr-on-clr
.. _`all Clear Linux bundles`:
https://github.com/clearlinux/clr-bundles/tree/master/bundles
.. _`wheel group`:
https://en.wikipedia.org/wiki/Wheel_(Unix_term)

Before

Width:  |  Height:  |  Size: 1.4 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

@@ -9,6 +9,7 @@ maintaining |CLOSIA| after :ref:`installation <get-started>` is completed.
.. toctree::
:maxdepth: 2
enable-user-space
update
bulk-provision
mixer