tachtler:archlinux_-_minimal_server_installation_-_mit_ansible
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
tachtler:archlinux_-_minimal_server_installation_-_mit_ansible [2020/02/02 07:52] – [Erste Anmeldung] klaus | tachtler:archlinux_-_minimal_server_installation_-_mit_ansible [2020/07/07 10:15] (aktuell) – [Installieren] klaus | ||
---|---|---|---|
Zeile 232: | Zeile 232: | ||
===== Ansible ===== | ===== Ansible ===== | ||
- | Die Nutzung | + | ==== Installieren ==== |
- | * **[[tachtler:ansible_mit_ansible_einrichten|Ansible mit Ansible einrichten]]** | + | |
+ | [[tachtler: | ||
+ | |||
+ | ^ Beschreibung | ||
+ | | Homepage | ||
+ | | Dokumentation | ||
+ | | Installation | ||
Ab hier werden '' | Ab hier werden '' | ||
< | < | ||
$ su - | $ su - | ||
- | Password: | + | Password |
</ | </ | ||
+ | |||
+ | Mit nachfolgendem Befehl, wird das Pakete **'' | ||
+ | < | ||
+ | # pacman --noconfirm -Sy ansible | ||
+ | resolving dependencies... | ||
+ | looking for conflicting packages... | ||
+ | |||
+ | Packages (24) libnsl-1.2.0-2 | ||
+ | python-3.8.1-1 | ||
+ | python-bcrypt-3.1.7-3 | ||
+ | python-cryptography-2.8-1 | ||
+ | python-jinja-2.10.3-3 | ||
+ | python-ordered-set-3.1.1-1 | ||
+ | python-paramiko-2.6.0-3 | ||
+ | python-pycparser-2.19-3 | ||
+ | python-pyparsing-2.4.6-1 | ||
+ | python-six-1.13.0-2 | ||
+ | |||
+ | Total Download Size: 52.42 MiB | ||
+ | Total Installed Size: 307.49 MiB | ||
+ | |||
+ | :: Proceed with installation? | ||
+ | :: Retrieving packages... | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | (24/24) checking keys in keyring | ||
+ | (24/24) checking package integrity | ||
+ | (24/24) loading package files [###################### | ||
+ | (24/24) checking for file conflicts | ||
+ | (24/24) checking available disk space [###################### | ||
+ | :: Processing package changes... | ||
+ | ( 1/24) installing libnsl | ||
+ | ( 2/24) installing python | ||
+ | Optional dependencies for python | ||
+ | python-setuptools [pending] | ||
+ | python-pip | ||
+ | sqlite [installed] | ||
+ | mpdecimal: for decimal | ||
+ | xz: for lzma [installed] | ||
+ | tk: for tkinter | ||
+ | ( 3/24) installing libyaml | ||
+ | ( 4/24) installing python-yaml | ||
+ | ( 5/24) installing python-ply | ||
+ | ( 6/24) installing python-pycparser | ||
+ | ( 7/24) installing python-cffi | ||
+ | ( 8/24) installing python-six | ||
+ | ( 9/24) installing python-bcrypt | ||
+ | (10/24) installing python-idna | ||
+ | (11/24) installing python-appdirs | ||
+ | (12/24) installing python-pyparsing | ||
+ | (13/24) installing python-packaging | ||
+ | (14/24) installing python-ordered-set | ||
+ | (15/24) installing python-setuptools | ||
+ | (16/24) installing python-asn1crypto | ||
+ | (17/24) installing python-cryptography | ||
+ | (18/24) installing python-pyasn1 | ||
+ | (19/24) installing libsodium | ||
+ | (20/24) installing python-pynacl | ||
+ | (21/24) installing python-paramiko | ||
+ | (22/24) installing python-markupsafe | ||
+ | (23/24) installing python-jinja | ||
+ | Optional dependencies for python-jinja | ||
+ | python-babel: | ||
+ | (24/24) installing ansible | ||
+ | Optional dependencies for ansible | ||
+ | sshpass: for ssh connections with password | ||
+ | python-passlib: | ||
+ | python-pyopenssl: | ||
+ | python-netaddr: | ||
+ | python-systemd: | ||
+ | python-pywinrm: | ||
+ | python-dnspython: | ||
+ | python-ovirt-engine-sdk: | ||
+ | python-boto3: | ||
+ | python-jmespath: | ||
+ | acme-tiny: openssl_certificate module | ||
+ | :: Running post-transaction hooks... | ||
+ | (1/1) Arming ConditionNeedsUpdate... | ||
+ | </ | ||
+ | |||
+ | Mit nachfolgendem Befehl kann überprüft werden, welche Inhalte mit dem Paket **'' | ||
+ | < | ||
+ | # pacman -Ql ansible | ||
+ | ansible /etc/ | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible /usr/ | ||
+ | ansible /usr/bin/ | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible /usr/lib/ | ||
+ | ansible / | ||
+ | ... | ||
+ | [Kürzung der Ausgabe] | ||
+ | ... | ||
+ | ansible /usr/share/ | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | ansible / | ||
+ | </ | ||
+ | |||
+ | Zum Abschluss kann mit nachfolgendem Befehl überprüft werden, ob ein Aufruf möglich ist und [[https:// | ||
+ | < | ||
+ | # ansible --version | ||
+ | ansible 2.9.2 | ||
+ | config file = / | ||
+ | configured module search path = ['/ | ||
+ | ansible python module location = / | ||
+ | executable location = / | ||
+ | python version = 3.8.1 (default, Dec 21 2019, 20:57:38) [GCC 9.2.0] | ||
+ | </ | ||
+ | |||
+ | ==== Konfigurieren ==== | ||
+ | |||
+ | Die Nutzung von [[https:// | ||
+ | * **[[tachtler: | ||
==== / | ==== / | ||
Zeile 280: | Zeile 452: | ||
Nachfolgend das **Playbook**. | Nachfolgend das **Playbook**. | ||
<code yaml> | <code yaml> | ||
+ | --- ### ArchLinux installation | ||
+ | # https:// | ||
+ | - hosts: install | ||
+ | |||
+ | # | ||
+ | ############################################################################## | ||
+ | # >>> | ||
+ | ############################################################################## | ||
+ | # | ||
+ | |||
+ | vars: | ||
+ | parted_device: | ||
+ | parted_device_partition: | ||
+ | - name: " | ||
+ | number: 1 | ||
+ | flags: [] | ||
+ | start: 0% | ||
+ | end: 1025MiB | ||
+ | - name: " | ||
+ | number: 2 | ||
+ | flags: [ lvm ] | ||
+ | start: 1025MiB | ||
+ | end: 100% | ||
+ | parted_device_pv: | ||
+ | parted_device_vg: | ||
+ | parted_device_swap: | ||
+ | - name: " | ||
+ | size: 2048 | ||
+ | type: " | ||
+ | parted_device_boot: | ||
+ | - name: " | ||
+ | size: 1024 | ||
+ | type: " | ||
+ | path: "/ | ||
+ | # First " | ||
+ | parted_device_lv: | ||
+ | - name: " | ||
+ | size: 10240 | ||
+ | type: " | ||
+ | path: "/ | ||
+ | - name: " | ||
+ | size: 1024 | ||
+ | type: " | ||
+ | path: "/ | ||
+ | - name: " | ||
+ | size: 3072 | ||
+ | type: " | ||
+ | path: "/ | ||
+ | - name: " | ||
+ | size: 2048 | ||
+ | type: " | ||
+ | path: "/ | ||
+ | # System environment setup | ||
+ | mnt_hostname: | ||
+ | mnt_lang: en_US.UTF-8 | ||
+ | # systemd-networkd.service configuration first interface | ||
+ | mnt_ip: 192.168.1.11/ | ||
+ | mnt_gateway: | ||
+ | mnt_dns: 192.168.1.1 | ||
+ | |||
+ | # | ||
+ | ############################################################################## | ||
+ | # >>> | ||
+ | ############################################################################## | ||
+ | # | ||
+ | |||
+ | tasks: | ||
+ | - name: Read device information from disk | ||
+ | parted: | ||
+ | device: "/ | ||
+ | unit: MiB | ||
+ | register: device_parted | ||
+ | |||
+ | # | ||
+ | # Partitionierung fdisk | ||
+ | # https:// | ||
+ | # | ||
+ | - name: Create partitions | ||
+ | parted: | ||
+ | device: "/ | ||
+ | number: "{{ item.number }}" | ||
+ | flags: "{{ item.flags }}" | ||
+ | state: present | ||
+ | part_start: "{{ item.start }}" | ||
+ | part_end: "{{ item.end }}" | ||
+ | with_items: "{{ parted_device_partition }}" | ||
+ | |||
+ | # | ||
+ | # LVM, Dateisysteme formatieren, | ||
+ | # https:// | ||
+ | # https:// | ||
+ | # https:// | ||
+ | # | ||
+ | - name: Create a volume group on partition LVM | ||
+ | lvg: | ||
+ | vg: "{{ parted_device_vg }}" | ||
+ | pvs: "/ | ||
+ | |||
+ | - name: Create swap volume | ||
+ | lvol: | ||
+ | vg: "{{ parted_device_vg }}" | ||
+ | lv: "{{ item.name }}" | ||
+ | size: "{{ item.size }}" | ||
+ | with_items: "{{ parted_device_swap }}" | ||
+ | |||
+ | - name: Create logical volumes | ||
+ | lvol: | ||
+ | vg: "{{ parted_device_vg }}" | ||
+ | lv: "{{ item.name }}" | ||
+ | size: "{{ item.size }}" | ||
+ | with_items: "{{ parted_device_lv }}" | ||
+ | |||
+ | - name: Make directory for mount point boot | ||
+ | file: | ||
+ | path: "{{ item.path }}" | ||
+ | state: directory | ||
+ | with_items: "{{ parted_device_boot }}" | ||
+ | |||
+ | - name: Create a filesystem on each logical volume | ||
+ | filesystem: | ||
+ | fstype: "{{ item.type }}" | ||
+ | dev: "/ | ||
+ | with_items: "{{ parted_device_lv }}" | ||
+ | |||
+ | - name: Make directorys for mount points | ||
+ | file: | ||
+ | path: "{{ item.path }}" | ||
+ | state: directory | ||
+ | with_items: "{{ parted_device_lv }}" | ||
+ | |||
+ | - name: Mount each logical volume | ||
+ | mount: | ||
+ | src: "/ | ||
+ | path: "{{ item.path }}" | ||
+ | fstype: "{{ item.type }}" | ||
+ | state: mounted | ||
+ | with_items: "{{ parted_device_lv }}" | ||
+ | |||
+ | - name: Make directorys for nested mount points | ||
+ | file: | ||
+ | path: "{{ item.path }}" | ||
+ | state: directory | ||
+ | with_items: "{{ parted_device_lv }}" | ||
+ | |||
+ | - name: Mount each nested logical volume | ||
+ | mount: | ||
+ | src: "/ | ||
+ | path: "{{ item.path }}" | ||
+ | fstype: "{{ item.type }}" | ||
+ | state: mounted | ||
+ | with_items: "{{ parted_device_lv }}" | ||
+ | |||
+ | - name: Create a filesystem on boot volume | ||
+ | filesystem: | ||
+ | fstype: "{{ item.type }}" | ||
+ | dev: "/ | ||
+ | with_items: "{{ parted_device_boot }}" | ||
+ | |||
+ | - name: Mount boot logical volume | ||
+ | mount: | ||
+ | src: "/ | ||
+ | path: "{{ item.path }}" | ||
+ | fstype: "{{ item.type }}" | ||
+ | state: mounted | ||
+ | with_items: "{{ parted_device_boot }}" | ||
+ | |||
+ | - name: Create a filesystem on swap volume | ||
+ | filesystem: | ||
+ | fstype: "{{ item.type }}" | ||
+ | dev: "/ | ||
+ | with_items: "{{ parted_device_swap }}" | ||
+ | |||
+ | - name: Swapon swap device | ||
+ | command: " | ||
+ | with_items: "{{ parted_device_swap }}" | ||
+ | |||
+ | # | ||
+ | # Installation Basissystem | ||
+ | # https:// | ||
+ | # | ||
+ | |||
+ | # | ||
+ | # / | ||
+ | # https:// | ||
+ | # | ||
+ | - name: Check if file NOT exists - / | ||
+ | stat: | ||
+ | path: / | ||
+ | register: mirrorlist_orig | ||
+ | |||
+ | - name: Copy / | ||
+ | copy: | ||
+ | src: / | ||
+ | dest: / | ||
+ | remote_src: yes | ||
+ | when: mirrorlist_orig.stat.exists == false | ||
+ | |||
+ | - name: Generate German Mirrorlist for pacman | ||
+ | shell: grep -E -A 1 " | ||
+ | |||
+ | # | ||
+ | # Basissystem /mnt | ||
+ | # https:// | ||
+ | # | ||
+ | - name: Generate Basissystem with pacstrap (This may take some time!) | ||
+ | command: pacstrap /mnt base base-devel linux-lts linux-firmware lvm2 openssh sshpass vi vim python | ||
+ | register: pacstrap | ||
+ | |||
+ | - debug: | ||
+ | msg: >- | ||
+ | { " | ||
+ | " | ||
+ | |||
+ | # | ||
+ | # Systemkonfiguration /mnt | ||
+ | # https:// | ||
+ | # | ||
+ | |||
+ | # | ||
+ | # /etc/fstab erstellen | ||
+ | # https:// | ||
+ | # | ||
+ | - name: Generate /etc/fstab | ||
+ | shell: genfstab -Up /mnt > / | ||
+ | |||
+ | # | ||
+ | # / | ||
+ | # https:// | ||
+ | # | ||
+ | - name: chroot - Set / | ||
+ | shell: | ||
+ | cmd: | | ||
+ | arch-chroot /mnt <<EOF | ||
+ | echo {{ mnt_hostname }} > / | ||
+ | EOF | ||
+ | args: | ||
+ | executable: /bin/bash | ||
+ | |||
+ | # | ||
+ | # / | ||
+ | # https:// | ||
+ | # | ||
+ | - name: chroot - Set / | ||
+ | shell: | ||
+ | cmd: | | ||
+ | arch-chroot /mnt <<EOF | ||
+ | echo LANG={{ mnt_lang }} > / | ||
+ | EOF | ||
+ | args: | ||
+ | executable: /bin/bash | ||
+ | |||
+ | # | ||
+ | # / | ||
+ | # https:// | ||
+ | # | ||
+ | - name: chroot - Changes to / | ||
+ | shell: | ||
+ | cmd: | | ||
+ | arch-chroot /mnt <<EOF | ||
+ | cp -a / | ||
+ | sed -i '/# | ||
+ | locale-gen | ||
+ | EOF | ||
+ | args: | ||
+ | executable: /bin/bash | ||
+ | register: localegen | ||
+ | |||
+ | - debug: | ||
+ | msg: >- | ||
+ | { " | ||
+ | " | ||
+ | |||
+ | # | ||
+ | # / | ||
+ | # https:// | ||
+ | # | ||
+ | - name: chroot - Set / | ||
+ | shell: | ||
+ | cmd: | | ||
+ | arch-chroot /mnt <<EOF | ||
+ | echo KEYMAP=de-latin1-nodeadkeys > / | ||
+ | echo FONT=lat9w-16 >> / | ||
+ | EOF | ||
+ | args: | ||
+ | executable: /bin/bash | ||
+ | |||
+ | # | ||
+ | # / | ||
+ | # https:// | ||
+ | # | ||
+ | - name: chroot - Set / | ||
+ | shell: | ||
+ | cmd: | | ||
+ | arch-chroot /mnt <<EOF | ||
+ | ln -sf / | ||
+ | EOF | ||
+ | args: | ||
+ | executable: /bin/bash | ||
+ | |||
+ | # | ||
+ | # /etc/hosts | ||
+ | # https:// | ||
+ | # | ||
+ | - name: chroot - Set /etc/hosts | ||
+ | shell: | ||
+ | cmd: | | ||
+ | arch-chroot /mnt <<EOF | ||
+ | cat > /etc/hosts << | ||
+ | #< | ||
+ | 127.0.0.1 | ||
+ | ::1 | ||
+ | INEOF | ||
+ | EOF | ||
+ | args: | ||
+ | executable: /bin/bash | ||
+ | |||
+ | # | ||
+ | # / | ||
+ | # https:// | ||
+ | # | ||
+ | - name: chroot - Set / | ||
+ | shell: | ||
+ | cmd: | | ||
+ | arch-chroot /mnt <<EOF | ||
+ | cp -a / | ||
+ | sed -i ' | ||
+ | mkinitcpio -p linux-lts | ||
+ | EOF | ||
+ | args: | ||
+ | executable: /bin/bash | ||
+ | register: mkinitcpio | ||
+ | |||
+ | - debug: | ||
+ | msg: >- | ||
+ | { " | ||
+ | " | ||
+ | |||
+ | # | ||
+ | # Bootloader GRUB | ||
+ | # https:// | ||
+ | # | ||
+ | - name: chroot - Install and configure Bootloader - GRUB | ||
+ | shell: | ||
+ | cmd: | | ||
+ | arch-chroot /mnt <<EOF | ||
+ | pacman -S grub --noconfirm | ||
+ | grub-install "/ | ||
+ | sed -i ' | ||
+ | grub-mkconfig -o / | ||
+ | EOF | ||
+ | args: | ||
+ | executable: /bin/bash | ||
+ | register: grub | ||
+ | |||
+ | - debug: | ||
+ | msg: >- | ||
+ | { " | ||
+ | " | ||
+ | |||
+ | # | ||
+ | # passwd root | ||
+ | # https:// | ||
+ | # | ||
+ | - name: chroot - Set a default passwd for the root user (toor) | ||
+ | shell: | ||
+ | cmd: | | ||
+ | arch-chroot /mnt <<EOF | ||
+ | echo " | ||
+ | EOF | ||
+ | args: | ||
+ | executable: /bin/bash | ||
+ | |||
+ | # | ||
+ | # Netzwerk systemd | ||
+ | # https:// | ||
+ | # | ||
+ | - name: Create / | ||
+ | shell: | ||
+ | cmd: | | ||
+ | cat > / | ||
+ | [Match] | ||
+ | Name=eth0 | ||
+ | |||
+ | [Network] | ||
+ | Address={{ mnt_ip }} | ||
+ | Gateway={{ mnt_gateway }} | ||
+ | DNS={{ mnt_dns }} | ||
+ | EOF | ||
+ | args: | ||
+ | executable: /bin/bash | ||
+ | |||
+ | - name: chroot - Enable systemd-networkd.service | ||
+ | shell: | ||
+ | cmd: | | ||
+ | arch-chroot /mnt <<EOF | ||
+ | systemctl enable systemd-networkd.service | ||
+ | EOF | ||
+ | args: | ||
+ | executable: /bin/bash | ||
+ | |||
+ | - name: Update / | ||
+ | shell: | ||
+ | cmd: | | ||
+ | cat >> / | ||
+ | nameserver {{ mnt_dns }} | ||
+ | EOF | ||
+ | args: | ||
+ | executable: /bin/bash | ||
+ | |||
+ | # | ||
+ | # SSH-Dienst/ | ||
+ | # https:// | ||
+ | # | ||
+ | - name: Check if file NOT exists - / | ||
+ | stat: | ||
+ | path: / | ||
+ | register: sshd_config_orig | ||
+ | |||
+ | - name: Copy / | ||
+ | copy: | ||
+ | src: / | ||
+ | dest: / | ||
+ | remote_src: yes | ||
+ | when: sshd_config_orig.stat.exists == false | ||
+ | |||
+ | - name: Change configuration of / | ||
+ | lineinfile: | ||
+ | line: "{{ item.line }}" | ||
+ | path: "/ | ||
+ | regexp: "{{ item.regexp }}" | ||
+ | state: present | ||
+ | with_items: | ||
+ | - { regexp: " | ||
+ | - { regexp: " | ||
+ | |||
+ | - name: chroot - Enable sshd.service | ||
+ | shell: | ||
+ | cmd: | | ||
+ | arch-chroot /mnt <<EOF | ||
+ | systemctl enable sshd.service | ||
+ | EOF | ||
+ | args: | ||
+ | executable: /bin/bash | ||
</ | </ | ||
Zeile 340: | Zeile 955: | ||
<code ini> | <code ini> | ||
$ ansible-playbook -u root --ask-pass / | $ ansible-playbook -u root --ask-pass / | ||
+ | SSH password: | ||
+ | BECOME password[defaults to SSH password]: | ||
+ | |||
+ | PLAY [install] ***************************************************************** | ||
+ | |||
+ | TASK [Gathering Facts] ********************************************************* | ||
+ | ok: [192.168.1.10] | ||
+ | |||
+ | TASK [Read device information from disk] *************************************** | ||
+ | ok: [192.168.1.10] | ||
+ | |||
+ | TASK [Create partitions] ******************************************************* | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | |||
+ | TASK [Create a volume group on partition LVM] ********************************** | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [Create swap volume] ****************************************************** | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | |||
+ | TASK [Create logical volumes] ************************************************** | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | |||
+ | TASK [Make directory for mount point boot] ************************************* | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | |||
+ | TASK [Create a filesystem on each logical volume] ****************************** | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | |||
+ | TASK [Make directorys for mount points] **************************************** | ||
+ | ok: [192.168.1.10] => (item={' | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | |||
+ | TASK [Mount each logical volume] *********************************************** | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | |||
+ | TASK [Make directorys for nested mount points] ********************************* | ||
+ | ok: [192.168.1.10] => (item={' | ||
+ | ok: [192.168.1.10] => (item={' | ||
+ | ok: [192.168.1.10] => (item={' | ||
+ | ok: [192.168.1.10] => (item={' | ||
+ | |||
+ | TASK [Mount each nested logical volume] **************************************** | ||
+ | ok: [192.168.1.10] => (item={' | ||
+ | ok: [192.168.1.10] => (item={' | ||
+ | ok: [192.168.1.10] => (item={' | ||
+ | ok: [192.168.1.10] => (item={' | ||
+ | |||
+ | TASK [Create a filesystem on boot volume] ************************************** | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | |||
+ | TASK [Mount boot logical volume] *********************************************** | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | |||
+ | TASK [Create a filesystem on swap volume] ************************************** | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | |||
+ | TASK [Swapon swap device] ****************************************************** | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | |||
+ | TASK [Check if file NOT exists - / | ||
+ | ok: [192.168.1.10] | ||
+ | |||
+ | TASK [Copy / | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [Generate German Mirrorlist for pacman] *********************************** | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [Generate Basissystem with pacstrap (This may take some time!)] *********** | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [debug] ******************************************************************* | ||
+ | ok: [192.168.1.10] => { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | ":: Synchronizing package databases...", | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | ":: There are 24 members in group base-devel:", | ||
+ | ":: Repository core", | ||
+ | " | ||
+ | "", | ||
+ | "Enter a selection (default=all): | ||
+ | " | ||
+ | ":: There are 2 providers available for initramfs:", | ||
+ | ":: Repository core", | ||
+ | " | ||
+ | ":: Repository extra", | ||
+ | " | ||
+ | "", | ||
+ | "Enter a number (default=1): | ||
+ | " | ||
+ | "", | ||
+ | " | ||
+ | "", | ||
+ | "Total Download Size: 339.29 MiB", | ||
+ | "Total Installed Size: 1420.07 MiB", | ||
+ | "", | ||
+ | ":: Proceed with installation? | ||
+ | ":: Retrieving packages...", | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | ":: Processing package changes...", | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | ":: Append ' | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | ":: Running post-transaction hooks...", | ||
+ | "( 1/14) Creating system user accounts...", | ||
+ | "( 2/14) Updating journal message catalog...", | ||
+ | "( 3/14) Reloading system manager configuration...", | ||
+ | " | ||
+ | "( 4/14) Updating udev hardware database...", | ||
+ | "( 5/14) Applying kernel sysctl settings...", | ||
+ | "( 6/14) Creating temporary files...", | ||
+ | "( 7/14) Reloading device manager configuration...", | ||
+ | " | ||
+ | "( 8/14) Arming ConditionNeedsUpdate...", | ||
+ | "( 9/14) Updating module dependencies...", | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | ] | ||
+ | } | ||
+ | } | ||
+ | |||
+ | TASK [Generate /etc/fstab] ***************************************************** | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [chroot - Set / | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [chroot - Set / | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [chroot - Changes to / | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [debug] ******************************************************************* | ||
+ | ok: [192.168.1.10] => { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | ], | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | ] | ||
+ | } | ||
+ | } | ||
+ | |||
+ | TASK [chroot - Set / | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [chroot - Set / | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [chroot - Set /etc/hosts] ************************************************* | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [chroot - Set / | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [debug] ******************************************************************* | ||
+ | ok: [192.168.1.10] => { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | ], | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | ] | ||
+ | } | ||
+ | } | ||
+ | |||
+ | TASK [chroot - Install and configure Bootloader - GRUB] ************************ | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [debug] ******************************************************************* | ||
+ | ok: [192.168.1.10] => { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | "Found linux image: / | ||
+ | "Found initrd image: / | ||
+ | "Found fallback initrd image(s) in /boot: initramfs-linux-lts-fallback.img", | ||
+ | " | ||
+ | " | ||
+ | ], | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | "", | ||
+ | " | ||
+ | "", | ||
+ | "Total Download Size: 6.68 MiB", | ||
+ | "Total Installed Size: 32.53 MiB", | ||
+ | "", | ||
+ | ":: Proceed with installation? | ||
+ | ":: Retrieving packages...", | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | ":: Processing package changes...", | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | ":: Running post-transaction hooks...", | ||
+ | "(1/2) Arming ConditionNeedsUpdate...", | ||
+ | "(2/2) Updating the info directory file...", | ||
+ | " | ||
+ | ] | ||
+ | } | ||
+ | } | ||
+ | |||
+ | TASK [chroot - Set a default passwd for the root user (toor)] ****************** | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [Create / | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [chroot - Enable systemd-networkd.service] ******************************** | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [Update / | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [Check if file NOT exists - / | ||
+ | ok: [192.168.1.10] | ||
+ | |||
+ | TASK [Copy / | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | TASK [Change configuration of / | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | changed: [192.168.1.10] => (item={' | ||
+ | |||
+ | TASK [chroot - Enable sshd.service] ******************************************** | ||
+ | changed: [192.168.1.10] | ||
+ | |||
+ | PLAY RECAP ********************************************************************* | ||
+ | 192.168.1.10 | ||
</ | </ | ||
Zeile 371: | Zeile 1709: | ||
Jetzt kann eine erste Verbindung als Benutzer **'' | Jetzt kann eine erste Verbindung als Benutzer **'' | ||
- | |||
- | :!: **WICHTIG** - **Bitte das __Passwort__ für den Benutzer '' | ||
Benuzter: **'' | Benuzter: **'' | ||
Zeile 388: | Zeile 1724: | ||
* //Wobei die IP-Adresse: **192.168.1.11** im **Playbook** unter der Variable **'' | * //Wobei die IP-Adresse: **192.168.1.11** im **Playbook** unter der Variable **'' | ||
+ | |||
+ | :!: **WICHTIG** - **Bitte das __Passwort__ für den Benutzer '' | ||
tachtler/archlinux_-_minimal_server_installation_-_mit_ansible.1580626377.txt.gz · Zuletzt geändert: 2020/02/02 07:52 von klaus