From 5bc990b859106daddda6bbfc03a0ef7848466094 Mon Sep 17 00:00:00 2001 From: Administrator Date: Thu, 30 Oct 2025 05:56:09 +0000 Subject: [PATCH] Update 3 files - /roles/base_setup/handlers/main.yml - /roles/base_setup/tasks/main.yml - /group_vars/all.yml --- group_vars/all.yml | 7 +++ roles/base_setup/handlers/main.yml | 6 +++ roles/base_setup/tasks/main.yml | 82 ++++++++++++++++++++++++++++-- 3 files changed, 90 insertions(+), 5 deletions(-) diff --git a/group_vars/all.yml b/group_vars/all.yml index ffb9744..cbb0392 100644 --- a/group_vars/all.yml +++ b/group_vars/all.yml @@ -2,6 +2,7 @@ # Общие настройки для всех хостов timezone: Asia/Yekaterinburg system_locale: ru_RU.UTF-8 +x11_display_host: "192.168.1.101" proxmox_node: "Olimp" admin_user: root @@ -21,6 +22,12 @@ base_packages: - dnsutils - iputils-ping - traceroute + - sudo + - mc + - iftop + - ntp + - gparted + - pv system_scripts: [] custom_directories: diff --git a/roles/base_setup/handlers/main.yml b/roles/base_setup/handlers/main.yml index de17e1b..5ce19fe 100644 --- a/roles/base_setup/handlers/main.yml +++ b/roles/base_setup/handlers/main.yml @@ -4,6 +4,12 @@ name: ssh state: restarted +- name: restart qemu-guest-agent + service: + name: qemu-guest-agent + enabled: yes + state: restarted + - name: Reboot system reboot: msg: "Reboot triggered by base setup" diff --git a/roles/base_setup/tasks/main.yml b/roles/base_setup/tasks/main.yml index e1fef2c..cc8cf89 100644 --- a/roles/base_setup/tasks/main.yml +++ b/roles/base_setup/tasks/main.yml @@ -1,7 +1,7 @@ --- -- name: Update and upgrade apt packages +- name: Update and upgrade apt packages (full upgrade) apt: - upgrade: yes + upgrade: full update_cache: yes cache_valid_time: 3600 @@ -11,6 +11,77 @@ state: present update_cache: yes +- name: Install qemu-guest-agent and enable it + apt: + name: qemu-guest-agent + state: present + notify: restart qemu-guest-agent + +- name: Remove unused packages + apt: + autoremove: yes + autoclean: yes + +- name: Disable IPv6 via sysctl + sysctl: + name: "{{ item.name }}" + value: "{{ item.value }}" + sysctl_set: yes + state: present + reload: yes + loop: + - { name: 'net.ipv6.conf.all.disable_ipv6', value: '1' } + - { name: 'net.ipv6.conf.default.disable_ipv6', value: '1' } + +- name: Ensure /root/.bashrc exists + file: + path: /root/.bashrc + state: touch + mode: '0644' + +- name: Add custom aliases and environment to ~/.bashrc + blockinfile: + path: /root/.bashrc + marker: "# {mark} ANSIBLE MANAGED BLOCK: CUSTOM ALIASES AND ENV" + block: | + # Работа с файлами + alias rm='rm -i' # Удалить с подтверждением + alias cp='cp -i' # Копировать с подтверждением + alias mv='mv -i' # Переместить с подтверждением + + # ls - вывод списка файлов + alias ls='ls --color=auto' # Цветной вывод + alias ll='ls -la' # Показывать скрытые файлы и представлять вывод в виде списка + alias l.='ls -d .* --color=auto' # Показать только скрытые файлы + + # mount - монтирование разделов + alias mount='mount | column -t' # Вывод mount читаемым + + # История + alias h='history' # История команд bash + alias c='clear' # Очистить окно терминала + + # Дата и время + alias now='date +%T' # Время сейчас + alias nowdate='date +%d-%m-%Y' # Только дата + + # Сеть + alias ping5='ping -c 5' # Посылать только пять запросов + alias ports='netstat -tulanp' # Открытые порты + + # Работа с пакетами + alias update='sudo apt update && sudo apt upgrade' # Обновление одной командой + + # Работа с системой + alias meminfo='free -m -l -t' # Сколько памяти занято + alias psmem='ps auxf | sort -nr -k 4 | head -10' # 10 процессов с самой большой нагрузкой на память + + # Переменные окружения + export DISPLAY="{{ x11_display_host }}:0" + export HISTTIMEFORMAT='%F %T ' + owner: root + mode: '0644' + - name: Configure timezone timezone: name: "{{ timezone }}" @@ -31,12 +102,12 @@ file: path: "{{ item }}" state: directory - mode: 0755 + mode: '0755' loop: - /opt/scripts - /etc/apt/keyrings -- name: Install Python requests library +- name: Install Python requests library (if needed) apt: name: python3-requests state: present @@ -52,7 +123,8 @@ authorized_key: user: root state: present - key: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCbvnGZxQEGYuScClONbkbfVn2+Uo1kYYztXqMf9ku1lHkw+7IZa00LOMwv7QGBRvrtBcw+TWqaMst5FZ3R6oWcQc+nkBEYoRXe4f3AuuFAl9C9F6sEYM8fX6mAHIlWQhFyVslazZtVTQwnfRV0rnbtCduCu9liywM3fShFqBVwq7Y4nBjG648Zq+VfCHpbBE9XkZaMDyeOXdtppmLetywnBS33mbXMDgH09PMlRz097xfZLkpFdSi8WtDOtKSBiEHtZ+H0EZ42Cda2xMnqlgVtPxWGUirvv6CvDyTmuMzrjALZoSKhl3iD6Szd1YOJcAw6bv9gbJKxPkZchrB65ZXT ZailonOlimp" + key: "{{ item }}" + loop: "{{ ssh_public_keys | default([]) }}" - name: Configure SSH security lineinfile: