Compare commits
297 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| d919a7ebab | |||
| 75dca16915 | |||
| f5b036fb9e | |||
| bbefa05d09 | |||
| f2afe2420b | |||
| b37f135399 | |||
| 77f5c1594a | |||
| 03b0107829 | |||
| d18e7698db | |||
| 60be280fac | |||
| 739ecbe4a6 | |||
| c21f3b9301 | |||
| 145679ac60 | |||
| a88c59bdfd | |||
| 7f6b4a935c | |||
| 0128b5243b | |||
| ecbbb78759 | |||
| 2b5c7fb1ef | |||
| b94c22cf59 | |||
| 26468b6203 | |||
| c2d0ece7f5 | |||
| 6c900602eb | |||
| 4df59f7fe9 | |||
| d894493235 | |||
| 159263d7b9 | |||
| e400af6439 | |||
| 1ac170279a | |||
| 1444fee6af | |||
| 1af09259a8 | |||
| 17f5f7402b | |||
| a395fc16ca | |||
| 56d799c727 | |||
| 25873903eb | |||
| 61311d70de | |||
| 56b197c276 | |||
| fb217bc924 | |||
| 2cd9ea94f2 | |||
| e514baa3d3 | |||
| 82836666c9 | |||
| 54f7bb9c10 | |||
| 276d764221 | |||
| 6ceebea52e | |||
| c34f8a148b | |||
| 7ead9926de | |||
| 79d967924a | |||
| c0e5ffa2db | |||
| f4b275c480 | |||
| 549b9a5585 | |||
| ac4c443305 | |||
| fc3fbda322 | |||
| e64a2d5212 | |||
| 9145b8ce52 | |||
| da942ec694 | |||
| 950fa154ea | |||
| 0e54ac7da6 | |||
| ed17a45e71 | |||
| d2c9620079 | |||
| 35e09fc2e4 | |||
| 5bc2cec874 | |||
| 4c202b66d3 | |||
| e61dec33be | |||
| 81db392938 | |||
| 5c2f5e804f | |||
| 47bc6a3dad | |||
| dd693b5256 | |||
| d419346adc | |||
| 137d613a91 | |||
| a081d9ed11 | |||
| fd386a9130 | |||
| b79ceb24fb | |||
| 534514c83e | |||
| c9c36fb01c | |||
| a6fb705169 | |||
| 816df17a6d | |||
| 7b75a68df9 | |||
| aded6c6957 | |||
| 66d1c7fb9a | |||
| a58b36117d | |||
| 09c0a66193 | |||
| a5c93dbc69 | |||
| 4cb18f4643 | |||
| 0cc215db84 | |||
| 68d078ee4c | |||
| 92b30e5349 | |||
| 33bf629eef | |||
| ba6f02b318 | |||
| 822a3b9e04 | |||
| 75ba97561e | |||
| 35eeed664f | |||
| d5636371f6 | |||
| 56f9440936 | |||
| d31836951e | |||
| 214ad3890d | |||
| 44fd806ade | |||
| c8bdc52e44 | |||
| aa9fe2bd27 | |||
| 8de92f42d7 | |||
| e6bce3b1e0 | |||
| 5ac83dc3e8 | |||
| 4f288d0239 | |||
| af933879ab | |||
| 1161f50adf | |||
| e2c79d33cd | |||
| b376c2c284 | |||
| 689fcc2cff | |||
| 55141d9e9a | |||
| 8e4fa016a6 | |||
| 83a1df3d21 | |||
| 1e2b3fdfa4 | |||
| 98f6c7c5d5 | |||
| 4180c34902 | |||
| a3ea96283d | |||
| 404ef3b18b | |||
| e2db667098 | |||
| d009fbd3bd | |||
| 3d66d2a719 | |||
| 300e8e7b5b | |||
| 23c3285766 | |||
| 0e40388eda | |||
| fe2fe7268d | |||
| 296dbbfa16 | |||
| f3e8dc8307 | |||
| 68d9e7ca76 | |||
| 1d5b582ace | |||
| 2cefc36098 | |||
| 945531b04a | |||
| f6e5be79c1 | |||
| 6a1840ecf4 | |||
| 35785b2f3d | |||
| bee312a109 | |||
| ad208d0e21 | |||
| d8ce35eef8 | |||
| 6aafe95620 | |||
| d3551dd7fb | |||
| 0f38c2363a | |||
| 02dbf2b8e2 | |||
| b8dff12df4 | |||
| a083d600a8 | |||
| 514a61042d | |||
| e5dfd2adb6 | |||
| 0d09f0a59f | |||
| 03337a6c13 | |||
| e04f718fd2 | |||
| 892d064df3 | |||
| d2603e5aec | |||
| 1d04a16d61 | |||
| c95d8c08a0 | |||
| b2e9a88202 | |||
| eda7f5a53c | |||
| 279b316fd1 | |||
| 710a5ca7b1 | |||
| 1beb4065ea | |||
| a4fe59fa53 | |||
| e15f049aad | |||
| 1567b43a22 | |||
| 5098d6de32 | |||
| fce6846e5c | |||
| c692fbfd8f | |||
| 86e3645465 | |||
| 86a2b44d81 | |||
| d1b9acf9f1 | |||
| a815ad2d0e | |||
| 393d92c21a | |||
| 5a55dd249f | |||
| b78fd71f6a | |||
| 26227215bf | |||
| 89d9d27f55 | |||
| 4e0c79ffae | |||
| 813ab57dd0 | |||
| 40947890ed | |||
| 047da96e0c | |||
| b1f84c5ece | |||
| a4e17ccfa4 | |||
| afaa1ce5be | |||
| a76fc74390 | |||
| b8a3886122 | |||
| 6293ca6529 | |||
| fdbdf84f63 | |||
| 84217dfdf2 | |||
| a781500ed3 | |||
| de5bf5e08c | |||
| a852c71fd8 | |||
| d762d27cb8 | |||
| 07514bdd3f | |||
| 24cad8de93 | |||
| d173dbd252 | |||
| 8525a68f51 | |||
| 4a2fa7e395 | |||
| 1ac66ffacb | |||
| de9cd6fbe0 | |||
| e25713ab00 | |||
| 9a03f10c64 | |||
| 6577f229d3 | |||
| a1553223bd | |||
| f288e9d6d6 | |||
| 060a991f04 | |||
| d06da0be88 | |||
| 453b1dd878 | |||
| 6e049b8dd1 | |||
| e698306f52 | |||
| 8a57367c5f | |||
| fb6faf10e5 | |||
| f8d0f57257 | |||
| 98c6b48104 | |||
| 7d658283df | |||
| 85210e0583 | |||
| b5a99a453c | |||
| 06738341b4 | |||
| 819050bfde | |||
| ce5c1aa2e4 | |||
| cd7ed20ea5 | |||
| 1da0a12508 | |||
| 068b927aca | |||
| 71f7de4740 | |||
| bd693d2b1c | |||
| 386acead9a | |||
| d146ac5c49 | |||
| 4db7e3e5d6 | |||
| 904d62888c | |||
| 6ed2ba376e | |||
| 3d92de602b | |||
| b75b688066 | |||
| 19c6f692b6 | |||
| 181d91b6f7 | |||
| 46b7bcb845 | |||
| 3ae68432b0 | |||
| ef8ab0cd88 | |||
| c70d105c98 | |||
| ba4bfb8c74 | |||
| 26c4d5c2c7 | |||
| 53171a42ec | |||
| b1d133291e | |||
| 25257c5d6f | |||
| 3f5c9ca69d | |||
| fb32a149ae | |||
| c2df870101 | |||
| d9c0b4b084 | |||
| add771144b | |||
| 8f172fa508 | |||
| bd0cc2b3f5 | |||
| 14377428b6 | |||
| 0ed5d4e203 | |||
| 3856ab90fe | |||
| 5c85eb2a47 | |||
| 1b0e7414cb | |||
| c8c4fc842d | |||
| e4ffc495c6 | |||
| 5ea027a47c | |||
| 9e91f68f59 | |||
| c7c3f68f0a | |||
| a79e4e8d82 | |||
| 1a1ce6c40f | |||
| 023e0ee8c3 | |||
| 7f4cd54d9d | |||
| bde0278279 | |||
| 88369f8742 | |||
| 5880eed5de | |||
| b240097e17 | |||
| 1862a2593d | |||
| 9b716482db | |||
| 3d6f5b631a | |||
| f49bcb80b0 | |||
| e9c32f7397 | |||
| 11c9ba03b1 | |||
| a8c38e5a4b | |||
| d419b0ba3b | |||
| aad153106e | |||
| 820e69f383 | |||
| 44d608ca69 | |||
| 3c1f11273e | |||
| 028f6798f1 | |||
| 5e67c4fa52 | |||
| cdce8905b8 | |||
| 5d499fe7c8 | |||
| 39d1f88a04 | |||
| 048687f557 | |||
| ecffbf09e5 | |||
| 55d3cd6c91 | |||
| 1fe62a0c41 | |||
| cd6e0b6cf6 | |||
| 307dc6dcd7 | |||
| 5ef00db52c | |||
| 429de66f72 | |||
| 04522e1b01 | |||
| 0894c919c6 | |||
| 2f1ba1f36e | |||
| e884735a73 | |||
| 777af9aa97 | |||
| 8b85477a25 | |||
| 16c13d4079 | |||
| 9b65f735b5 | |||
| 408d5817b8 | |||
| 16354e3872 | |||
| 7720c91423 | |||
| 2dcc0e147d | |||
| e2316340eb | |||
| ed8b66a4e1 |
@@ -1,20 +0,0 @@
|
||||
---
|
||||
name: Identify 'Guides' Type by Role -- For Guides only.
|
||||
about: For new content in 'Guides', select 1 of 3 categories to which it belongs.
|
||||
|
||||
---
|
||||
|
||||
New pages will appear here: https://clearlinux.org/documentation/clear-linux/guides
|
||||
|
||||
1. Enter an 'x' in the category for the new "guide":
|
||||
* [ ] Basics
|
||||
* [ ] Developer
|
||||
* [ ] Administrator
|
||||
|
||||
Complete the field below, following the colon, that matches option selected above:
|
||||
|
||||
I am a Clear Linux Beginner (Basics). I want to learn how to:
|
||||
|
||||
I am a Clear Linux Developer. I want to learn how to:
|
||||
|
||||
I am a Clear Linux Administrator. I want to learn how to:
|
||||
@@ -0,0 +1,19 @@
|
||||
---
|
||||
name: Modify document
|
||||
about: Modify a document for the Clear Linux* Project
|
||||
|
||||
---
|
||||
|
||||
**Describe the error/improvement to an existing document or image**
|
||||
Provide a clear and concise description of the error or proposed improvement.
|
||||
|
||||
**Screenshots**
|
||||
If applicable, add screenshots to help explain the error or unexpected behavior.
|
||||
|
||||
**Environment (please complete the following):**
|
||||
- Clear Linux OS version: [`cat /usr/lib/os-release`]
|
||||
- Third-party tool/software: [version]
|
||||
- Command [ [e.g. `sudo -i`]
|
||||
|
||||
**Additional context**
|
||||
Add any other context about the problem here.
|
||||
@@ -0,0 +1,17 @@
|
||||
---
|
||||
name: New document
|
||||
about: Request a new document for the Clear Linux* project
|
||||
|
||||
---
|
||||
|
||||
**Do you think Clear Linux documentation needs a new document? Please describe.**
|
||||
Please provide a clear and concise description of the title and content. Identify the target audience: Developer; System Administrator; or Basic User.
|
||||
|
||||
**Should the new document be a guide, a reference, or a tutorial?**
|
||||
Recommend a type of document, based on the structure here: https://clearlinux.org/documentation/clear-linux
|
||||
|
||||
**Describe or provide examples of similar documents, if possible, from other web sites**
|
||||
Please provide an example of similar documents if possible.
|
||||
|
||||
**Additional context**
|
||||
Add any other context or screenshots for the document request here.
|
||||
@@ -1,409 +0,0 @@
|
||||
.. _architecture-overview:
|
||||
|
||||
Architecture Overview
|
||||
#####################
|
||||
|
||||
Intel Clear Containers are architected around the Linux
|
||||
:abbr:`Kernel Virtual Machine (KVM)` virtualization infrastructure to
|
||||
make best use of Intel Architecture VT features. Operational speed
|
||||
gets improved and overhead gets reduced by optimizing existing code,
|
||||
removing redundant components, and implementing new techniques for
|
||||
containers with :abbr:`KVM (Kernel Virtual Machine)`.
|
||||
|
||||
The latest release of Intel® Clear Containers is release 3.0. You can find
|
||||
detailed technical information on our `architecture overview`_ on GitHub.
|
||||
|
||||
Version 1.0 of Clear Containers was designed as a lightweight container
|
||||
system based around `kvmtool`_'s ``lkvm``,
|
||||
:abbr:`KVM (Kernel Virtual Machine)` and Intel VT-x features; the
|
||||
initial version was aimed primarily at Docker\* integration. Version
|
||||
2.0 replaces ``lkvm`` with a lightweight version of
|
||||
:abbr:`QEMU (Quick EMUlator)` `(link) <http:www.qemu.org>`_.
|
||||
|
||||
Version 2.0 also expands the feature set to include key technologies, such
|
||||
as `SR-IOV`_, and the :abbr:`Open Container Initiative (OCI)` runtime API.
|
||||
|
||||
V2.0
|
||||
====
|
||||
|
||||
Intel Clear Containers V2.0 adopts an optimized version of the established
|
||||
`QEMU`_ host virtualization engine, in order to support extra features not
|
||||
found in Clear Containers V1.0. Clear Containers. V2.0 is also compatible with
|
||||
the :abbr:`OCI (Open Container Initiative)` runtime-specification standard,
|
||||
introducing a host-side abstraction tool to ease host-side integration and to
|
||||
isolate integration instances from future changes to the underlying Clear
|
||||
Containers architecture.
|
||||
|
||||
.. figure:: ./figures/clear-containers-v2.png
|
||||
:align: center
|
||||
:alt: Clear Containers V2.0
|
||||
|
||||
Host kernel optimizations
|
||||
-------------------------
|
||||
|
||||
V2.0 host kernel optimizations are currently the same as
|
||||
the V1.0 optimizations.
|
||||
|
||||
Host user space
|
||||
---------------
|
||||
|
||||
Host user space is based around an optimized version of `QEMU`_ called
|
||||
``qemu-lite``, with an :abbr:`OCI (Open Container Initiative)`
|
||||
runtime-compliant wrapper called ``cor``.
|
||||
|
||||
Our version of ``qemu-lite`` has the following modifications:
|
||||
|
||||
* :abbr:`DAX (Direct Access)` support, **enabling fast and space efficient**
|
||||
file access through zero-copy mapping and multi-container sharing of raw
|
||||
client filesystem images from the host filesystem.
|
||||
* **Reduced "slimline" PC model** to reduce startup costs in both `QEMU`_
|
||||
and the client kernel.
|
||||
* **Removed need for BIOS**, saving boot time.
|
||||
* **No bootloader requirement**, to speed up boot.
|
||||
* **Reduced memory footprint** by disabling memory-hungry features that
|
||||
are not required by the client system.
|
||||
* **Direct kernel boot**, allowing fast booting by loading the kernel as
|
||||
an uncompressed ELF binary. Although the kernel image is slightly larger
|
||||
than a compressed one, it is faster to read and boot the larger
|
||||
file than it is to uncompress and boot the slightly smaller file.
|
||||
* **Added an** :abbr:`OCI (Open Container Initiative)` **runtime-compliant
|
||||
wrapper**, AKA ``cor``, for easier integration with
|
||||
:abbr:`OCI (Open Container Initiative)`-compliant host orchestration systems.
|
||||
|
||||
Client mini-OS
|
||||
--------------
|
||||
|
||||
The Client mini-OS is based on the same Clear Linux OS-based system as
|
||||
used in Intel Clear Containers V1.0; however, it may be built from more
|
||||
recent versions and with more current components, such as the kernel version.
|
||||
|
||||
Client customer images
|
||||
----------------------
|
||||
|
||||
Client customer images are supported in the same manner as they are
|
||||
in V1.0.
|
||||
|
||||
|
||||
Legacy V1.0
|
||||
===========
|
||||
|
||||
V1.0 (also known as **Intel® Clear Containers for Docker Engine**) is based
|
||||
around `kvmtool`_, with example host integrations for Docker and `rkt`_.
|
||||
|
||||
.. figure:: ./figures/clear-containers-v1.png
|
||||
:align: center
|
||||
:alt: Intel Clear Containers V1.0
|
||||
|
||||
|
||||
Host kernel optimizations
|
||||
-------------------------
|
||||
|
||||
Intel Clear Containers operate better when a number of host kernel features and
|
||||
optimizations are applied:
|
||||
|
||||
* Enabling :abbr:`Kernel Samepage Merging (KSM)` in the host kernel
|
||||
is recommended for efficient page sharing of VM pages. Kernel documentation
|
||||
can be found in Documentation/vm/ksm.txt Config symbol: ``CONFIG_KSM``
|
||||
* Using a kernel version >= v4.0 (or backporting appropriate
|
||||
patches if your kernel version is less than v4.0), to get the best
|
||||
:abbr:`KVM (Kernel Virtual Machine)` VM startup times
|
||||
|
||||
.. note::
|
||||
|
||||
Intel :abbr:`Extended Page Table (EPT)` acceleration will be
|
||||
automatically detected and used by your host kernel if supported
|
||||
by your hardware. You can check whether this feature is present by
|
||||
looking for the ``ept`` string in the :file:`/proc/cpuinfo` of your
|
||||
system. See `mmu.txt`_ for more details.
|
||||
|
||||
|
||||
Host user space
|
||||
---------------
|
||||
|
||||
Intel Clear Containers V1.0 host user space is based around `kvmtool`_ as a
|
||||
fast and lightweight hypervisor. Optimizations to `kvmtool`_ include:
|
||||
|
||||
* **File access**, enabling efficient *shmem* / *pci-bar* / :abbr:`Direct
|
||||
Access (DAX)` file access to client.
|
||||
* **Less verbosity**.
|
||||
* **Minimal UART scanning** to improve speed.
|
||||
* **TSC timer functionality changes** passing the client apic timer
|
||||
calibration step speeds up container creation time.
|
||||
* Adding ability to **skip unused features**, (such as creation of a
|
||||
custom rootfs).
|
||||
* **Removing need for BIOS** saves boot time.
|
||||
* **No bootloader required** speeds up initial booting of a machine.
|
||||
* **Direct kernel boot** -- The hypervisor can boot the kernel directly as
|
||||
an uncompressed ELF binary. Although the kernel image is slightly larger
|
||||
than a compressed one, it is faster to read and boot the larger
|
||||
file than it is to uncompress and boot the slightly smaller file.
|
||||
|
||||
|
||||
Client mini-OS
|
||||
--------------
|
||||
|
||||
Intel Clear Containers V1.0 uses an optimized client user space (mini-OS) as
|
||||
its primary launch vehicle to execute workload commands. The mini-OS is built
|
||||
with a Clear Linux distribution that has an optimized configuration for time
|
||||
and space efficiency. The mini-OS includes:
|
||||
|
||||
* Minimized ``systemd`` configuration
|
||||
* Optimized ``libc``
|
||||
* Custom AutoFDO settings
|
||||
* Optimized multi-lib runtime support
|
||||
* Optimized kernel config (speed and size)
|
||||
|
||||
The mini-OS configuration can be modified and rebuilt by customers for their
|
||||
own use cases, which may preclude the need to load further client images.
|
||||
|
||||
|
||||
Client customer images
|
||||
----------------------
|
||||
|
||||
Intel Clear Containers V1.0 mini-OS workloads can be used to bootstrap further
|
||||
customer images. These customer images would generally be mapped into the
|
||||
client via the host filesystem using :abbr:`9p (Plan 9 9p remote filesystem
|
||||
protocol)`, :abbr:`DAX (Direct Access)` or other filesystem and virtual
|
||||
device interfaces. These customer images could, for example:
|
||||
|
||||
* Mount a new subtree containing a payload and execute it.
|
||||
* Mount a new subsystem and chroot to it for contained execution.
|
||||
|
||||
The mini-OS image has been optimized for size and speed. It may be replaced
|
||||
or superseded -- in whole or in part -- by customer-created images. Keep
|
||||
in mind, of course, that any benefits the mini-OS provides may be lost
|
||||
unless equivalent optimizations exist in the customer-created image, or have
|
||||
been migrated into the image they create.
|
||||
|
||||
|
||||
Architectural component details
|
||||
===============================
|
||||
|
||||
Host kernel components
|
||||
----------------------
|
||||
|
||||
:abbr:`Kernel SamePage Merging (KSM)`
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Linux Kernel Documentation: Documentation/vm/ksm.txt
|
||||
|
||||
:abbr:`KSM (Kernel Samepage Merging)` allows the kernel to locate
|
||||
and merge (share) identical memory pages within the system, even
|
||||
when they are not sourced from the same binary. When sourced from
|
||||
the same binary, the kernel will naturally share through the
|
||||
:abbr:`copy-on-write (COW)` method.
|
||||
|
||||
:abbr:`KSM (Kernel Samepage Merging)` also allows the kernel to
|
||||
localize and to coalesce pages from within virtual machine memory
|
||||
spaces that would not normally be shared, thus saving memory space.
|
||||
|
||||
To enable :abbr:`KSM (Kernel Samepage Merging)`, check that your host kernel
|
||||
config includes ``CONFIG_KSM``, and that your host system is running the
|
||||
``ksmd`` daemon.
|
||||
|
||||
:abbr:`EPT (Extended Page Tables)`
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Linux Kernel Documentation: Documentation/virtual/kvm/mmu.txt
|
||||
|
||||
:abbr:`EPT (Extended Page Tables)` is an acceleration technology for virtual
|
||||
machine memory mappings. It reduces the number of Virtual Machine Manager
|
||||
entry/exits from the host system, thus improving system performance. If your
|
||||
hardware system supports :abbr:`EPT (Extended Page Tables)`, you'll see the
|
||||
``ept`` feature listed in the ``/proc/cpuinfo`` information from your system.
|
||||
The kernel, :abbr:`KVM (Kernel Virtual Machine)` and `QEMU`_ will
|
||||
automatically use and benefit from :abbr:`EPT (Extended Page Tables)`
|
||||
when supported by your system hardware.
|
||||
|
||||
You can also check on the `Intel ARK website`_ to see if your Intel CPU
|
||||
supports **Intel VT-x with Extended Page Tables**; check under the
|
||||
*Advanced Technologies* table on the specific page for your CPU.
|
||||
|
||||
:abbr:`KVM (Kernel Virtual Machine)` startup optimizations
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Host kernel startup was optimized before the Linux kernel v4.0
|
||||
release by removing some unnecessary ``synchronize_rcu()`` calls. You
|
||||
should ensure your kernel is at least v4.0, or that you have backported
|
||||
any appropriate patches to your host kernel: the ``synchronize_rcu() opt``,
|
||||
at the very least.
|
||||
|
||||
.. We should add a Persistent data (how do we do that on R/O or COW'd
|
||||
filesystems for instance?
|
||||
[do we have a standard pattern to do for these docs?]
|
||||
Persistence
|
||||
~~~~~~~~~~~
|
||||
|
||||
|
||||
Host tooling
|
||||
------------
|
||||
|
||||
Kvmtool
|
||||
~~~~~~~
|
||||
|
||||
Kvmtool is used in Intel Clear Containers V1.0 for virtual machine
|
||||
configuration and management. It was chosen because it is lighter
|
||||
and faster than the alternatives, and it's also easy to modify.
|
||||
|
||||
Modifications to `kvmtool`_ include:
|
||||
|
||||
* Implementation of **copy-free** :abbr:`DAX (Direct Access)` **file-system
|
||||
access**.
|
||||
* **Less verbosity**.
|
||||
* **Minimal UART scanning** to improve speed.
|
||||
* **TSC timer functionality changes** passing the client apic timer
|
||||
calibration step speeds up container creation time.
|
||||
* Adding ability to **skip unused features**, (such as creation of a
|
||||
custom rootfs).
|
||||
* **Removing need for BIOS** saves boot time.
|
||||
* **No bootloader required** speeds up initial booting of a machine.
|
||||
* **Direct kernel boot** -- The hypervisor can boot the kernel directly as
|
||||
an uncompressed ELF binary. Although the kernel image is slightly larger
|
||||
than a compressed one, it ends up being faster to read and boot the larger
|
||||
file than it is to uncompress and boot the slightly smaller file.
|
||||
|
||||
|
||||
.. _qemu-lite:
|
||||
|
||||
qemu-lite
|
||||
~~~~~~~~~
|
||||
|
||||
``qemu-lite`` is a modified version of `QEMU`_ used for the virtual
|
||||
machine configuration and management in Intel Clear Containers 2.0.
|
||||
|
||||
The modifications made beyond generic `QEMU`_ are described in the
|
||||
following sections:
|
||||
|
||||
:abbr:`DAX (Direct Access)` enablement
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
:abbr:`DAX (Direct Access)` enablement under ``qemu-lite`` utilizes
|
||||
existing `QEMU`_ ``nvdimm memdev`` functionality.
|
||||
|
||||
PC-lite
|
||||
^^^^^^^
|
||||
|
||||
A new `QEMU`_ PC model, called ‘pc-lite’, has been added that removes
|
||||
all unused or unnecessary PC style elements from the machine emulation
|
||||
that are not required for the client VM. This improves both speed of
|
||||
execution and memory footprint.
|
||||
|
||||
Cor
|
||||
^^^
|
||||
|
||||
Cor (the Clear :abbr:`OCI (Open Container Initiative)` runtime manager)
|
||||
implements the :abbr:`OCI (Open Container Initiative)` runtime specification
|
||||
atop of the V2.0 infrastructure (such as ``qemu-lite``). By
|
||||
utilizing Cor, your :abbr:`OCI (Open Container Initiative)`-compliant system
|
||||
can be implemented with Clear Containers whilst also insulating
|
||||
the user against any future underlying changes in Clear Containers,
|
||||
thus allowing easier future integration of upgrades. Cor currently
|
||||
supports :abbr:`OCI (Open Container Initiative)` runtime version 0.6.0.
|
||||
|
||||
Client components
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
The client-side components consist of the mini-OS kernel and root
|
||||
filesystem, and optionally further customer specific items, such as
|
||||
a further fuller distribution or system to load. The intention is
|
||||
that customers may either extend and expand the mini-OS as required,
|
||||
or they can use the mini-OS to further load a complete self-contained
|
||||
image of their choice.
|
||||
|
||||
Client mini-OS
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
The mini-OS is an optimized version of Clear Linux OS for Intel Architecture
|
||||
which has been designed for the fastest and smallest container boot. The
|
||||
mini-OS consists of a Linux kernel image and root filesystem image.
|
||||
|
||||
* **Kernel** -- The mini-OS's kernel is a Clear Linux kernel containing
|
||||
the minimum feature set required to boot the client container. The kernel
|
||||
has optimized for space and speed. This kernel can be modified and
|
||||
re-built as desired, for specific requirements.
|
||||
|
||||
* **DAX** -- The :abbr:`Direct Access (DAX)` filesystem.
|
||||
(Linux Kernel Documentation: ``Documentation/filesystems/dax.txt``).
|
||||
Mapping host-side files into the memory map of the client allows the use of
|
||||
:abbr:`DAX (Direct Access)` to directly mount those files, bypassing the
|
||||
client side page cache and the virtual device mechanisms between host and
|
||||
client. This allows efficient zero-copy mapping and replaces costly virtual
|
||||
device manipulations with efficient page fault handling, thus being faster
|
||||
and more space-efficient than other filesystem mount methods. :abbr:`DAX
|
||||
(Direct Access)` is enabled in Intel Clear Containers V1.0 using a shmem
|
||||
PCI-BAR mechanism configured by `kvmtool`_.
|
||||
|
||||
.. figure:: ./figures/dax-v1.png
|
||||
:align: center
|
||||
|
||||
:abbr:`DAX (Direct Access)` is enabled in Intel Clear Containers
|
||||
V2.0 using an NVDIMM `QEMU`_ memdev mechanism:
|
||||
|
||||
.. figure:: ./figures/dax-v2.png
|
||||
:align: center
|
||||
|
||||
:abbr:`DAX (Direct Access)` can only be used to mount single flat files
|
||||
from the host side (such as uncompressed filesystems), and not trees of
|
||||
files in the host filesystem. More than one :abbr:`DAX (Direct Access)`
|
||||
mount can be utilized though. :abbr:`DAX (Direct Access)` is limited only
|
||||
by the virtual address space available, so it can easily accommodate large
|
||||
file mappings.
|
||||
|
||||
:abbr:`DAX (Direct Access)` support was introduced in v4.0 of the kernel.
|
||||
Also see the `qemu-lite`_ section.
|
||||
|
||||
* **Rootfs image** -- The mini-OS rootfs image is a Clear Linux
|
||||
rootfs. It can execute the client workload and be modified and
|
||||
extended using the bundle method to enable further features as
|
||||
necessary. It can also be used to further execute another client
|
||||
container image, such as a different Linux distribution.
|
||||
|
||||
|
||||
Customer Client images and workloads
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Customers may use their own client images by instructing
|
||||
the mini-OS to execute them using the mini-OS workload. Please
|
||||
refer to the :ref:`Intel Clear Containers integration
|
||||
guide<cc-getting-started>` for further detail.
|
||||
|
||||
.. removed this section since it is in the GSG
|
||||
|
||||
FAQ
|
||||
===
|
||||
|
||||
**Q.** "Can I run Clear Containers on any host Linux?"
|
||||
|
||||
**A.** Yes, any up-to-date or recent Linux host should be able to run Clear
|
||||
Containers, as long as the host system kernel contains the necessary
|
||||
features and is configured with the necessary support enabled.
|
||||
|
||||
.. [to do: finish this section]
|
||||
|
||||
**Q.** "Do I need to use all of Clear Containers, or can I cherry pick parts?"
|
||||
|
||||
**A.** You can cherry pick the parts of Clear Containers you need. Some parts
|
||||
will make your life generally easier (such as the `QEMU`_ wrapper tool
|
||||
``cor``) and will help insulate you from future development changes, so you
|
||||
should consider which parts you need for which features. The client
|
||||
side obviously can be quite flexible in its configuration depending
|
||||
on the deployment environment.
|
||||
|
||||
**Q.** "Can I use Clear Containers technology to run other VMs, not just
|
||||
container style ones?"
|
||||
|
||||
**A.** Yes, the underlying mechanisms and accelerations used for Clear
|
||||
Containers can be applied to any Virtual Machine setup, not just
|
||||
those that are based around a container style workflow.
|
||||
|
||||
|
||||
.. _SR-IOV: http://www.intel.com/content/www/us/en/pci-express/pci-sig-sr-iov-primer-sr-iov-technology-paper.html
|
||||
.. _QEMU: http://www.qemu.org
|
||||
.. _mmu.txt:
|
||||
https://www.kernel.org/doc/Documentation/virtual/kvm/mmu.txt
|
||||
|
||||
.. _Intel ARK website: http://ark.intel.com
|
||||
.. _kvmtool: https://git.kernel.org/cgit/linux/kernel/git/will/kvmtool.git/
|
||||
.. _rkt: https://coreos.com/rkt/
|
||||
.. _architecture overview:
|
||||
https://github.com/clearcontainers/runtime/blob/master/docs/architecture/architecture.md
|
||||
@@ -1,29 +0,0 @@
|
||||
.. _clear-containers.rst:
|
||||
|
||||
Intel® Clear Containers
|
||||
#######################
|
||||
|
||||
Intel® Clear Containers is a collection of tools, configurations,
|
||||
and techniques anchored on an implementation that leverages Intel®
|
||||
Architecture to optimize container launching and execution workflow.
|
||||
These optimizations improve speed, size, and efficiency while offering
|
||||
a number of benefits that can be derived only from hardware-backed
|
||||
virtual machines (hardware-enforced isolation and security, for
|
||||
example) on Intel® VT technology.
|
||||
|
||||
These methods are applied across all levels of the host/virtual machine
|
||||
hierarchy: from the host-side userland software stack down through the host
|
||||
Linux\* kernel, and into the client-side kernel and userland.
|
||||
|
||||
Although it is available as a standalone offering, the Clear Containers
|
||||
technology works best when it is able to leverage optimizations designed
|
||||
into the Clear Linux Project.
|
||||
|
||||
Customers can integrate all or parts of Intel Clear Containers into a
|
||||
container infrastructure.
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
getting-started
|
||||
architecture-overview
|
||||
|
Before Width: | Height: | Size: 328 KiB |
|
Before Width: | Height: | Size: 360 KiB |
|
Before Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 50 KiB |
@@ -1,38 +0,0 @@
|
||||
.. _cc-getting-started:
|
||||
|
||||
Clear Containers getting started guide
|
||||
######################################
|
||||
|
||||
The Intel® Clear Containers enable executing existing Docker applications in
|
||||
the secure and fast Intel Clear Containers environment under Docker\*
|
||||
v17.05.0-ce and beyond via an :abbr:`Open Container Initiative (OCI)`
|
||||
compatible `runtime`.
|
||||
|
||||
Visit our `architecture overview`_ for detailed architectural
|
||||
information.
|
||||
|
||||
Installation instructions
|
||||
=========================
|
||||
|
||||
The primary host platform is Clear Linux\* Project for Intel® Architecture.
|
||||
For instructions on installing Docker and Clear Containers under Clear Linux,
|
||||
please refer to instructions from the runtime source tree:
|
||||
|
||||
• https://github.com/clearcontainers/runtime/wiki/Installation
|
||||
|
||||
If you have any feedback, questions, or would like to participate and
|
||||
contribute, then please consult the contact details (mailing list, IRC etc.)
|
||||
in the document at:
|
||||
|
||||
- https://github.com/clearcontainers/runtime/CONTRIBUTING.md
|
||||
|
||||
Source Code
|
||||
===========
|
||||
|
||||
The source code for the Clear Containers 2.0 runtime and corresponding
|
||||
qemu-lite are publicly hosted on github:
|
||||
|
||||
- https://github.com/clearcontainers/runtime/
|
||||
|
||||
.. _architecture overview:
|
||||
https://github.com/clearcontainers/runtime/blob/master/docs/architecture/architecture.md
|
||||
@@ -3,33 +3,33 @@
|
||||
|CL-PRJ|
|
||||
#############################################
|
||||
|
||||
Welcome to the |CLOSIA| documentation pages, the source for |CL| documentation.
|
||||
Welcome to the |CL-ATTR| documentation pages, the source for |CL| documentation.
|
||||
Our documentation is divided into the following sections:
|
||||
|
||||
* :ref:`get-started`
|
||||
|
||||
If you are new to |CL|, get started fast with tutorials for installing |CL| on
|
||||
bare metal, in a virtual environment, or as a live image on a USB stick.
|
||||
If you are new to |CL|, get started fast with tutorials for installing |CL| on
|
||||
bare metal, in a virtual environment, or as a live image on a USB stick.
|
||||
|
||||
* :ref:`concepts`
|
||||
|
||||
Wondering what makes |CL| different? Learn about |CL| features and what
|
||||
* :ref:`concepts`
|
||||
|
||||
Wondering what makes |CL| different? Learn about |CL| features and what
|
||||
differentiates |CL| from other Linux distros.
|
||||
|
||||
* :ref:`guides`
|
||||
* :ref:`guides`
|
||||
|
||||
Guides show how to complete common tasks that help you leverage |CL| native
|
||||
features effectively. From basic system configuration to advanced management
|
||||
Guides show how to complete common tasks that help you leverage |CL| native
|
||||
features effectively. From basic system configuration to advanced management
|
||||
of a cloud installation, there is a guide for you.
|
||||
|
||||
* :ref:`tutorials`
|
||||
* :ref:`tutorials`
|
||||
|
||||
|CL| tutorials provide step-by-step instructions on how |CL| features can
|
||||
be used and extended, frequently with third-party tools.
|
||||
|CL| tutorials provide step-by-step instructions on how |CL| features can
|
||||
be used and extended, frequently with third-party tools.
|
||||
|
||||
* :ref:`reference`
|
||||
|
||||
Find the detailed information you need to enable your configuration or task
|
||||
* :ref:`reference`
|
||||
|
||||
Find the detailed information you need to enable your configuration or task
|
||||
in our |CL| reference section.
|
||||
|
||||
.. toctree::
|
||||
|
||||
@@ -1,112 +1,107 @@
|
||||
.. _autospec-about:
|
||||
.. _autospec-about:
|
||||
|
||||
Autospec
|
||||
########
|
||||
|
||||
.. _incl-autospec-overview:
|
||||
|
||||
Overview
|
||||
********
|
||||
|
||||
Whereas a standard RPM build process using ``rpmbuild`` requires a tarball
|
||||
and ``spec`` file to start, ``autospec`` only requires a tarball and package
|
||||
name. ``autospec`` analyzes the source code and :file:`Makefile` information
|
||||
in order to generate a ``spec`` file for you. Although not required, you can
|
||||
influence ``autospec`` by providing control files.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
buildreq_add
|
||||
buildreq__ban
|
||||
pkgconfig_add
|
||||
pkgconfig_ban
|
||||
requires_add
|
||||
requires_ban
|
||||
options.conf
|
||||
build_pattern
|
||||
|
||||
These files should be located in same directory as the resulting ``spec``
|
||||
file.
|
||||
|
||||
.. note::
|
||||
|
||||
For a comprehensive list of control files, view the `autospec readme`_.
|
||||
|
||||
.. _incl-autospec-overview-end:
|
||||
|
||||
Control files are explained in Table 1.
|
||||
|
||||
.. list-table:: **Table 1. Control Files**
|
||||
:widths: 20 80
|
||||
:header-rows: 1
|
||||
|
||||
* - Filename
|
||||
- Description
|
||||
* - buildreq_add
|
||||
- Each line in the file provides the name of a package to add as a
|
||||
build dependency to the ``spec``.
|
||||
* - buildreq_ban
|
||||
- Each line in the file is a build dependency that under no
|
||||
circumstance should be automatically added to the build dependencies.
|
||||
This is useful to block automatic configuration routines adding
|
||||
undesired functionality, or to omit any automatically discovered
|
||||
dependencies during tarball scanning.
|
||||
* - pkgconfig_add
|
||||
- Each line in the file is assumed to be a pkgconfig() build
|
||||
dependency. Add the pkg-config names here, as ``autospec`` will
|
||||
automatically transform the names into their ``pkgconfig($name)``
|
||||
style when generating the ``spec``.
|
||||
* - pkgconfig_ban
|
||||
- Each line in this file is a pkgconfig() build dependency that should
|
||||
not be added automatically to the build, much the same as
|
||||
`` buildreq_ban``. As with ``pkgconfig_add``, these names are
|
||||
automatically transformed by ``autospec`` into their correct
|
||||
``pkgconfig($name))`` style.
|
||||
* - requires_add
|
||||
- Each line in the file provides the name of a package to add as a
|
||||
runtime dependency to the ``spec``.
|
||||
* - requires_ban
|
||||
- Each line in the file is a runtime dependency that under no
|
||||
circumstance should be automatically added to the runtime
|
||||
dependencies. This is useful to block automatic configuration
|
||||
routines adding undesired functionality, or to omit any automatically
|
||||
discovered dependencies during tarball scanning.
|
||||
* - build_pattern
|
||||
- In certain situations, the automatically detected build pattern may
|
||||
not work for the given package. This one line file allows you to
|
||||
override the build pattern that ``autospec`` will use.
|
||||
* - options.conf
|
||||
- Further control of the build can be achieved through the use of the
|
||||
``options.conf`` file. If this file does not exist it is created by
|
||||
autospec with default values. If certain deprecated configuration
|
||||
files exists autospec will use the value indicated by those files and
|
||||
remove them.
|
||||
``autospec`` is a tool to assist in the automated creation and maintenance of
|
||||
RPM packaging in |CL-ATTR|. Where a standard RPM build process using ``rpmbuild``
|
||||
requires a tarball and .spec file to start, ``autospec`` requires only a tarball
|
||||
and package name to start.
|
||||
|
||||
How autospec works
|
||||
******************
|
||||
|
||||
Autospec attempts to infer the requirements of the ``spec`` file. If
|
||||
autospec infers correctly, the control files (Table 1) will automatically
|
||||
correct the build requirements. The control files are used to influence
|
||||
the ``spec`` file generation.
|
||||
``autospec`` attempts to infer the requirements of the .spec file by analyzing
|
||||
the source code and :file:`Makefile` information. It will continuously run
|
||||
updated builds based on new information discovered from build failures until it
|
||||
has a complete and valid .spec file. Although not required, you can influence
|
||||
the behavior of ``autospec`` by providing :ref:`control files <control-files>`.
|
||||
|
||||
#. The :command:`make autospec` command generates a ``spec`` file from the
|
||||
control files.
|
||||
The basic process is described in the following steps:
|
||||
|
||||
#. ``autospec`` creates a ``build root`` with ``mock`` config.
|
||||
|
||||
#. ``autospec`` attempts to build an RPM from the generated ``spec`` file.
|
||||
|
||||
#. ``autospec`` detects any missed declarations in the ``spec`` file.
|
||||
#. The :command:`make autospec` command generates a .spec based on
|
||||
analysis of code and control files, if present.
|
||||
|
||||
.. note::
|
||||
#. ``autospec`` creates a ``build root`` with ``mock`` config.
|
||||
|
||||
* If there are missed declarations, ``autospec`` creates another ``mock``
|
||||
``chroot`` and starts building again at Step 1.
|
||||
* If a build error occurs, ``autospec`` stops for user inspection.
|
||||
* If no build errors occur, RPM packages are successfully built.
|
||||
#. ``autospec`` attempts to build an RPM from the generated .spec.
|
||||
|
||||
``autospec`` continues to rebuild the package, based on new information
|
||||
discovered from build failures until it has a valid ``spec`` file.
|
||||
#. ``autospec`` detects any missed declarations in the .spec.
|
||||
|
||||
#. If build errors occur, ``autospec`` will scan the build log to try and detect
|
||||
the root cause.
|
||||
|
||||
#. If ``autospec`` detects the root cause and knows how to continue, it will restart the build
|
||||
automatically at step 1 with updated build instructions.
|
||||
|
||||
#. Otherwise, ``autospec`` will stop the build for user inspection and editing of control files
|
||||
to resolve the errors. The user resumes the process at step 1 after errors are resolved.
|
||||
|
||||
Following these steps, ``autospec`` continues to rebuild the package, based on
|
||||
new information discovered from build failures, until it has a valid .spec. If
|
||||
no build errors occur, RPM packages are successfully built.
|
||||
|
||||
.. _control-files:
|
||||
|
||||
Control files
|
||||
*************
|
||||
|
||||
It is possible to influence the behavior of ``autospec`` by providing control
|
||||
files. These files may be used to alter the default behavior of the configure
|
||||
routine, to blacklist build dependencies, etc. Control files must be located
|
||||
in the same directory as the resulting .spec.
|
||||
|
||||
Table 1 shows control files used to control dependencies, for example.
|
||||
|
||||
.. list-table:: **Table 1. Control files to control dependencies**
|
||||
:widths: 20 80
|
||||
:header-rows: 1
|
||||
|
||||
* - Filename
|
||||
- Description
|
||||
* - buildreq_add
|
||||
- Each line in the file provides the name of a package to add as a
|
||||
build dependency to the .spec.
|
||||
* - buildreq_ban
|
||||
- Each line in the file is a build dependency that under no
|
||||
circumstance should be automatically added to the build dependencies.
|
||||
This is useful to block automatic configuration routines adding
|
||||
undesired functionality, or to omit any automatically discovered
|
||||
dependencies during tarball scanning.
|
||||
* - pkgconfig_add
|
||||
- Each line in the file is assumed to be a pkgconfig() build
|
||||
dependency. Add the pkg-config names here, as ``autospec`` will
|
||||
automatically transform the names into their ``pkgconfig($name)``
|
||||
style when generating the .spec.
|
||||
* - pkgconfig_ban
|
||||
- Each line in this file is a pkgconfig() build dependency that should
|
||||
not be added automatically to the build, much the same as
|
||||
`` buildreq_ban``. As with ``pkgconfig_add``, these names are
|
||||
automatically transformed by ``autospec`` into their correct
|
||||
``pkgconfig($name))`` style.
|
||||
* - requires_add
|
||||
- Each line in the file provides the name of a package to add as a
|
||||
runtime dependency to the .spec.
|
||||
* - requires_ban
|
||||
- Each line in the file is a runtime dependency that under no
|
||||
circumstance should be automatically added to the runtime
|
||||
dependencies. This is useful to block automatic configuration
|
||||
routines adding undesired functionality, or to omit any automatically
|
||||
discovered dependencies during tarball scanning.
|
||||
|
||||
Further control of the build can be achieved through the use of the
|
||||
``options.conf`` file. If this file does not exist, it is created by
|
||||
``autospec`` with default values. If certain deprecated configuration
|
||||
files exists ``autospec`` will use the value indicated by those files and
|
||||
remove them.
|
||||
|
||||
For a comprehensive list of control files, view the `autospec readme`_.
|
||||
|
||||
Related topics
|
||||
**************
|
||||
|
||||
* :ref:`autospec`
|
||||
* :ref:`mixer`
|
||||
* :ref:`mixin`
|
||||
|
||||
.. _autospec readme: https://github.com/clearlinux/autospec
|
||||
|
||||
@@ -3,9 +3,8 @@
|
||||
Concepts
|
||||
########
|
||||
|
||||
The concepts section provides content for a deeper understanding of the
|
||||
features of |CLOSIA|. These concepts attempt to provide all the technical
|
||||
details relevant to the |CL| features.
|
||||
|CL-ATTR| does things differently than other Linux distributions. Use the concepts section to learn in detail about the features that make |CL|
|
||||
different.
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
@@ -1,14 +1,23 @@
|
||||
.. _mixer-about:
|
||||
|
||||
Mixer
|
||||
#######
|
||||
#####
|
||||
|
||||
Mixing refers to composing a custom, versioned image of |CLOSIA| for a specific use case. While upstream |CL| provides options to install bundles for various capabilities, some developers and OSVs may wish to either augment the operating system with functionality from their own packages or modify the structure of current bundles. Mixing offers a method to add capabilities while retaining the ability to stay up to date with an upstream version of |CL|.
|
||||
Mixing refers to composing a custom, versioned image of |CL-ATTR| for a
|
||||
specific use case. While upstream |CL| provides options to install bundles
|
||||
for various capabilities, some developers and OSVs may wish to either
|
||||
augment the operating system with functionality from their own packages
|
||||
or modify the structure of current bundles. Mixing offers a method to add
|
||||
capabilities while retaining the ability to stay up to date with an upstream
|
||||
version of |CL|.
|
||||
|
||||
Mixing is a multi-step process that starts with installing the mixer bundle using swupd. You will also need a working knowledge of :abbr:`RPMs (RPM Package Manager files)` and how |CL| bundles work. For a detailed guide on how to create a |CL| mix, visit :ref:`mixer`.
|
||||
Mixing is a multi-step process that starts with installing the mixer bundle
|
||||
using swupd. You will also need a working knowledge of
|
||||
:abbr:`RPMs (RPM Package Manager files)` and how |CL| bundles work. For a
|
||||
detailed guide on how to create a |CL| mix, visit :ref:`mixer`.
|
||||
|
||||
Related Concepts
|
||||
================
|
||||
Related topics
|
||||
==============
|
||||
|
||||
* :ref:`swupd-about`
|
||||
* :ref:`bundles-about`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
.. _security:
|
||||
|
||||
|CL-ATTR| OS Security
|
||||
OS Security
|
||||
*************************
|
||||
|
||||
|CL-ATTR| aims to make systemic and layered security-conscious decisions
|
||||
@@ -9,7 +9,7 @@ within the project's codebase and operating culture.
|
||||
|
||||
|
||||
.. contents:: :local:
|
||||
:depth: 2
|
||||
:depth: 1
|
||||
|
||||
|
||||
|
||||
@@ -97,7 +97,7 @@ standards. Below are some examples:
|
||||
have been removed such as the `finger` and `tcpwrappers`.
|
||||
|
||||
* `SFTP` has been disabled by default due to security
|
||||
considerations. See the `openssh-server reference page`_ for more details.
|
||||
considerations.
|
||||
|
||||
|
||||
Verified trust
|
||||
@@ -182,7 +182,6 @@ good security hygiene. Below are some examples:
|
||||
|
||||
.. _`documentation about Software Updates`: https://clearlinux.org/documentation/clear-linux/concepts/swupd-about
|
||||
.. _`cve-check-tool`: https://github.com/clearlinux/cve-check-tool
|
||||
.. _`openssh-server reference page`: https://clearlinux.org/documentation/clear-linux/reference/bundles/openssh-server
|
||||
.. _`blog post about swupd security`: https://clearlinux.org/blogs/security-software-update-clear-linux-os-intel-architecture
|
||||
.. _`rolling release model`: https://en.wikipedia.org/wiki/Rolling_release
|
||||
.. _`clrtrust`: https://github.com/clearlinux/clrtrust
|
||||
|
||||
@@ -3,35 +3,35 @@
|
||||
Software update
|
||||
###############
|
||||
|
||||
|CLOSIA| does software updates differently than traditional Linux-based
|
||||
operating systems. Where traditional distributions rely on packages for
|
||||
software deployment, |CL| uses the concept of a "bundle" for
|
||||
deployment. Traditional Linux packages provide a particular utility or
|
||||
library; |CL| bundles provide all necessary packages to enable a
|
||||
|CL-ATTR| does software updates differently than traditional Linux-based
|
||||
operating systems. Where traditional distributions rely on packages for
|
||||
software deployment, |CL| uses the concept of a "bundle" for
|
||||
deployment. Traditional Linux packages provide a particular utility or
|
||||
library; |CL| bundles provide all necessary packages to enable a
|
||||
specific function.
|
||||
|
||||
With |CL|, updating equates to an entirely new OS version with a
|
||||
specific set of bundles, as compared to a package-based distribution in
|
||||
which packages may be updated individually. |CL| updates are
|
||||
With |CL|, updating equates to an entirely new OS version with a
|
||||
specific set of bundles, as compared to a package-based distribution in
|
||||
which packages may be updated individually. |CL| updates are
|
||||
efficient, updating only changed files instead of entire packages.
|
||||
|
||||
System administrators can customize or add bundles to the OS, while still
|
||||
taking advantage of a controlled update stream. This enables system
|
||||
System administrators can customize or add bundles to the OS, while still
|
||||
taking advantage of a controlled update stream. This enables system
|
||||
administrators to focus on the pieces that make their deployment unique.
|
||||
|
||||
|
||||
Bundles
|
||||
=======
|
||||
|
||||
While we use packages to manage compiling source code into installable
|
||||
binaries, we do not deploy software through packages. Instead, we use bundles
|
||||
to deploy software, where each bundle encapsulates a particular functionality
|
||||
-- functionality that is enabled by composing all the required upstream
|
||||
open-source projects and packages into one logical unit: a bundle. This
|
||||
While we use packages to manage compiling source code into installable
|
||||
binaries, we do not deploy software through packages. Instead, we use bundles
|
||||
to deploy software, where each bundle encapsulates a particular functionality
|
||||
-- functionality that is enabled by composing all the required upstream
|
||||
open-source projects and packages into one logical unit: a bundle. This
|
||||
simplifies installing features on |CL|.
|
||||
|
||||
For additional resources regarding available bundles, useful bundle commands,
|
||||
and compatible |CL| kernels, visit our :ref:`bundles-about`
|
||||
For additional resources regarding available bundles, useful bundle commands,
|
||||
and compatible |CL| kernels, visit our :ref:`bundles-about`
|
||||
page.
|
||||
|
||||
|
||||
@@ -65,8 +65,8 @@ describe the versions of all the software on the OS. Each build is
|
||||
composed of a specific set of bundles made from a particular version of
|
||||
packages. This matters on a daily basis to system administrators, who
|
||||
need to determine which of their systems do not have the latest security
|
||||
fixes, or which combinations of software have been tested. Every release
|
||||
of the same number is guaranteed to contain the same versions of software,
|
||||
fixes, or which combinations of software have been tested. Every release
|
||||
of the same number is guaranteed to contain the same versions of software,
|
||||
so there's no ambiguity between two systems running the same version of |CL|.
|
||||
|
||||
|
||||
@@ -76,20 +76,20 @@ Updating
|
||||
Another notable difference between package-based distributions and |CL|
|
||||
is how updates are managed. On a package-based OS, system administrators update
|
||||
each individual package or piece of software to a newer (or older!) version. With
|
||||
|CL|, an update translates to an entirely new OS version, containing one
|
||||
or many updates. It is not possible to update a piece of the system while
|
||||
|CL|, an update translates to an entirely new OS version, containing one
|
||||
or many updates. It is not possible to update a piece of the system while
|
||||
remaining on the same version of |CL|.
|
||||
|
||||
How is this useful? Although it seems, at first, like a huge restriction
|
||||
or limitation, this method has many non-obvious benefits. Imagine a
|
||||
cloud environment composed of numerous machines. Here, a homogeneous set of
|
||||
software makes sense -- from the system administrator's level down to the
|
||||
user level. Homogeneous systems allow users to focus on their contributions
|
||||
and/or code, rather than configuring environments or worrying about
|
||||
synchronizing versions and updates. At the system admin level, it ensures
|
||||
user level. Homogeneous systems allow users to focus on their contributions
|
||||
and/or code, rather than configuring environments or worrying about
|
||||
synchronizing versions and updates. At the system admin level, it ensures
|
||||
security is tighter and makes it far easier to monitor and update patches.
|
||||
|
||||
|CL| promotes regular updating of the OS and will automatically check
|
||||
|CL| promotes regular updating of the OS and will automatically check
|
||||
for updates and apply them by default.
|
||||
|
||||
To learn how to run an update of your system, visit our :ref:`swupd-guide` page.
|
||||
@@ -98,9 +98,9 @@ To learn how to run an update of your system, visit our :ref:`swupd-guide` page.
|
||||
Update speed
|
||||
============
|
||||
|
||||
Software updates with |CL| are also efficient. Bundles simply describe
|
||||
a set of files, and the update technology updates *only* files that actually
|
||||
changed by using binary-delta technology for efficiency [1]_. Operating systems
|
||||
Software updates with |CL| are also efficient. Bundles simply describe
|
||||
a set of files, and the update technology updates *only* files that actually
|
||||
changed by using binary-delta technology for efficiency [1]_. Operating systems
|
||||
that use packages as the unit of deployment require full package updates (thus
|
||||
hogging resources), even when one small file in that package has changed.
|
||||
|
||||
@@ -128,5 +128,5 @@ a controlled update stream.
|
||||
To learn more about mixing, visit our :ref:`mixer-about` page.
|
||||
|
||||
|
||||
.. [1] The software update technology for |CLOSIA| was first presented at the
|
||||
.. [1] The software update technology for |CL-ATTR| was first presented at the
|
||||
Linux Plumbers conference in 2012.
|
||||
|
||||
@@ -0,0 +1,802 @@
|
||||
.. _bare-metal-install-beta:
|
||||
|
||||
Install |CL-ATTR| from the live desktop beta image
|
||||
##################################################
|
||||
|
||||
The live desktop beta image allows you to boot |CL-ATTR| into a GNOME
|
||||
desktop without modifying the host system. Using the live image, you can
|
||||
explore the possibilities of developing with |CL|. You can also launch the
|
||||
new installer and install |CL| on your target system.
|
||||
|
||||
.. contents:: :local:
|
||||
:depth: 1
|
||||
|
||||
System requirements
|
||||
*******************
|
||||
|
||||
Assure that your target system supports the installation:
|
||||
|
||||
* :ref:`system-requirements`
|
||||
* :ref:`compatibility-check`
|
||||
|
||||
Preliminary steps
|
||||
*****************
|
||||
|
||||
#. `Navigate to the image directory`_.
|
||||
|
||||
#. Download the file :file:`clear-<release number>-live-desktop-beta.img.xz`
|
||||
|
||||
.. note::
|
||||
|
||||
``<release-number>`` is the latest |CL| auto-numbered release.
|
||||
|
||||
#. Follow your OS instructions to create a bootable USB drive.
|
||||
|
||||
* :ref:`bootable-usb-linux-all`
|
||||
* :ref:`bootable-usb-mac-all`
|
||||
* :ref:`bootable-usb-windows-all`
|
||||
|
||||
.. _install-from-live-image:
|
||||
|
||||
Install from live image
|
||||
***********************
|
||||
|
||||
After you've downloaded and burned the live desktop image on a
|
||||
USB drive, follow these steps.
|
||||
|
||||
#. Insert the USB drive into an available USB slot.
|
||||
|
||||
#. Power on the system.
|
||||
|
||||
#. Open the system BIOS setup menu by pressing the F2 key.
|
||||
|
||||
.. note::
|
||||
|
||||
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.
|
||||
|
||||
Launch the installer
|
||||
====================
|
||||
|
||||
#. After the |CL| live desktop image boots, select the :guilabel:`Activities` menu in the upper left.
|
||||
|
||||
#. Select the icon, :guilabel:`Install Clear Linux OS`, shown in Figure 1.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-1.png
|
||||
:scale: 50 %
|
||||
:alt: Install Clear Linux OS icon
|
||||
|
||||
Figure 1: Install Clear Linux OS icon
|
||||
|
||||
#. Upon selecting the icon, the installer is launched, as shown in Figure 2.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-2.png
|
||||
:scale: 50 %
|
||||
:alt: Clear Linux OS Installer
|
||||
|
||||
Figure 2: Clear Linux OS Installer
|
||||
|
||||
.. _minimum-installation-requirements:
|
||||
|
||||
Minimum installation requirements
|
||||
*********************************
|
||||
|
||||
To fulfill minimum installation requirements, complete
|
||||
:guilabel:`Required options`. All other menu items are optional.
|
||||
|
||||
.. note::
|
||||
|
||||
* In the Main menu, the :kbd:`Install` button is highlighted
|
||||
**only after** you complete :ref:`required-options-installation`.
|
||||
|
||||
* You must choose whether or not to participate in :ref:`telemetrics`
|
||||
before you can :ref:`finish-cl-installation`.
|
||||
|
||||
* You may wish to :ref:`test-network-settings` before you
|
||||
:ref:`configure-network-interfaces`. Assure that a ``Success`` message is received.
|
||||
|
||||
Main menu
|
||||
*********
|
||||
|
||||
In the |CL| Installer main menu, two tabs appear:
|
||||
:guilabel:`[R] Required options` and :guilabel:`[A] Advanced options`.
|
||||
Navigate between tabs using the arrow keys or these shortcut keys:
|
||||
|
||||
* :kbd:`Shift+A` for :guilabel:`[A] Advanced options`
|
||||
* :kbd:`Shift+R` for :guilabel:`[R] Required options`
|
||||
|
||||
To meet the minimum requirements, enter your choices in the
|
||||
:guilabel:`Required options`. After confirmation, your selections appear
|
||||
below menu options in the Main Menu, beside the :guilabel:`>>` chevron.
|
||||
|
||||
Navigation
|
||||
**********
|
||||
|
||||
* Select :kbd:`Tab` or :kbd:`Up/Down` arrows to highlight your choice.
|
||||
|
||||
* Select :kbd:`Enter` or :kbd:`Spacebar` to confirm your choice.
|
||||
|
||||
* Select :kbd:`Cancel` or :kbd:`Esc` to cancel your choice.
|
||||
|
||||
The |CL| Installer main menu appears as shown in Figure 3.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-3.png
|
||||
:scale: 100 %
|
||||
:alt: Clear Linux OS Installer main menu
|
||||
|
||||
Figure 3: :guilabel:`Clear Linux OS Installer main menu`
|
||||
|
||||
.. _required-options-installation:
|
||||
|
||||
Required options
|
||||
****************
|
||||
|
||||
Choose Timezone
|
||||
===============
|
||||
|
||||
#. From the main menu, select :guilabel:`Choose Timezone`.
|
||||
|
||||
#. Select :kbd:`Enter` to continue.
|
||||
|
||||
#. In :guilabel:`Select System Timezone`, navigate to
|
||||
the desired timezone.
|
||||
|
||||
#. Use :kbd:`Tab` to navigate to :guilabel:`Confirm`.
|
||||
|
||||
#. Select :kbd:`Enter` to :kbd:`Confirm`.
|
||||
|
||||
.. note::
|
||||
|
||||
Select :guilabel:`Cancel` to restore the previously defined value and
|
||||
return to the main menu.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-4.png
|
||||
:scale: 100 %
|
||||
:alt: Select System Timezone
|
||||
|
||||
Figure 4: :guilabel:`Select System Timezone`
|
||||
|
||||
Choose Language
|
||||
===============
|
||||
|
||||
#. From the main menu, select :guilabel:`Choose Language`.
|
||||
|
||||
#. Select :kbd:`Enter`.
|
||||
|
||||
#. In :guilabel:`Select System Language`, navigate to your desired language.
|
||||
|
||||
#. Select :kbd:`Tab` to highlight :kbd:`Confirm`.
|
||||
|
||||
#. Select :kbd:`Enter` to :kbd:`Confirm`.
|
||||
|
||||
.. note::
|
||||
|
||||
Select :guilabel:`Cancel` to restore the previously defined value and return to the main menu.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-5.png
|
||||
:scale: 100 %
|
||||
:alt: Select System Language
|
||||
|
||||
Figure 5: :guilabel:`Select System Language`
|
||||
|
||||
|
||||
Configure the Keyboard
|
||||
======================
|
||||
|
||||
#. From the main menu, select :guilabel:`Configure the Keyboard`.
|
||||
|
||||
#. Select :kbd:`Enter`.
|
||||
|
||||
#. In :guilabel:`Select Keyboard`, navigate to the desired option.
|
||||
|
||||
#. In :guilabel:`Test keyboard`, type text to assure that the keys map to
|
||||
your keyboard.
|
||||
|
||||
#. Select :kbd:`Tab` to highlight :guilabel:`Confirm`.
|
||||
|
||||
#. Select :kbd:`Enter` to :kbd:`Confirm`.
|
||||
|
||||
.. note::
|
||||
|
||||
Select :guilabel:`Cancel` to restore the previously defined value and return to the main menu.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-6.png
|
||||
:scale: 100 %
|
||||
:alt: Select Keyboard menu
|
||||
|
||||
Figure 6: :guilabel:`Select Keyboard menu`
|
||||
|
||||
Configure Media
|
||||
===============
|
||||
|
||||
#. From the main menu, select :guilabel:`Configure Media`.
|
||||
|
||||
.. note::
|
||||
|
||||
Available media appear by default.
|
||||
|
||||
#. Navigate to the desired media until highlighted.
|
||||
|
||||
.. TODO: Add another screenshot showing contextual menu.
|
||||
|
||||
#. Select :kbd:`Enter` or :kbd:`Spacebar` to select it.
|
||||
|
||||
Two options for partitioning appear.
|
||||
|
||||
#. Select :guilabel:`Auto Partition` to accept the default configuration, or
|
||||
:guilabel:`Add Partition` to add partitions manually. See instructions
|
||||
below.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-7.png
|
||||
:scale: 100 %
|
||||
:alt: Configure Media menu
|
||||
|
||||
Figure 7: :guilabel:`Configure Media menu`
|
||||
|
||||
.. note::
|
||||
|
||||
Use additional options as necessary during partitioning:
|
||||
|
||||
* Select :guilabel:`Revert` to cancel changes and revert to the
|
||||
original configuration.
|
||||
* Select :guilabel:`Rescan` to show media connected to the host
|
||||
machine.
|
||||
|
||||
#. Select :kbd:`Enter` to :kbd:`Confirm`.
|
||||
|
||||
Choose one partitioning option below
|
||||
------------------------------------
|
||||
|
||||
* :ref:`auto-partition`
|
||||
* :ref:`add-partition`
|
||||
|
||||
.. _auto-partition:
|
||||
|
||||
Auto Partition
|
||||
==============
|
||||
|
||||
Auto partition will configure the media to meet the minimum requirements.
|
||||
|
||||
#. Select :guilabel:`Auto Partition` as shown in Figure 8.
|
||||
|
||||
#. Select :kbd:`Enter` or :kbd:`Spacebar` to highlight
|
||||
:guilabel:`Auto partition`.
|
||||
|
||||
#. Select :kbd:`Enter` to :kbd:`Confirm`.
|
||||
|
||||
This action returns you to the Main Menu.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-8.png
|
||||
:scale: 100 %
|
||||
:alt: Auto Partition
|
||||
|
||||
Figure 8: :guilabel:`Auto Partition`
|
||||
|
||||
|
||||
#. You may skip to the :ref:`telemetry-tui` section below.
|
||||
|
||||
.. _add-partition:
|
||||
|
||||
Add Partition
|
||||
=============
|
||||
|
||||
Minimum requirements
|
||||
====================
|
||||
|
||||
To add partitions manually, assign partitions per the minimum
|
||||
requirements shown in Table 1:
|
||||
|
||||
.. list-table:: **Table 1. Disk Partition Setup**
|
||||
:widths: 33, 33, 33
|
||||
:header-rows: 1
|
||||
|
||||
* - FileSystem
|
||||
- Mount Point
|
||||
- Minimum size
|
||||
* - ``VFAT``
|
||||
- /boot
|
||||
- 150M
|
||||
* - ``swap``
|
||||
-
|
||||
- 256MB
|
||||
* - ``root``
|
||||
- /
|
||||
- *Size depends upon use case/desired bundles.*
|
||||
|
||||
#. In the Configure Media menu, select :guilabel:`Add Partition`.
|
||||
|
||||
.. note:: To change an existing partition, navigate to the partition,
|
||||
and select :guilabel:`Enter`.
|
||||
|
||||
boot partition
|
||||
--------------
|
||||
|
||||
#. In the :guilabel:`File System` menu, select :kbd:`Up/Down` arrows to
|
||||
select the file system type. See Figure 9.
|
||||
|
||||
#. In :guilabel:`Mount Point`, enter the ``/boot`` partition.
|
||||
|
||||
#. In :guilabel:`Size`, enter an appropriate size (e.g., 150M) per Table 1.
|
||||
|
||||
#. Navigate to :guilabel:`Confirm` until highlighted.
|
||||
|
||||
#. Select :guilabel:`Enter` to confirm.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-9.png
|
||||
:scale: 100 %
|
||||
:alt: boot partition
|
||||
|
||||
Figure 9: :guilabel:`boot partition`
|
||||
|
||||
swap partition
|
||||
--------------
|
||||
|
||||
#. In the :guilabel:`File System` menu, select :kbd:`Up/Down` arrows to
|
||||
select the file system type. See Figure 10.
|
||||
|
||||
#. In :guilabel:`Mount Point`, the field remains blank.
|
||||
|
||||
.. note::
|
||||
|
||||
The Mount Point field is disabled.
|
||||
|
||||
#. In :guilabel:`Size`, enter an appropriate size (e.g., 256MB) per Table 1.
|
||||
|
||||
#. Navigate to :guilabel:`Add`.
|
||||
|
||||
#. Select :guilabel:`Enter` to continue.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-10.png
|
||||
:scale: 100 %
|
||||
:alt: swap partition
|
||||
|
||||
Figure 10: :guilabel:`swap partition`
|
||||
|
||||
root partition
|
||||
--------------
|
||||
|
||||
#. In the :guilabel:`File System` menu, select :kbd:`Up/Down` arrows to
|
||||
select the file system type. See Figure 11.
|
||||
|
||||
#. In :guilabel:`Mount Point`, enter ``/root``.
|
||||
|
||||
#. In :guilabel:`Size`, enter an appropriate size per Table 1.
|
||||
|
||||
.. note::
|
||||
|
||||
The remaining available space shows by default.
|
||||
|
||||
#. Navigate to :guilabel:`Add` until highlighted.
|
||||
|
||||
#. Select :guilabel:`Enter` to continue.
|
||||
|
||||
You are returned to the :guilabel:`Configure media` menu.
|
||||
|
||||
#. Select :guilabel:`Confirm` to complete the media selection.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-11.png
|
||||
:scale: 100 %
|
||||
:alt: root partition
|
||||
|
||||
Figure 11: :guilabel:`root partition`
|
||||
|
||||
You are returned to the :guilabel:`Configure media` menu. Your partitions should appear similar to those shown in Figure 12.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-12.png
|
||||
:scale: 100 %
|
||||
:alt: Partitions
|
||||
|
||||
Figure 12: :guilabel:`Partitions`
|
||||
|
||||
#. Navigate to :guilabel:`Confirm` until highlighted.
|
||||
|
||||
#. Select :guilabel:`Enter` to complete adding partitions.
|
||||
|
||||
.. _telemetry-tui:
|
||||
|
||||
Telemetry
|
||||
=========
|
||||
|
||||
To fulfill the :guilabel:`Required options`, choose whether or not to
|
||||
participate in `telemetry`_. :ref:`telemetrics` is a |CL| feature that
|
||||
reports failures and crashes to the |CL| development team for improvements.
|
||||
For more detailed information, see our :ref:`telemetry-about` page.
|
||||
|
||||
#. In the main menu, navigate to :guilabel:`Telemetry` and select
|
||||
:kbd:`Enter`.
|
||||
|
||||
#. Select :kbd:`Tab` to highlight your choice.
|
||||
|
||||
#. Select :kbd:`Enter` to confirm.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-13.png
|
||||
:scale: 100 %
|
||||
:alt: Enable Telemetry
|
||||
|
||||
Figure 13: :guilabel:`Enable Telemetry`
|
||||
|
||||
Skip to finish installation
|
||||
===========================
|
||||
|
||||
After selecting values for all :guilabel:`Required options`, you may skip directly to :ref:`finish-cl-installation`
|
||||
|
||||
If you wish to configure network interfaces or proxy settings,
|
||||
or add bundles, or add/manage users, continue to the next section.
|
||||
|
||||
Advanced Options
|
||||
****************
|
||||
|
||||
.. _configure-network-interfaces:
|
||||
|
||||
Configure Network Interfaces
|
||||
============================
|
||||
|
||||
By default, |CL| is configured to automatically detect the host network
|
||||
interface using DHCP. However, if you want to use a static IP address or if
|
||||
you do not have a DHCP server on your network, follow these instructions to
|
||||
manually configure the network interface. Otherwise, default network
|
||||
interface settings are automatically applied.
|
||||
|
||||
.. note::
|
||||
|
||||
If DHCP is available, no user selection may be required.
|
||||
|
||||
#. Navigate to :guilabel:`Configure Network Interfaces` and
|
||||
select :kbd:`Enter`.
|
||||
|
||||
#. Navigate to the network :guilabel:`interface` you wish to change.
|
||||
|
||||
#. When the desired :guilabel:`interface` is highlighted, select
|
||||
:guilabel:`Enter` to edit.
|
||||
|
||||
.. note:: Multiple network interfaces may appear.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-14.png
|
||||
:scale: 100 %
|
||||
:alt: Configure Network Interfaces
|
||||
|
||||
Figure 14: :guilabel:`Configure Network Interfaces`
|
||||
|
||||
#. Notice :guilabel:`Automatic / dhcp` is selected by default (at bottom).
|
||||
|
||||
Optional: Navigate to the checkbox :guilabel:`Automatic / dhcp` and select
|
||||
:kbd:`Spacebar` to deselect.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-15.png
|
||||
:scale: 100 %
|
||||
:alt: Network interface configuration
|
||||
|
||||
Figure 15: :guilabel:`Network interface configuration`
|
||||
|
||||
#. Navigate to the appropriate fields and assign the desired
|
||||
network configuration.
|
||||
|
||||
#. To save settings, navigate to :guilabel:`Confirm` and select
|
||||
:kbd:`Enter`.
|
||||
|
||||
.. note::
|
||||
|
||||
To revert to previous settings, navigate to the :guilabel:`Cancel`
|
||||
and select :kbd:`Enter`.
|
||||
|
||||
#. Upon confirming network configuration, the :guilabel:`Testing Networking`
|
||||
dialogue appears. Assure the result shows success. If a failure occurs,
|
||||
your changes will not be saved.
|
||||
|
||||
#. Upon confirmation, you are returned to :guilabel:`Network interface`
|
||||
settings.
|
||||
|
||||
#. Navigate to and select :guilabel:`Main Menu`.
|
||||
|
||||
Optional: :ref:`Skip to finish installation <finish-cl-installation>`.
|
||||
|
||||
Proxy
|
||||
=====
|
||||
|
||||
|CL| automatically attempts to detect proxy settings, as described in
|
||||
`Autoproxy`_. If you need to manually assign proxy settings, follow this
|
||||
instruction.
|
||||
|
||||
#. From the Advanced options menu, navigate to :guilabel:`Proxy`, and
|
||||
select :kbd:`Enter`.
|
||||
|
||||
#. Navigate to the field :guilabel:`HTTPS Proxy`.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-16.png
|
||||
:scale: 100 %
|
||||
:alt: Configure the network proxy
|
||||
|
||||
Figure 16: :guilabel:`Configure the network proxy`
|
||||
|
||||
#. Enter the desired proxy address and port using conventional syntax,
|
||||
such as: http://address:port.
|
||||
|
||||
#. Navigate to :guilabel:`Confirm` and select :kbd:`Enter`.
|
||||
|
||||
#. To revert to previous settings, navigate to :guilabel:`Cancel`
|
||||
and select :guilabel:`Cancel`.
|
||||
|
||||
Optional: :ref:`Skip to finish installation <finish-cl-installation>`.
|
||||
|
||||
.. _test-network-settings:
|
||||
|
||||
Test Network Settings
|
||||
=====================
|
||||
|
||||
To manually assure network connectivity before installing |CL|,
|
||||
select :guilabel:`Test Network Settings` and select :guilabel:`Enter`.
|
||||
|
||||
A progress bar appears as shown in Figure 17.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-17.png
|
||||
:scale: 100 %
|
||||
:alt: Testing Networking dialogue
|
||||
|
||||
Figure 17: :guilabel:`Testing Networking dialogue`
|
||||
|
||||
.. note::
|
||||
|
||||
Any changes made to network settings are automatically tested
|
||||
during configuration.
|
||||
|
||||
Optional: :ref:`Skip to finish installation <finish-cl-installation>`.
|
||||
|
||||
Bundle Selection
|
||||
================
|
||||
|
||||
#. On the Advanced menu, select :guilabel:`Bundle selection`
|
||||
|
||||
#. Navigate to the desired bundle using :kbd:`Tab` or :kbd:`Up/Down` arrows.
|
||||
|
||||
#. Select :kbd:`Spacebar` to select the checkbox for each desired bundle.
|
||||
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-18.png
|
||||
:scale: 100 %
|
||||
:alt: Bundle selection
|
||||
|
||||
Figure 18: :guilabel:`Bundle selection`
|
||||
|
||||
#. Select :kbd:`Confirm` or :kbd:`Cancel`.
|
||||
|
||||
You are returned to the :guilabel:`Advanced options` menu.
|
||||
|
||||
Optional: :ref:`Skip to finish installation <finish-cl-installation>`.
|
||||
|
||||
User Manager
|
||||
============
|
||||
|
||||
Add New User
|
||||
------------
|
||||
|
||||
#. In Advanced Options, select :guilabel:`User Manager`.
|
||||
|
||||
#. Select :guilabel:`Add New User` as shown in Figure 19.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-19.png
|
||||
:scale: 100 %
|
||||
:alt: Add New User, User Name
|
||||
|
||||
Figure 19: :guilabel:`Add New User`
|
||||
|
||||
|
||||
#. Optional: Enter a :guilabel:`User Name`.
|
||||
|
||||
.. note:
|
||||
|
||||
The User Name must be alphanumeric and can include spaces, commas, or hyphens. Maximum length is 64 characters.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-20.png
|
||||
:scale: 100 %
|
||||
:alt: User Name
|
||||
|
||||
Figure 20: :guilabel:`User Name`
|
||||
|
||||
#. Enter a :guilabel:`Login`.
|
||||
|
||||
.. note::
|
||||
|
||||
The User Login must be alphanumeric and can include hyphens and underscores. Maximum length is 31 characters.
|
||||
|
||||
#. Enter a :guilabel:`Password`.
|
||||
|
||||
.. note:
|
||||
|
||||
Minimum length is 8 characters. Maximum length is 255 characters.
|
||||
|
||||
#. In :guilabel:`Retype`, enter the same password.
|
||||
|
||||
#. Optional: Navigate to the :guilabel:`Administrative` checkbox and select
|
||||
:kbd:`Spacebar` to assign administrative rights to the user.
|
||||
|
||||
.. note::
|
||||
|
||||
Selecting this option enables sudo privileges for the user.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-21.png
|
||||
:scale: 100 %
|
||||
:alt: Administrative rights
|
||||
|
||||
Figure 21: :guilabel:`Administrative rights`
|
||||
|
||||
#. Select :kbd:`Confirm`.
|
||||
|
||||
.. note::
|
||||
|
||||
If desired, select :guilabel:`Reset` to reset the form.
|
||||
|
||||
Modify / Delete User
|
||||
--------------------
|
||||
|
||||
#. In User Manager, select :guilabel:`Tab` to highlight the user, as shown
|
||||
in Figure 22.
|
||||
|
||||
#. Select :kbd:`Enter` to modify the user.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-22.png
|
||||
:scale: 100 %
|
||||
:alt: Modify User
|
||||
|
||||
Figure 22: :guilabel:`Modify User`
|
||||
|
||||
#. Modify user details as desired.
|
||||
|
||||
Optional: To delete the user, navigate to the :guilabel:`Delete`
|
||||
button and select :kbd:`Enter`
|
||||
|
||||
#. Navigate to :kbd:`Confirm` until highlighted.
|
||||
|
||||
.. note::
|
||||
|
||||
Optional: Select :guilabel:`Reset` to rest the form.
|
||||
|
||||
#. Select :guilabel:`Confirm` to save the changes you made.
|
||||
|
||||
You are returned to the User Manager menu.
|
||||
|
||||
Optional: :ref:`Skip to finish installation <finish-cl-installation>`.
|
||||
|
||||
Kernel Command Line
|
||||
===================
|
||||
|
||||
For more advanced users, |CL| provides the ability to add, or remove, kernel
|
||||
arguments. If you want to append a new argument, enter the argument here.
|
||||
This argument will be used every time you install a new kernel or update a
|
||||
new kernel.
|
||||
|
||||
#. In Advanced Options, select :guilabel:`Tab` to highlight
|
||||
:guilabel:`Kernel Command Line`.
|
||||
|
||||
#. Select :kbd:`Enter`.
|
||||
|
||||
#. To add or remove arguments, choose one of the following options.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-23.png
|
||||
:scale: 100 %
|
||||
:alt: kernel command line
|
||||
|
||||
Figure 23: :guilabel:`kernel command line`
|
||||
|
||||
#. To add arguments, enter the argument in :guilabel:`Add Extra Arguments`.
|
||||
|
||||
#. To remove an existing argument, enter the argument in
|
||||
:guilabel:`Remove Arguments`.
|
||||
|
||||
#. Select :kbd:`Confirm`.
|
||||
|
||||
Optional: :ref:`Skip to finish installation <finish-cl-installation>`.
|
||||
|
||||
Kernel Selection
|
||||
================
|
||||
|
||||
#. Select a kernel option. By default, the latest kernel release is
|
||||
selected.
|
||||
|
||||
.. note::
|
||||
|
||||
To choose a different kernel, such as Long Term Support (LTS), shown in Figure 24, navigate to it using :guilabel:`Tab`.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-24.png
|
||||
:scale: 100 %
|
||||
:alt: Kernel selection
|
||||
|
||||
Figure 24: :guilabel:`Kernel selection`
|
||||
|
||||
#. Select :kbd:`Spacebar` to select the desired option.
|
||||
|
||||
#. Select :kbd:`Confirm`.
|
||||
|
||||
Optional: :ref:`Skip to finish installation <finish-cl-installation>`.
|
||||
|
||||
Swupd Mirror
|
||||
============
|
||||
|
||||
If you have your own custom mirror of |CL|, you may want to add that URL.
|
||||
|
||||
#. In Advanced Options, select :guilabel:`Swupd Mirror`.
|
||||
|
||||
#. To add a local swupd mirror, enter a valid URL in :guilabel:`Mirror URL:`
|
||||
|
||||
#. Select :kbd:`Confirm`.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-25.png
|
||||
:scale: 100 %
|
||||
:alt: Swupd Mirror
|
||||
|
||||
Figure 25: :guilabel:`Swupd Mirror`
|
||||
|
||||
Optional: :ref:`Skip to finish installation <finish-cl-installation>`.
|
||||
|
||||
Assign Hostname
|
||||
===============
|
||||
|
||||
#. In Advanced Options, select :guilabel:`Assign Hostname`.
|
||||
|
||||
#. In :guilabel:`Hostname`, enter the hostname only (excluding the domain).
|
||||
|
||||
.. note::
|
||||
|
||||
Hostname does not allow empty spaces. Hostname must start with an
|
||||
alphanumeric character but may also contain hyphens. Maximum length of
|
||||
63 characters.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-26.png
|
||||
:scale: 100 %
|
||||
:alt: Assign Hostname
|
||||
|
||||
Figure 26: :guilabel:`Assign Hostname`
|
||||
|
||||
|
||||
#. Navigate to :kbd:`Confirm` until highlighted.
|
||||
|
||||
#. Select :kbd:`Confirm`.
|
||||
|
||||
Optional: :ref:`Skip to finish installation <finish-cl-installation>`.
|
||||
|
||||
Automatic OS Updates
|
||||
====================
|
||||
|
||||
In the rare case that you need to disable automatic software updates,
|
||||
follow the onscreen instructions.
|
||||
|
||||
#. In Advanced Options, select :guilabel:`Automatic OS Updates`.
|
||||
|
||||
#. Select the desired option.
|
||||
|
||||
.. figure:: figures/bare-metal-install-beta-27.png
|
||||
:scale: 100 %
|
||||
:alt: Automatic OS Updates
|
||||
|
||||
Figure 27: :guilabel:`Automatic OS Updates`
|
||||
|
||||
You are returned to the :guilabel:`Main Menu`.
|
||||
|
||||
.. _finish-cl-installation:
|
||||
|
||||
Finish installation
|
||||
*******************
|
||||
|
||||
#. When you are satisfied with your installation configuration, navigate to
|
||||
:guilabel:`Install` and select :kbd:`Enter`.
|
||||
|
||||
.. note::
|
||||
|
||||
Whenever installation is finished, a ``reboot`` button appears.
|
||||
|
||||
#. Select ``reboot``.
|
||||
|
||||
#. When the system reboots, remove any installation media present.
|
||||
|
||||
**Congratulations!**
|
||||
|
||||
You have successfully installed |CL| on bare metal using the new installer.
|
||||
|
||||
.. _Navigate to the image directory: https://download.clearlinux.org/image/
|
||||
.. _Autoproxy: https://clearlinux.org/features/autoproxy
|
||||
.. _telemetry: https://clearlinux.org/features/telemetry
|
||||
|
After Width: | Height: | Size: 663 KiB |
|
After Width: | Height: | Size: 6.3 KiB |
|
After Width: | Height: | Size: 37 KiB |
|
After Width: | Height: | Size: 6.3 KiB |
|
After Width: | Height: | Size: 8.1 KiB |
|
After Width: | Height: | Size: 5.8 KiB |
|
After Width: | Height: | Size: 5.6 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 7.7 KiB |
|
After Width: | Height: | Size: 8.1 KiB |
|
After Width: | Height: | Size: 7.0 KiB |
|
After Width: | Height: | Size: 519 KiB |
|
After Width: | Height: | Size: 5.7 KiB |
|
After Width: | Height: | Size: 6.0 KiB |
|
After Width: | Height: | Size: 5.2 KiB |
|
After Width: | Height: | Size: 7.6 KiB |
|
After Width: | Height: | Size: 5.8 KiB |
|
After Width: | Height: | Size: 5.5 KiB |
|
After Width: | Height: | Size: 4.7 KiB |
|
After Width: | Height: | Size: 9.6 KiB |
|
After Width: | Height: | Size: 6.4 KiB |
|
After Width: | Height: | Size: 8.5 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 6.6 KiB |
|
After Width: | Height: | Size: 5.6 KiB |
|
After Width: | Height: | Size: 6.1 KiB |
|
After Width: | Height: | Size: 6.4 KiB |
@@ -1,29 +1,32 @@
|
||||
.. _bare-metal-install:
|
||||
|
||||
Install Clear Linux OS on bare metal (automatic)
|
||||
################################################
|
||||
Install |CL-ATTR| on bare metal (automatic)
|
||||
###########################################
|
||||
|
||||
These instructions guide you through the installation of |CLOSIA|
|
||||
These instructions guide you through the installation of |CL-ATTR|
|
||||
on bare metal using a bootable USB drive.
|
||||
|
||||
Before you begin, run our :ref:`compatibility-check`.
|
||||
Before you begin, check that your system meets the requirements to install |CL|:
|
||||
|
||||
* :ref:`system-requirements`
|
||||
* :ref:`compatibility-check`
|
||||
|
||||
|
||||
Download the latest Clear Linux installer image
|
||||
***********************************************
|
||||
Download the latest |CL| installer image
|
||||
****************************************
|
||||
|
||||
Get the latest |CL| installer image from the `image`_ directory.
|
||||
Look for the :file:`clear-[version number]-installer.img.xz` file. You can also use this command:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
curl -O https://download.clearlinux.org/image/clear-$(curl https://download.clearlinux.org/latest)-installer.img.xz
|
||||
|
||||
Once you have downloaded the image, verify and uncompress the file.
|
||||
curl -O https://download.clearlinux.org/image/$(curl https://download.clearlinux.org/image/latest-images | grep "installer")
|
||||
|
||||
.. include:: ../../guides/maintenance/download-verify-uncompress-linux.rst
|
||||
:Start-after: verify-linux:
|
||||
:end-before: To uncompress a GZ
|
||||
Once you have downloaded the image, verify and decompress the file.
|
||||
|
||||
.. include:: ../../guides/maintenance/download-verify-decompress-linux.rst
|
||||
:Start-after: incl-decompress-image:
|
||||
:end-before: incl-decompress-image-end:
|
||||
|
||||
.. include:: ../bootable-usb/bootable-usb-linux.rst
|
||||
:Start-after: copy-usb-linux:
|
||||
@@ -31,8 +34,8 @@ Once you have downloaded the image, verify and uncompress the file.
|
||||
|
||||
.. _install-on-target:
|
||||
|
||||
Install Clear Linux on your target system
|
||||
*****************************************
|
||||
Install |CL| 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
|
||||
@@ -54,25 +57,24 @@ Follow these steps to install |CL| on the target system:
|
||||
|
||||
#. 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
|
||||
#. The |CL| boot menu will start as shown in figure 1.
|
||||
Select :guilabel:`Clear Linux OS` 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
|
||||
:alt: Boot menu
|
||||
|
||||
Figure 1: :guilabel:`Clear Linux boot menu`
|
||||
Figure 1: :guilabel:`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
|
||||
#. This will take you into the |CL| 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
|
||||
:alt: Installer menu
|
||||
|
||||
Figure 2: :guilabel:`Clear Linux OS for Intel Architecture Installer`
|
||||
Figure 2: :guilabel:`Installer menu`
|
||||
|
||||
Press the :kbd:`Enter` key.
|
||||
|
||||
@@ -97,7 +99,7 @@ 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 4.
|
||||
|
||||
.. figure:: figures/bare-metal-install-4.png
|
||||
:scale: 50 %
|
||||
@@ -134,11 +136,11 @@ 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
|
||||
===================================
|
||||
Choose |CL| 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:
|
||||
open a shell, or exit the |CL| installer. This menu is shown in figure 5.
|
||||
|
||||
.. figure:: figures/bare-metal-install-5.png
|
||||
:scale: 50 %
|
||||
@@ -181,8 +183,8 @@ open a shell, or exit the |CL| installer. This menu is shown in figure 5:
|
||||
information is collected. Please visit our website to
|
||||
`learn more about telemetry.`_
|
||||
|
||||
Choose Clear Linux installation type
|
||||
************************************
|
||||
Choose |CL| installation type
|
||||
*****************************
|
||||
|
||||
Figure 7 shows the next step of the |CL| installer:
|
||||
:guilabel:`Choose installation Type`. Chose whether to install |CL|
|
||||
@@ -216,14 +218,14 @@ If you want to perform any of these additional tasks, select the
|
||||
: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
|
||||
**********************************
|
||||
|CL| 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.
|
||||
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.
|
||||
@@ -253,7 +255,7 @@ Clear Linux automatic installation
|
||||
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.
|
||||
installation` status message and the :guilabel:`< Ok >` button is highlighted as shown in figure 10.
|
||||
|
||||
#. Press the :kbd:`Enter` key to continue.
|
||||
|
||||
@@ -264,10 +266,10 @@ Clear Linux automatic installation
|
||||
Figure 10: :guilabel:`Installation complete`
|
||||
|
||||
Figure 11 shows the final installer screen, showing that the
|
||||
installation completed successfully and the system will reboot.
|
||||
installation completed successfully and the system will reboot.
|
||||
|
||||
#. Press the :kbd:`Enter` key and remove the USB media while the system
|
||||
restarts.
|
||||
#. Press the :kbd:`Enter` key and remove the USB media while the system
|
||||
restarts.
|
||||
|
||||
.. figure:: figures/bare-metal-install-11.png
|
||||
:scale: 50 %
|
||||
@@ -279,7 +281,7 @@ 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:
|
||||
console requests your login as shown in figure 12:
|
||||
|
||||
.. figure:: figures/bare-metal-install-12.png
|
||||
:scale: 50 %
|
||||
@@ -300,18 +302,15 @@ You have now set your root password and are logged in with root privileges.
|
||||
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`.
|
||||
Next steps
|
||||
**********
|
||||
|
||||
* 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.
|
||||
The automatic installation of |CL| is designed to install with minimal
|
||||
software overhead. Some housekeeping and package installations could be
|
||||
needed before you can take full advantage of the |CL| operating system.
|
||||
|
||||
See the :ref:`enable-user-space` guide for additional information and
|
||||
instructions.
|
||||
|
||||
|
||||
.. _`information about stateless`:
|
||||
@@ -323,4 +322,4 @@ system. These instructions are captured in the :ref:`enable-user-space`.
|
||||
.. _`NUC6i5SYH product page`:
|
||||
http://www.intel.com/content/www/us/en/nuc/nuc-kit-nuc6i5syh.html
|
||||
|
||||
.. _image: https://download.clearlinux.org/image
|
||||
.. _image: https://download.clearlinux.org/image
|
||||
|
||||
|
Before Width: | Height: | Size: 51 KiB After Width: | Height: | Size: 37 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 8.1 KiB |
|
Before Width: | Height: | Size: 269 KiB After Width: | Height: | Size: 248 KiB |
|
Before Width: | Height: | Size: 236 KiB After Width: | Height: | Size: 203 KiB |
|
Before Width: | Height: | Size: 151 KiB |
|
Before Width: | Height: | Size: 138 KiB |
@@ -89,7 +89,7 @@ to install |CL| onto.
|
||||
|
||||
Figure 4: :guilabel:`Device installation warning`
|
||||
|
||||
.. _Additional_manual_installer_settings:
|
||||
.. _incl-additional-manual-installer-settings:
|
||||
|
||||
Additional manual installer settings
|
||||
====================================
|
||||
@@ -183,6 +183,8 @@ For a complete description of the content of these additional bundles, go to
|
||||
the :ref:`software bundle list <bundles>` and select the name for a
|
||||
specific bundle to show the contents within the bundle.
|
||||
|
||||
.. _incl-additional-manual-installer-settings-end:
|
||||
|
||||
Target system network configuration
|
||||
===================================
|
||||
|
||||
|
Before Width: | Height: | Size: 87 KiB After Width: | Height: | Size: 87 KiB |
|
Before Width: | Height: | Size: 91 KiB After Width: | Height: | Size: 91 KiB |
|
Before Width: | Height: | Size: 110 KiB After Width: | Height: | Size: 110 KiB |
|
Before Width: | Height: | Size: 131 KiB After Width: | Height: | Size: 131 KiB |
|
Before Width: | Height: | Size: 159 KiB After Width: | Height: | Size: 159 KiB |
|
Before Width: | Height: | Size: 90 KiB After Width: | Height: | Size: 90 KiB |
|
Before Width: | Height: | Size: 861 KiB After Width: | Height: | Size: 861 KiB |
|
Before Width: | Height: | Size: 633 KiB After Width: | Height: | Size: 633 KiB |
|
Before Width: | Height: | Size: 138 KiB After Width: | Height: | Size: 138 KiB |
|
Before Width: | Height: | Size: 124 KiB After Width: | Height: | Size: 124 KiB |
|
Before Width: | Height: | Size: 138 KiB After Width: | Height: | Size: 138 KiB |
|
Before Width: | Height: | Size: 215 KiB After Width: | Height: | Size: 215 KiB |
|
Before Width: | Height: | Size: 63 KiB After Width: | Height: | Size: 63 KiB |
|
Before Width: | Height: | Size: 106 KiB After Width: | Height: | Size: 106 KiB |
|
Before Width: | Height: | Size: 117 KiB After Width: | Height: | Size: 117 KiB |
|
Before Width: | Height: | Size: 366 KiB After Width: | Height: | Size: 366 KiB |
@@ -0,0 +1,203 @@
|
||||
.. _bootable-usb-beta-all:
|
||||
|
||||
Create a bootable USB on your OS
|
||||
################################
|
||||
|
||||
Follow these instructions to create a bootable |CL-ATTR| USB drive based on
|
||||
your OS.
|
||||
|
||||
* :ref:`bootable-usb-linux-all`
|
||||
* :ref:`bootable-usb-mac-all`
|
||||
* :ref:`bootable-usb-windows-all`
|
||||
|
||||
Return to :ref:`install-from-live-image`
|
||||
|
||||
Requirements:
|
||||
*************
|
||||
|
||||
* Use a **16GB** or larger USB drive.
|
||||
|
||||
.. _bootable-usb-linux-all:
|
||||
|
||||
Create a bootable USB drive on Linux
|
||||
************************************
|
||||
|
||||
.. include:: ../../guides/maintenance/download-verify-decompress-linux.rst
|
||||
:Start-after: verify-linux:
|
||||
|
||||
|
||||
Burn the |CL| image onto a USB drive
|
||||
====================================
|
||||
|
||||
.. caution::
|
||||
|
||||
|CAUTION-BACKUP-USB|
|
||||
|
||||
#. Open a terminal emulator and get root privilege.
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
sudo -s
|
||||
|
||||
#. Go to the directory with the decompressed image.
|
||||
#. Plug in the USB drive.
|
||||
#. Identify the USB drive using the :command:`lsblk` command. This shows all
|
||||
drives attached to the system, including the primary hard disk. In the
|
||||
example output below, there are 4 drives
|
||||
(`/dev/sda`, `/dev/sdb`, `/dev/sdc`, and `/dev/sdd`) attached, where
|
||||
`/dev/sda` is primary drive in this case. The remaining are 3 USB drives.
|
||||
The output also shows the mounted partitions (under the `MOUNTPOINT`
|
||||
column) for each drive.
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
lsblk
|
||||
|
||||
Example output:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
|
||||
sdd 8:48 1 15G 0 disk
|
||||
├─sdd2 8:50 1 5G 0 part /run/media/user1/960c184f-3bb7-42b7-bcaf-0c1282
|
||||
├─sdd3 8:51 1 8G 0 part /run/media/user1/704f3382-b26d-4f34-af1b-cb9aab
|
||||
└─sdd1 8:49 1 2G 0 part
|
||||
sdb 8:16 1 14.8G 0 disk
|
||||
└─sdb1 8:17 1 14.8G 0 part /run/media/user1/PATRIOT_USB
|
||||
sdc 8:32 1 7.3G 0 disk
|
||||
└─sdc1 8:33 1 7.3G 0 part /run/media/user1/LINUX MINT
|
||||
sda 8:0 0 335.4G 0 disk
|
||||
├─sda4 8:4 0 28G 0 part
|
||||
├─sda2 8:2 0 3.7G 0 part [SWAP]
|
||||
├─sda7 8:7 0 6G 0 part /home
|
||||
├─sda5 8:5 0 1G 0 part /boot
|
||||
├─sda3 8:3 0 954M 0 part /boot/efi
|
||||
├─sda1 8:1 0 28G 0 part
|
||||
├─sda8 8:8 0 30G 0 part /
|
||||
└─sda6 8:6 0 7.9G 0 part [SWAP]
|
||||
|
||||
#. Before an image can be burned onto a USB drive, it should be un-mounted.
|
||||
Some Linux* distros may automatically mount a USB drive when it is plugged
|
||||
in. To unmount, use the :command:`umount` command followed by the device
|
||||
identifier/partition. For example: From the above :command:`lsblk` output,
|
||||
`/dev/sdd` has 2 mounted partitions. To unmount them, enter:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
umount /dev/sdd2
|
||||
umount /dev/sdd3
|
||||
|
||||
#. Burn the image onto the USB drive. The command-line example below burns an
|
||||
uncompressed image onto `/dev/sdd`:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
dd if=./clear-[version number]-[image type] of=/dev/sdd bs=4M status=progress
|
||||
|
||||
.. _bootable-usb-mac-all:
|
||||
|
||||
Create a bootable USB drive on macOS*
|
||||
*************************************
|
||||
|
||||
.. include:: ../../guides/maintenance/download-verify-decompress-mac.rst
|
||||
:start-after: verify-mac:
|
||||
|
||||
|
||||
Burn the |CL| image onto a USB drive
|
||||
====================================
|
||||
|
||||
.. caution::
|
||||
|
||||
|CAUTION-BACKUP-USB|
|
||||
|
||||
#. Launch the Terminal app.
|
||||
#. Go to the directory with the decompressed image.
|
||||
#. Plug in a USB drive and get its identifier by entering the command
|
||||
:command:`diskutil list`. See Figure 1.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
diskutil list
|
||||
|
||||
.. figure:: figures/bootable-usb-mac-1.png
|
||||
:scale: 100 %
|
||||
:alt: Get USB drive identifier
|
||||
|
||||
Figure 1: macOS* - Get USB drive identifier
|
||||
|
||||
#. Unmount the USB drive identified in the previous step. The command-line
|
||||
example below umounts `/dev/disk2`:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
diskutil umountDisk /dev/disk2
|
||||
|
||||
#. Burn the image onto the drive using the :command:`dd` command. The
|
||||
command-line example below burns an uncompressed image onto `/dev/disk2`:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
sudo dd if=./clear-[version number]-[image type] of=/dev/rdisk2 bs=4m
|
||||
|
||||
|
||||
Adding an ‘r’ in front of the disk identifier should help speed up the
|
||||
imaging process.
|
||||
|
||||
You can press :kbd:`<CTL>-T` to check imaging progress.
|
||||
|
||||
#. Eject the USB drive.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
diskutil eject /dev/disk2
|
||||
|
||||
.. _bootable-usb-windows-all:
|
||||
|
||||
Create a bootable USB drive on Windows\*
|
||||
****************************************
|
||||
|
||||
.. include:: ../../guides/maintenance/download-verify-decompress-windows.rst
|
||||
:Start-after: verify-windows:
|
||||
|
||||
Burn the |CL| image onto a USB drive
|
||||
====================================
|
||||
|
||||
.. caution::
|
||||
|
||||
|CAUTION-BACKUP-USB|
|
||||
|
||||
#. Download the `Rufus`_ utility to burn the image onto a USB drive.
|
||||
|
||||
#. Plug in the USB drive and open Rufus.
|
||||
|
||||
#. Click the :guilabel:`SELECT` button. See Figure 1.
|
||||
|
||||
.. figure:: figures/bootable-usb-windows-1.png
|
||||
:scale: 80 %
|
||||
:alt: Rufus utility - Click the SELECT button
|
||||
|
||||
Figure 1: Rufus utility - Click the SELECT button
|
||||
|
||||
#. Find and select the previously extracted |CL| image file.
|
||||
Then, click the :guilabel:`Open` button. See Figure 2.
|
||||
|
||||
.. figure:: figures/bootable-usb-windows-2.png
|
||||
:scale: 80 %
|
||||
:alt: Rufus utility - Show and select |CL| image file
|
||||
|
||||
Figure 2: Rufus utility - Show and select |CL| image file
|
||||
|
||||
#. Click the :guilabel:`START` button. See Figure 3.
|
||||
|
||||
.. figure:: figures/bootable-usb-windows-3.png
|
||||
:scale: 80 %
|
||||
:alt: Rufus utility - Click the START button
|
||||
|
||||
Figure 3: Rufus utility - Click START button
|
||||
|
||||
Return to install from live image
|
||||
*********************************
|
||||
|
||||
Return to :ref:`install-from-live-image`
|
||||
|
||||
.. _Rufus: https://rufus.ie/
|
||||
@@ -1,9 +1,9 @@
|
||||
.. _bootable-usb-linux:
|
||||
|
||||
Create a bootable USB drive on Linux
|
||||
####################################
|
||||
Create a bootable USB drive on Linux\*
|
||||
######################################
|
||||
|
||||
Follow these instructions to create a bootable |CLOSIA| USB drive.
|
||||
Follow these instructions to create a bootable |CL-ATTR| USB drive.
|
||||
Use an **8GB** or larger USB drive. Download either a live image,
|
||||
``clear-<version>-live.img.xz`` or an installer image,
|
||||
``clear-<version>-installer.img.xz``, from our `image`_ download page.
|
||||
@@ -17,13 +17,13 @@ Instructions are also available for other operating systems:
|
||||
:start-after: incl-image-filename:
|
||||
:end-before: incl-image-filename-end:
|
||||
|
||||
.. include:: ../../guides/maintenance/download-verify-uncompress-linux.rst
|
||||
.. include:: ../../guides/maintenance/download-verify-decompress-linux.rst
|
||||
:Start-after: verify-linux:
|
||||
|
||||
.. _copy-usb-linux:
|
||||
|
||||
Burn the Clear Linux image onto a USB drive
|
||||
*******************************************
|
||||
Burn the |CL| image onto a USB drive
|
||||
************************************
|
||||
|
||||
.. caution::
|
||||
|
||||
@@ -35,7 +35,7 @@ Burn the Clear Linux image onto a USB drive
|
||||
|
||||
sudo -s
|
||||
|
||||
#. Go to the directory with the uncompressed image.
|
||||
#. Go to the directory with the decompressed image.
|
||||
#. Plug in the USB drive.
|
||||
#. Identify the USB drive using the :command:`lsblk` command. This shows all
|
||||
drives attached to the system, including the primary hard disk. In the
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
Create a bootable USB drive on macOS
|
||||
####################################
|
||||
|
||||
Follow these instructions to create a bootable |CLOSIA| USB drive.
|
||||
Follow these instructions to create a bootable |CL-ATTR| USB drive.
|
||||
Use an **8GB** or larger USB drive. Download either a live image,
|
||||
``clear-<version>-live.img.xz`` or an installer image,
|
||||
``clear-<version>-installer.img.xz``, from our `image`_ download page.
|
||||
@@ -17,25 +17,25 @@ Instructions are also available for other operating systems:
|
||||
:start-after: incl-image-filename:
|
||||
:end-before: incl-image-filename-end:
|
||||
|
||||
.. include:: ../../guides/maintenance/download-verify-uncompress-mac.rst
|
||||
.. include:: ../../guides/maintenance/download-verify-decompress-mac.rst
|
||||
:start-after: verify-mac:
|
||||
|
||||
|
||||
Burn the Clear Linux image onto a USB drive
|
||||
*******************************************
|
||||
Burn the |CL| image onto a USB drive
|
||||
************************************
|
||||
|
||||
.. caution::
|
||||
|
||||
|CAUTION-BACKUP-USB|
|
||||
|
||||
#. Launch the Terminal app.
|
||||
#. Go to the directory with the uncompressed image.
|
||||
#. Go to the directory with the decompressed image.
|
||||
#. Plug in a USB drive and get its identifier by entering the command
|
||||
:command:`diskutil list`. See Figure 1.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ diskutil list
|
||||
diskutil list
|
||||
|
||||
.. figure:: figures/bootable-usb-mac-1.png
|
||||
:scale: 100 %
|
||||
@@ -48,14 +48,14 @@ Burn the Clear Linux image onto a USB drive
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ diskutil umountDisk /dev/disk2
|
||||
diskutil umountDisk /dev/disk2
|
||||
|
||||
#. Burn the image onto the drive using the :command:`dd` command. The
|
||||
command-line example below burns an uncompressed image onto `/dev/disk2`:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ sudo dd if=./clear-[version number]-[image type] of=/dev/rdisk2 bs=4m
|
||||
sudo dd if=./clear-[version number]-[image type] of=/dev/rdisk2 bs=4m
|
||||
|
||||
|
||||
Adding an ‘r’ in front of the disk identifier should help speed up the
|
||||
@@ -67,7 +67,7 @@ Burn the Clear Linux image onto a USB drive
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ diskutil eject /dev/disk2
|
||||
diskutil eject /dev/disk2
|
||||
|
||||
Next steps
|
||||
**********
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
.. _bootable-usb-windows:
|
||||
|
||||
Create a bootable USB drive on Windows
|
||||
######################################
|
||||
Create a bootable USB drive on Windows\*
|
||||
########################################
|
||||
|
||||
Follow these instructions to create a bootable |CLOSIA| USB drive.
|
||||
Follow these instructions to create a bootable |CL-ATTR| USB drive.
|
||||
Use an **8GB** or larger USB drive. Download either a live image,
|
||||
``clear-<version>-live.img.xz`` or an installer image,
|
||||
``clear-<version>-installer.img.xz``, from our `image`_ download page.
|
||||
@@ -17,11 +17,11 @@ Instructions are also available for other operating systems:
|
||||
:start-after: incl-image-filename:
|
||||
:end-before: incl-image-filename-end:
|
||||
|
||||
.. include:: ../../guides/maintenance/download-verify-uncompress-windows.rst
|
||||
.. include:: ../../guides/maintenance/download-verify-decompress-windows.rst
|
||||
:Start-after: verify-windows:
|
||||
|
||||
Burn the Clear Linux image onto a USB drive
|
||||
*******************************************
|
||||
Burn the |CL| image onto a USB drive
|
||||
************************************
|
||||
|
||||
.. caution::
|
||||
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
.. _bootable-usb:
|
||||
|
||||
Create a bootable Clear Linux USB drive
|
||||
#######################################
|
||||
Create a bootable |CL-ATTR| USB drive
|
||||
#####################################
|
||||
|
||||
Instructions to create a |CLOSIA| USB drive vary depending on your operating
|
||||
Instructions to create a |CL-ATTR| USB drive vary depending on your operating
|
||||
system.
|
||||
|
||||
.. _download-usb-image:
|
||||
|
||||
Download the latest Clear Linux image
|
||||
*************************************
|
||||
Download the latest |CL| image
|
||||
******************************
|
||||
|
||||
There are 2 types of |CL| images suitable for burning onto and running
|
||||
off a USB drive:
|
||||
|
||||
* Live image: :file:`clear-[version number]-live.img.xz`
|
||||
* Installer image: :file:`clear-[version number]-installer.img.xz`
|
||||
* Live image: :file:`clear-[version number]-live.img.xz`
|
||||
* Installer image: :file:`clear-[version number]-installer.img.xz`
|
||||
|
||||
Go to the Clear Linux `image`_ repository and download the desired type.
|
||||
Go to the |CL| `image`_ repository and download the desired type.
|
||||
|
||||
With the appropriate image downloaded, choose the step-by-step instructions
|
||||
applicable to your system:
|
||||
|
||||
|
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 44 KiB |
@@ -1,11 +1,11 @@
|
||||
.. _cgdisk-manual-install:
|
||||
|
||||
Create partitions for Clear Linux\* using CGDISK
|
||||
################################################
|
||||
Create partitions for |CL-ATTR| using CGDISK
|
||||
############################################
|
||||
|
||||
As part of the |CL| manual installation processThese instructions guide you through the initial setup of your hard drive
|
||||
partitions using the :command:`cgdisk` utility . If you do not wish to continue creating your own
|
||||
partitions, :ref:`return to the bare metal manual installation
|
||||
These instructions guide you through the initial setup of your hard drive
|
||||
partitions using the :command:`cgdisk` utility . If you do not wish to continue
|
||||
creating your own partitions, :ref:`return to the bare metal manual installation
|
||||
<bare-metal-manual-install>`.
|
||||
|
||||
Prerequisites
|
||||
@@ -67,7 +67,7 @@ installation.
|
||||
|
||||
Figure 4: :guilabel:`cgdisk`
|
||||
|
||||
Linux Partition setup
|
||||
Linux partition setup
|
||||
*********************
|
||||
|
||||
In order to properly set up the |CL| partitioning scheme, we create three
|
||||
@@ -173,7 +173,7 @@ about it, review `Rod Smith's Partitioning advice about alignment`_.
|
||||
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.
|
||||
@@ -265,21 +265,40 @@ partitions and select to format them.
|
||||
|
||||
Figure 14: :guilabel:`Set mount point of sda3`
|
||||
|
||||
Upon completion, the :guilabel:`Set mount points` appear as shown
|
||||
in figure 15:
|
||||
#. Optional: Select :guilabel:`Encrypt Root Partition`, if
|
||||
desired, as shown in figure 15.
|
||||
|
||||
.. note::
|
||||
`Set mount points` now show as completed.
|
||||
|
||||
.. figure:: figures/cgdisk-manual-install-15.png
|
||||
:scale: 50 %
|
||||
:alt: Set mount point completed
|
||||
:alt: Encrypt root partition
|
||||
|
||||
Figure 15: :guilabel:`Set mount points completed`
|
||||
Figure 15: :guilabel:`Encrypt root partition`
|
||||
|
||||
#. Type a confirmation passphrase as directed.
|
||||
|
||||
.. note:
|
||||
|
||||
It is recommended to record the passphrase for safekeeping.
|
||||
|
||||
.. figure:: figures/cgdisk-manual-install-16.png
|
||||
:scale: 50 %
|
||||
:alt: Type confirmation passphrase
|
||||
|
||||
Figure 16: :guilabel: `Type confirmation passphrase`
|
||||
|
||||
#. Select the :guilabel:`< Next >` button and press :kbd:`Enter`.
|
||||
|
||||
You have completed the process of manually partitioning your target
|
||||
system. Now, :ref:`return to the bare metal manual installation
|
||||
<bare-metal-manual-install>` to complete installation of Clear Linux.
|
||||
Continue at the section *Additional manual installer settings*.
|
||||
system.
|
||||
|
||||
#. Now, :ref:`return to the bare metal manual installation
|
||||
<bare-metal-manual-install>` to complete installation of |CL|.
|
||||
|
||||
Continue at the section :ref:`Additional manual installer settings
|
||||
<incl-additional-manual-installer-settings>`.
|
||||
|
||||
.. _`GPT fdisk tutorial`:
|
||||
http://www.rodsbooks.com/gdisk/
|
||||
|
Before Width: | Height: | Size: 87 KiB After Width: | Height: | Size: 87 KiB |
|
Before Width: | Height: | Size: 153 KiB After Width: | Height: | Size: 153 KiB |
|
Before Width: | Height: | Size: 153 KiB After Width: | Height: | Size: 153 KiB |
|
Before Width: | Height: | Size: 134 KiB After Width: | Height: | Size: 134 KiB |
|
Before Width: | Height: | Size: 60 KiB After Width: | Height: | Size: 60 KiB |
|
Before Width: | Height: | Size: 59 KiB After Width: | Height: | Size: 59 KiB |
|
After Width: | Height: | Size: 148 KiB |
|
After Width: | Height: | Size: 8.2 KiB |
|
Before Width: | Height: | Size: 134 KiB After Width: | Height: | Size: 134 KiB |
|
Before Width: | Height: | Size: 87 KiB After Width: | Height: | Size: 87 KiB |
|
Before Width: | Height: | Size: 106 KiB After Width: | Height: | Size: 106 KiB |
|
Before Width: | Height: | Size: 107 KiB After Width: | Height: | Size: 107 KiB |
|
Before Width: | Height: | Size: 811 KiB After Width: | Height: | Size: 811 KiB |
|
Before Width: | Height: | Size: 127 KiB After Width: | Height: | Size: 127 KiB |
|
Before Width: | Height: | Size: 127 KiB After Width: | Height: | Size: 127 KiB |
|
Before Width: | Height: | Size: 149 KiB After Width: | Height: | Size: 149 KiB |
@@ -1,11 +1,11 @@
|
||||
.. _compatibility-check:
|
||||
|
||||
Check processor and EFI firmware compatibility with Clear Linux\*
|
||||
#################################################################
|
||||
Check processor and EFI firmware compatibility
|
||||
##############################################
|
||||
|
||||
On a system that is currently running a Linux operating system, follow the
|
||||
On a system that is currently running a Linux\* operating system, follow the
|
||||
instructions below to determine if your system's processor and EFI firmware is
|
||||
capable of running |CLOSIA|. Otherwise,
|
||||
capable of running |CL-ATTR|. Otherwise,
|
||||
:ref:`run Clear Linux as a Live image <live-image>` and then perform the steps
|
||||
below.
|
||||
|
||||
@@ -19,13 +19,13 @@ below.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ curl -O https://download.clearlinux.org/current/clear-linux-check-config.sh
|
||||
curl -O https://download.clearlinux.org/current/clear-linux-check-config.sh
|
||||
|
||||
#. Make the script executable.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ chmod +x clear-linux-check-config.sh
|
||||
chmod +x clear-linux-check-config.sh
|
||||
|
||||
#. Run the script.
|
||||
|
||||
@@ -34,13 +34,13 @@ below.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ ./clear-linux-check-config.sh host
|
||||
./clear-linux-check-config.sh host
|
||||
|
||||
#. Check to see if the host is capable of running |CL| in a container.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ ./clear-linux-check-config.sh container
|
||||
./clear-linux-check-config.sh container
|
||||
|
||||
The script will print a list of test results similar to the output below.
|
||||
All items should return a `SUCCESS` status. This example indicates the
|
||||
@@ -48,7 +48,7 @@ below.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
Checking if host is capable of running Clear Liunx* OS for Intel® Architecture
|
||||
Checking if host is capable of running Clear Linux* OS
|
||||
|
||||
SUCCESS: 64-bit CPU (lm)
|
||||
SUCCESS: Supplemental Streaming SIMD Extensions 3 (ssse3)
|
||||
|
||||
@@ -3,22 +3,39 @@
|
||||
Get started
|
||||
###########
|
||||
|
||||
This section contains information about the installation of |CLOSIA|.
|
||||
The Get Started section will get you up and running fast with |CL-ATTR|. Use
|
||||
these step-by-step instructions to guide you through the installation of |CL|
|
||||
from bare metal to a live image.
|
||||
|
||||
Pre-install
|
||||
***********
|
||||
|
||||
The :ref:`get-started` section provides step-by-step instructions to download
|
||||
and run |CL| on :ref:`bare metal <bare-metal-install>`, under
|
||||
a :ref:`virtual machine <virtual-machine-install>`, or by way of a
|
||||
:ref:`live image <live-image>`. Additionally, it provides useful pre-install
|
||||
information and instructions on how to complete pre-install tasks.
|
||||
* :ref:`system-requirements`
|
||||
* :ref:`compatibility-check`
|
||||
* :ref:`bootable-usb`
|
||||
|
||||
|
||||
|
||||
Install |CL|
|
||||
************
|
||||
|
||||
* :ref:`bare-metal-install`
|
||||
* :ref:`bare-metal-manual-install`
|
||||
* :ref:`virtual-machine-install`
|
||||
* :ref:`live-image`
|
||||
* :ref:`bare-metal-install-beta`
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
:hidden:
|
||||
|
||||
../reference/system-requirements
|
||||
bare-metal-install/bare-metal-install
|
||||
bare-metal-install/bare-metal-manual-install
|
||||
bare-metal-install/cgdisk-manual-install
|
||||
bare-metal-manual-install/bare-metal-manual-install
|
||||
cgdisk-manual-install/cgdisk-manual-install
|
||||
virtual-machine-install/virtual-machine-install
|
||||
live-image
|
||||
compatibility-check
|
||||
bootable-usb/bootable-usb
|
||||
bootable-usb/bootable-usb
|
||||
|
||||
bare-metal-install-beta/bare-metal-install-beta
|
||||
bootable-usb/bootable-usb-beta-all
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
.. _live-image:
|
||||
|
||||
Install Clear Linux as a live image
|
||||
###################################
|
||||
Install |CL-ATTR| as a live image
|
||||
#################################
|
||||
|
||||
A live image contains the complete |CLOSIA| operating system and resides
|
||||
A live image contains the complete |CL-ATTR| operating system and resides
|
||||
on a bootable media such as a USB drive or in a virtual machine
|
||||
(see :ref:`virtual-machine-install`). This is a
|
||||
great way to use |CL| without modifying your computer's hard disk.
|
||||
(see :ref:`virtual-machine-install`). This is a great way to use |CL|
|
||||
without modifying your computer's hard disk.
|
||||
|
||||
To create a bootable USB drive with a live image, follow
|
||||
:ref:`our step-by-step instructions<bootable-usb>` and use the latest |CL|
|
||||
@@ -15,8 +15,8 @@ live image from the `image`_ directory. Look for the
|
||||
|
||||
.. _boot-live-image:
|
||||
|
||||
Boot the Clear Linux live image
|
||||
*******************************
|
||||
Boot the |CL| live image
|
||||
************************
|
||||
|
||||
#. Configure the BIOS/UEFI firmware settings of the target system:
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 44 KiB |
@@ -3,7 +3,7 @@
|
||||
Use Hyper-V\*
|
||||
#############
|
||||
|
||||
This section explains how to run |CLOSIA| inside a
|
||||
This section explains how to run |CL-ATTR| inside a
|
||||
`Windows Server Virtualization`_\* or **Hyper-V** environment.
|
||||
|
||||
Please ensure you have enabled `Intel® Virtualization Technology
|
||||
@@ -13,13 +13,13 @@ Please ensure you have enabled `Intel® Virtualization Technology
|
||||
(Intel® VT-d) in your BIOS/UEFI firmware configuration.
|
||||
|
||||
Enable Hyper-V
|
||||
==============
|
||||
**************
|
||||
|
||||
Please refer to the `Microsoft documentation`_ to enable and configure
|
||||
*Hyper-V* on your machine.
|
||||
|
||||
Create a virtual network
|
||||
========================
|
||||
************************
|
||||
|
||||
Once *Hyper-V* has been enabled on your Windows system you will need to
|
||||
create a virtual network in the **Hyper-V Manager**. Refer to the
|
||||
@@ -27,11 +27,11 @@ create a virtual network in the **Hyper-V Manager**. Refer to the
|
||||
a virtual network.
|
||||
|
||||
Create a virtual machine
|
||||
========================
|
||||
************************
|
||||
|
||||
#. Download and uncompress the latest hyperv disk image
|
||||
#. Download and decompress the latest hyperv disk image
|
||||
:file:`clear-XXXXX-hyperv.img.gz`, where XXXXX is the latest
|
||||
available version of |CLOSIA| from our `downloads`_ section.
|
||||
available version of |CL| from our `downloads`_ section.
|
||||
|
||||
#. Create a virtual machine using the **Hyper-V Manager**:
|
||||
|
||||
@@ -41,7 +41,7 @@ Create a virtual machine
|
||||
c. When finished, open VM settings, select Firmware Section and in Secure
|
||||
Boot config, **uncheck** Enable Secure Boot.
|
||||
|
||||
.. note:: Currently, Clear Linux does not boot with `secure boot`
|
||||
.. note:: Currently, |CL| does not boot with `secure boot`
|
||||
enabled.
|
||||
|
||||
#. Connect to your new VM and start it. You should see a prompt:
|
||||
@@ -52,7 +52,7 @@ Create a virtual machine
|
||||
|
||||
#. Set a root user password.
|
||||
|
||||
Your virtual machine running |CLOSIA| is ready!
|
||||
Your virtual machine running |CL| is ready!
|
||||
|
||||
.. _Windows Server Virtualization: https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/about/
|
||||
.. _Microsoft documentation: https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
.. _kvm:
|
||||
|
||||
Run Clear Linux as a KVM guest OS
|
||||
#################################
|
||||
Run |CL-ATTR| as a KVM guest OS
|
||||
###############################
|
||||
|
||||
This section explains how to run |CLOSIA| in a virtualized environment using
|
||||
This section explains how to run |CL-ATTR| in a virtualized environment using
|
||||
:abbr:`KVM (Kernel-based Virtual Machine)`.
|
||||
|
||||
Install QEMU-KVM
|
||||
================
|
||||
****************
|
||||
|
||||
#. Enable the `Intel® Virtualization Technology`_ (Intel® VT) and the
|
||||
`Intel®Virtualization Technology for Directed I/O`_ (Intel® VT-d) in the
|
||||
@@ -16,38 +16,38 @@ Install QEMU-KVM
|
||||
#. Log in, open a terminal emulator, and get root privilege on the host
|
||||
machine:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
$ sudo -s
|
||||
sudo -s
|
||||
|
||||
#. Install `QEMU*-KVM` on the host machine. Below are some example distros.
|
||||
|
||||
* On |CL|:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# swupd bundle-add desktop-autostart kvm-host
|
||||
swupd bundle-add desktop-autostart kvm-host
|
||||
|
||||
* On Ubuntu\* 16.04 LTS Desktop:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# apt-get install qemu-kvm
|
||||
apt-get install qemu-kvm
|
||||
|
||||
* On Mint\* 18.1 “Serena” Desktop:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# apt-get install qemu-kvm
|
||||
apt-get install qemu-kvm
|
||||
|
||||
* On Fedora\* 25 Workstation:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# dnf install qemu-kvm
|
||||
dnf install qemu-kvm
|
||||
|
||||
Download and launch the virtual machine
|
||||
=======================================
|
||||
***************************************
|
||||
|
||||
#. Download the latest pre-built |CL| KVM image file from
|
||||
the `image <https://download.clearlinux.org/image/>`_ directory. Look for
|
||||
@@ -55,13 +55,13 @@ Download and launch the virtual machine
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
curl -O https://download.clearlinux.org/image/clear-$(curl https://download.clearlinux.org/latest)-kvm.img.xz
|
||||
curl -O https://download.clearlinux.org/image/$(curl https://download.clearlinux.org/image/latest-images | grep '[0-9]'-kvm)
|
||||
|
||||
#. Uncompress the downloaded image:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# unxz clear-<version>-kvm.img.xz
|
||||
unxz clear-<version>-kvm.img.xz
|
||||
|
||||
#. Download the `OVMF file`_ file that provides UEFI support for
|
||||
virtual machines from the `image <https://download.clearlinux.org/image/>`_
|
||||
@@ -74,74 +74,75 @@ Download and launch the virtual machine
|
||||
|
||||
#. Make the script executable:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# chmod +x start_qemu.sh
|
||||
chmod +x start_qemu.sh
|
||||
|
||||
#. Start the |CL| KVM virtual machine:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# ./start_qemu.sh clear-<version>-kvm.img
|
||||
./start_qemu.sh clear-<version>-kvm.img
|
||||
|
||||
#. Log in as ``root`` user and set a new password.
|
||||
|
||||
SSH access into the virtual machine
|
||||
===================================
|
||||
***********************************
|
||||
|
||||
To interact with the |CL| VM through SSH instead of the console it was
|
||||
launched from, follow these steps.
|
||||
|
||||
#. Enable SSH in the |CL| VM:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# cat > /etc/ssh/sshd_config << EOF
|
||||
cat > /etc/ssh/sshd_config << EOF
|
||||
PermitRootLogin yes
|
||||
EOF
|
||||
|
||||
#. From the host, SSH into the |CL| VM. The port number ``10022`` is defined
|
||||
in the ``start_qemu.sh`` script.
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# ssh -p 10022 root@localhost
|
||||
ssh -p 10022 root@localhost
|
||||
|
||||
Add the GNOME Display Manager (GDM)
|
||||
===================================
|
||||
***********************************
|
||||
|
||||
To add :abbr:`GDM (GNOME Display Manager)` to the |CL| VM, follow these steps:
|
||||
|
||||
#. Shutdown the active |CL| VM.
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# shutdown now
|
||||
shutdown now
|
||||
|
||||
#. Install a VNC viewer on the host machine. Below are some example distros.
|
||||
|
||||
* On Clear Linux:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# swupd bundle-add desktop-apps-extras
|
||||
swupd bundle-add desktop-apps-extras
|
||||
|
||||
* On Ubuntu\* 16.04 LTS Desktop:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# apt-get install vncviewer
|
||||
apt-get install vncviewer
|
||||
|
||||
* On Mint\* 18.1 “Serena” Desktop:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# apt-get install vncviewer
|
||||
apt-get install vncviewer
|
||||
|
||||
* On Fedora\* 25 Workstation:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# dnf install tigervnc
|
||||
dnf install tigervnc
|
||||
|
||||
#. Modify the :file:`start_qemu.sh` script to increase memory (``-m``), add
|
||||
graphics driver (``-vga``), and add VNC (``-vnc``, ``-usb``, and
|
||||
@@ -169,48 +170,48 @@ To add :abbr:`GDM (GNOME Display Manager)` to the |CL| VM, follow these steps:
|
||||
|
||||
#. Relaunch the |CL| VM. The UEFI shell will appear.
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# ./start_qemu.sh clear-<version>-kvm.img
|
||||
./start_qemu.sh clear-<version>-kvm.img
|
||||
|
||||
#. At the UEFI shell, delete the :file:`NvVars` file:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
Shell> del FS0:\NvVars
|
||||
|
||||
#. Exit out of the UEFI shell:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
Shell> reset -s
|
||||
|
||||
#. Relaunch the |CL| VM:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# ./start_qemu.sh clear-<version>-kvm.img
|
||||
./start_qemu.sh clear-<version>-kvm.img
|
||||
|
||||
#. From the host machine, open a new terminal emulator window and VNC into the
|
||||
|CL| VM:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# vncviewer 0.0.0.0
|
||||
vncviewer 0.0.0.0
|
||||
|
||||
#. Log in as ``root`` user into the |CL| VM.
|
||||
|
||||
#. Add GDM to the |CL| VM:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# swupd bundle-add desktop-autostart
|
||||
swupd bundle-add desktop-autostart
|
||||
|
||||
#. Reboot the |CL| VM to enable GDM:
|
||||
|
||||
.. code-block:: console
|
||||
.. code-block:: bash
|
||||
|
||||
# reboot
|
||||
reboot
|
||||
|
||||
#. Go through GDM's out-of-box experience (OOBE).
|
||||
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
.. _virtual-machine-install:
|
||||
|
||||
Install Clear Linux in a virtual machine
|
||||
########################################
|
||||
Install |CL-ATTR| in a virtual machine
|
||||
######################################
|
||||
|
||||
There are some considerations to make when installing |CL| in a VM.
|
||||
There are some considerations to make when installing |CL-ATTR| in a VM.
|
||||
First, you need to decide which kernel to use. This document
|
||||
will walk you through the available kernel options to help this decision. At
|
||||
the end of this document, you will be able to select the set of installation
|
||||
steps most suitable to you and install |CL| under a VM.
|
||||
|
||||
Compatible kernels
|
||||
==================
|
||||
******************
|
||||
|
||||
The |CLOSIA| provides the following Linux kernels with a respective
|
||||
The |CL| provides the following Linux kernels with a respective
|
||||
:ref:`bundle <bundles-about>` for VMs. Specific use cases these bundles serve
|
||||
are provided along with links to their source code.
|
||||
|
||||
.. include:: ../../reference/compatible-kernels.rst
|
||||
:Start-after: vm-kernels:
|
||||
|
||||
Next steps:
|
||||
===========
|
||||
Next steps
|
||||
**********
|
||||
|
||||
Now that you have read about the |CL| compatible kernels, choose the
|
||||
appropriate set of step-by-step instructions to proceed.
|
||||
|
||||
@@ -6,14 +6,14 @@ Run pre-configured |CL-ATTR| as a VirtualBox\* guest OS
|
||||
This instruction explains how to deploy a pre-configured |CL-ATTR| image as a guest on the `VirtualBox hypervisor`_ .
|
||||
|
||||
Download VirtualBox
|
||||
===================
|
||||
*******************
|
||||
|
||||
VirtualBox\* is a type 2 hypervisor from Oracle. Download and use **version 5.0 or greater** from the `official VirtualBox website`_.
|
||||
|
||||
.. _create_vm_vbox:
|
||||
|
||||
Prerequisites
|
||||
=============
|
||||
*************
|
||||
|
||||
The instruction assumes that you have:
|
||||
|
||||
@@ -29,7 +29,7 @@ The instruction assumes that you have:
|
||||
If you have not completed the above steps, do so before continuing.
|
||||
|
||||
Create a virtual machine in VirtualBox
|
||||
======================================
|
||||
**************************************
|
||||
|
||||
#. Log in to your host and open a terminal emulator.
|
||||
|
||||
@@ -38,7 +38,7 @@ Create a virtual machine in VirtualBox
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
curl -O https://download.clearlinux.org/image/clear-$(curl https://download.clearlinux.org/latest)-live.img.xz
|
||||
curl -O https://download.clearlinux.org/image/$(curl https://download.clearlinux.org/image/latest-images | grep live)
|
||||
|
||||
#. Decompress the downloaded image. Uncompressed image size is ~ **5GB**.
|
||||
|
||||
@@ -103,7 +103,7 @@ Create a virtual machine in VirtualBox
|
||||
|
||||
|
||||
Run your new VM
|
||||
===============
|
||||
***************
|
||||
|
||||
|CL| supports VirtualBox kernel modules used
|
||||
by the Linux kernel 4.14 :abbr:`LTS (Long Term Support)`
|
||||
@@ -147,7 +147,7 @@ To install the VirtualBox kernel modules, here are the steps:
|
||||
clr-boot-manager update
|
||||
|
||||
Install Guest Additions
|
||||
-----------------------
|
||||
=======================
|
||||
|
||||
The kernel modules are shipped with the ``kernel-lts`` bundle. Insert Guest
|
||||
Additions CD image using *Devices* menu you'll need to install the *user*
|
||||
@@ -170,7 +170,7 @@ follow these steps:
|
||||
|
||||
|
||||
Troubleshooting
|
||||
---------------
|
||||
===============
|
||||
|
||||
On Windows OS, *VirtualBox* cannot do a **Hardware Virtualization** when
|
||||
*Hyper-V* is enabled.
|
||||
@@ -193,4 +193,4 @@ To enable Hyper-V again, you should execute::
|
||||
.. _VirtualBox hypervisor: https://www.virtualbox.org/
|
||||
.. _latest: https://download.clearlinux.org/image/
|
||||
.. _7zip: http://www.7-zip.org/
|
||||
.. _Virtualization Technology: https://www.intel.com/content/www/us/en/virtualization/virtualization-technology/intel-virtualization-technology.html
|
||||
.. _Virtualization Technology: https://www.intel.com/content/www/us/en/virtualization/virtualization-technology/intel-virtualization-technology.html
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
.. _vmw-player-preconf:
|
||||
|
||||
Run pre-configured Clear Linux image as a VMware\* Workstation Player guest OS
|
||||
##############################################################################
|
||||
Run pre-configured |CL-ATTR| image as a VMware\* Workstation Player guest OS
|
||||
############################################################################
|
||||
|
||||
`VMware Workstation 14 Player`_ is a type 2 hypervisor. It runs on top of
|
||||
another operating system such as Windows\* or Linux\*. With VMware ESXi, you
|
||||
can create, configure, manage, and run |CLOSIA| :abbr:`VMs (Virtual Machines)`
|
||||
can create, configure, manage, and run |CL-ATTR| :abbr:`VMs (Virtual Machines)`
|
||||
on your local system.
|
||||
|
||||
This section shows how to deploy a pre-configured |CL| VMware image on
|
||||
@@ -13,18 +13,12 @@ VMware Workstation 14 Player.
|
||||
|
||||
In this tutorial, we perform the following steps:
|
||||
|
||||
#. Install the VMware Workstation Player hypervisor
|
||||
#. Download the latest |CL| pre-configured image
|
||||
#. VMware image Verify the integrity of the |CL| image
|
||||
#. Uncompress the |CL| image
|
||||
#. Create and configure a new VM
|
||||
#. Attach the pre-configured VMware |CL| image
|
||||
#. Enable EFI boot support
|
||||
#. Power on the VM
|
||||
.. contents:: :local:
|
||||
:depth: 1
|
||||
|
||||
.. note::
|
||||
|
||||
The screenshots on this document show the Windows\* version of the
|
||||
The screenshots on this document show the Windows version of the
|
||||
VMware Workstation 14 Player. The menus and prompts are similar to those
|
||||
in the Linux version save some minor wording differences.
|
||||
|
||||
@@ -61,14 +55,8 @@ Install the VMware Workstation Player hypervisor
|
||||
|
||||
For additional help, see the `VMware Workstation Player guide`_.
|
||||
|
||||
Clear Linux image types
|
||||
***********************
|
||||
|
||||
.. include:: ../../reference/image-types.rst
|
||||
:Start-after: image-types-content:
|
||||
|
||||
Download the latest Clear Linux VMware image
|
||||
********************************************
|
||||
Download the latest |CL| VMware image
|
||||
*************************************
|
||||
|
||||
Get the latest |CL| VMware image from the `image`_ repository.
|
||||
Look for :file:`clear-[version number]-vmware.vmdk.xz`. You can also use
|
||||
@@ -76,15 +64,17 @@ this command:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
curl -O https://download.clearlinux.org/image/clear-$(curl https://download.clearlinux.org/latest)-vmware.vmdk.xz
|
||||
curl -O https://download.clearlinux.org/image/$(curl https://download.clearlinux.org/image/latest-images | grep vmware)
|
||||
|
||||
.. include:: ../../guides/maintenance/download-verify-uncompress-windows.rst
|
||||
Visit :ref:`image-types` for additional information about all available |CL| images.
|
||||
|
||||
.. include:: ../../guides/maintenance/download-verify-decompress-windows.rst
|
||||
:Start-after: verify-windows:
|
||||
|
||||
We also provide instructions for other operating systems:
|
||||
|
||||
* :ref:`download-verify-uncompress-linux`
|
||||
* :ref:`download-verify-uncompress-mac`
|
||||
* :ref:`download-verify-decompress-linux`
|
||||
* :ref:`download-verify-decompress-mac`
|
||||
|
||||
Create and configure a new VM
|
||||
*****************************
|
||||
@@ -189,10 +179,10 @@ Create and configure a new VM
|
||||
|
||||
#. Click the :guilabel:`Finish` button.
|
||||
|
||||
Attach the pre-configured Clear Linux VMware image
|
||||
**************************************************
|
||||
Attach the pre-configured |CL| VMware image
|
||||
*******************************************
|
||||
|
||||
#. Move the downloaded and uncompressed pre-configured |CL| VMware image file
|
||||
#. Move the downloaded and decompressed pre-configured |CL| VMware image file
|
||||
:file:`clear-[version number]-basic.vmdk` to the directory where your
|
||||
newly-created VM resides.
|
||||
|
||||
@@ -304,6 +294,9 @@ After configuring the settings above, power on your |CL| virtual machine.
|
||||
|
||||
#. Click :guilabel:`Play virtual machine`.
|
||||
|
||||
Related topics
|
||||
**************
|
||||
|
||||
For other guides on using the VMWare Player and ESXi, see:
|
||||
|
||||
* :ref:`vmw-player`
|
||||
|
||||