From 10d097fa35d84680df0b51cb073a81335439252f Mon Sep 17 00:00:00 2001 From: Ilya Prockofiev <125394064+somepatt@users.noreply.github.com> Date: Tue, 3 Feb 2026 15:01:51 +0300 Subject: [PATCH 1/9] docs: add commit signing summary --- labs/submission1.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 labs/submission1.md diff --git a/labs/submission1.md b/labs/submission1.md new file mode 100644 index 00000000..e69de29b From 44c24b2cafbc8d6dc495f50f57eba047d65f1faf Mon Sep 17 00:00:00 2001 From: Ilya Prockofiev <125394064+somepatt@users.noreply.github.com> Date: Tue, 3 Feb 2026 15:07:04 +0300 Subject: [PATCH 2/9] new doc --- labs/submission1.md | 1 + 1 file changed, 1 insertion(+) diff --git a/labs/submission1.md b/labs/submission1.md index e69de29b..e440345e 100644 --- a/labs/submission1.md +++ b/labs/submission1.md @@ -0,0 +1 @@ +1) s \ No newline at end of file From 8f1766412d2c52fe57975b07aa0aaf5702612646 Mon Sep 17 00:00:00 2001 From: Ilya Prockofiev <125394064+somepatt@users.noreply.github.com> Date: Tue, 3 Feb 2026 18:34:58 +0300 Subject: [PATCH 3/9] docs: add lab1 submission stub --- .github/pull_request_template.md | 20 ++++++++++++++++++++ labs/image.png | Bin 0 -> 12677 bytes labs/submission1.md | 5 +++++ 3 files changed, 25 insertions(+) create mode 100644 .github/pull_request_template.md create mode 100644 labs/image.png diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 00000000..1daac3b1 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,20 @@ +## Goal / Purpose + + +## Changes +- + +## Related issue +Closes # + +## Testing +- [ ] Unit tests +- [ ] E2E/Integration +- [ ] Manual (steps): + +## Checklist +- [ ] Self-review done +- [ ] CI is green +- [ ] Tests added/updated (if needed) +- [ ] Docs updated (if needed) +- [ ] No secrets/credentials in code or logs diff --git a/labs/image.png b/labs/image.png new file mode 100644 index 0000000000000000000000000000000000000000..630ae5f225ab74489e15708f2446af1d8bff473b GIT binary patch literal 12677 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 Date: Tue, 3 Feb 2026 18:43:40 +0300 Subject: [PATCH 4/9] prove --- labs/submission1.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/labs/submission1.md b/labs/submission1.md index bb06a476..7ae4b045 100644 --- a/labs/submission1.md +++ b/labs/submission1.md @@ -2,4 +2,6 @@ 2) Подпись коммитов в DevOps особенно важна, потому что она криптографически подтверждает, кто внёс изменения и что коммит не был подменён, повышая доверие к коду, который проходит через CI/CD. -![alt text](image.png) \ No newline at end of file +![alt text](image.png) + +нью \ No newline at end of file From 78a14f5ed6344ee9e2d632717cb8dcd9cfd42b06 Mon Sep 17 00:00:00 2001 From: Ilya Prockofiev <125394064+somepatt@users.noreply.github.com> Date: Tue, 3 Feb 2026 18:45:13 +0300 Subject: [PATCH 5/9] prove --- labs/submission1.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/labs/submission1.md b/labs/submission1.md index 7ae4b045..97356d4d 100644 --- a/labs/submission1.md +++ b/labs/submission1.md @@ -3,5 +3,3 @@ 2) Подпись коммитов в DevOps особенно важна, потому что она криптографически подтверждает, кто внёс изменения и что коммит не был подменён, повышая доверие к коду, который проходит через CI/CD. ![alt text](image.png) - -нью \ No newline at end of file From e67bd59014819d59ebe2de0ca4b59d421f221b9d Mon Sep 17 00:00:00 2001 From: Ilya Prockofiev <125394064+somepatt@users.noreply.github.com> Date: Mon, 16 Feb 2026 11:03:44 +0300 Subject: [PATCH 6/9] add actions --- .github/workflows/github-actions-demo.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 .github/workflows/github-actions-demo.yml diff --git a/.github/workflows/github-actions-demo.yml b/.github/workflows/github-actions-demo.yml new file mode 100644 index 00000000..b00f8e94 --- /dev/null +++ b/.github/workflows/github-actions-demo.yml @@ -0,0 +1,18 @@ +name: GitHub Actions Demo +run-name: ${{ github.actor }} is testing out GitHub Actions 🚀 +on: [push] +jobs: + Explore-GitHub-Actions: + runs-on: ubuntu-latest + steps: + - run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event." + - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!" + - run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}." + - name: Check out repository code + uses: actions/checkout@v5 + - run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner." + - run: echo "🖥️ The workflow is now ready to test your code on the runner." + - name: List files in the repository + run: | + ls ${{ github.workspace }} + - run: echo "🍏 This job's status is ${{ job.status }}." From 14f7af977fcd15e37fba3c2d86acf497e805ceb0 Mon Sep 17 00:00:00 2001 From: Ilya Prockofiev <125394064+somepatt@users.noreply.github.com> Date: Mon, 16 Feb 2026 11:27:56 +0300 Subject: [PATCH 7/9] add: manual trigger --- .github/workflows/github-actions-demo.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/github-actions-demo.yml b/.github/workflows/github-actions-demo.yml index b00f8e94..f53883b6 100644 --- a/.github/workflows/github-actions-demo.yml +++ b/.github/workflows/github-actions-demo.yml @@ -1,6 +1,6 @@ name: GitHub Actions Demo run-name: ${{ github.actor }} is testing out GitHub Actions 🚀 -on: [push] +on: [push, workflow_dispatch] jobs: Explore-GitHub-Actions: runs-on: ubuntu-latest From db3d3d656e5c33c7e7a4f552a7c64903bd592511 Mon Sep 17 00:00:00 2001 From: Ilya Prockofiev <125394064+somepatt@users.noreply.github.com> Date: Mon, 16 Feb 2026 11:34:41 +0300 Subject: [PATCH 8/9] add gather information --- .github/workflows/github-actions-demo.yml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/.github/workflows/github-actions-demo.yml b/.github/workflows/github-actions-demo.yml index f53883b6..2701a3de 100644 --- a/.github/workflows/github-actions-demo.yml +++ b/.github/workflows/github-actions-demo.yml @@ -8,6 +8,22 @@ jobs: - run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event." - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!" - run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}." + - name: Collect System Information + run: | + echo "=== System Information ===" + uname -a + echo "" + echo "=== CPU Information ===" + lscpu + echo "" + echo "=== Memory Information ===" + free -h + echo "" + echo "=== Disk Space ===" + df -h + echo "" + echo "=== Environment Variables ===" + printenv | grep RUNNER - name: Check out repository code uses: actions/checkout@v5 - run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner." From a8da50b77976353069adf48f1f21a7d5f7c27f18 Mon Sep 17 00:00:00 2001 From: Ilya Prockofiev <125394064+somepatt@users.noreply.github.com> Date: Mon, 23 Feb 2026 14:00:34 +0300 Subject: [PATCH 9/9] docs: add lab4 submission --- labs/submission4.md | 446 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 446 insertions(+) create mode 100644 labs/submission4.md diff --git a/labs/submission4.md b/labs/submission4.md new file mode 100644 index 00000000..0b0527c2 --- /dev/null +++ b/labs/submission4.md @@ -0,0 +1,446 @@ +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ systemd-analyze +Startup finished in 2.436s (userspace) +graphical.target reached after 2.420s in userspace. +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ systemd-analyze blame +1.353s landscape-client.service + 568ms snapd.seeded.service + 467ms wsl-pro.service + 414ms snapd.service + 351ms dev-sdc.device + 273ms rsyslog.service + 234ms systemd-logind.service + 211ms logrotate.service + 204ms user@1000.service + 191ms systemd-udev-trigger.service + 165ms systemd-resolved.service + 154ms e2scrub_reap.service + 128ms systemd-journal-flush.service + 128ms systemd-udevd.service + 107ms systemd-timedated.service + 105ms systemd-timesyncd.service + 96ms systemd-journald.service + 93ms keyboard-setup.service + 90ms systemd-tmpfiles-setup.service + 75ms dpkg-db-backup.service + 72ms dbus.service + 61ms dev-hugepages.mount + 60ms dev-mqueue.mount + 56ms sys-kernel-debug.mount + 53ms sys-kernel-tracing.mount + 51ms modprobe@drm.service + 49ms modprobe@dm_mod.service + 48ms modprobe@configfs.service + 48ms modprobe@fuse.service + 46ms modprobe@efi_pstore.service + 41ms modprobe@loop.service + 40ms systemd-modules-load.service + 37ms systemd-tmpfiles-setup-dev-early.service + 37ms systemd-user-sessions.service + 35ms wsl-binfmt.service + 23ms setvtrgb.service + 20ms systemd-sysctl.service + 19ms systemd-remount-fs.service + 17ms user-runtime-dir@1000.service + 16ms systemd-tmpfiles-setup-dev.service + 16ms systemd-update-utmp.service + 14ms console-setup.service + 12ms systemd-update-utmp-runlevel.service + 9ms sys-fs-fuse-connections.mount + 1ms snapd.socket +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ uptime + 13:19:04 up 0 min, 1 user, load average: 0.44, 0.13, 0.05 +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ w + 13:19:13 up 0 min, 1 user, load average: 0.37, 0.13, 0.04 +USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT +somepatt pts/1 - 13:18 41.00s 0.03s 0.03s -bash +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head -n 6 + PID PPID CMD %MEM %CPU + 223 1 /usr/bin/python3 /usr/share 0.2 0.4 + 55 1 /usr/lib/systemd/systemd-jo 0.2 0.4 + 177 1 /usr/libexec/wsl-pro-servic 0.2 0.4 + 1 0 /sbin/init 0.1 2.5 + 153 1 /usr/lib/systemd/systemd-re 0.1 0.2 +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head -n 6 + PID PPID CMD %MEM %CPU + 1 0 /sbin/init 0.1 2.2 + 177 1 /usr/libexec/wsl-pro-servic 0.2 0.3 + 174 1 /usr/lib/systemd/systemd-lo 0.1 0.3 + 223 1 /usr/bin/python3 /usr/share 0.2 0.3 + 80 1 /usr/lib/systemd/systemd-ud 0.0 0.3 +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ systemctl list-dependencies +default.target +○ ├─display-manager.service +○ ├─systemd-update-utmp-runlevel.service +○ ├─wsl-binfmt.service +● └─multi-user.target +○ ├─apport.service +● ├─console-setup.service +● ├─cron.service +● ├─dbus.service +○ ├─dmesg.service +○ ├─e2scrub_reap.service +○ ├─landscape-client.service +○ ├─networkd-dispatcher.service +● ├─rsyslog.service +○ ├─snapd.apparmor.service +○ ├─snapd.autoimport.service +○ ├─snapd.core-fixup.service +○ ├─snapd.recovery-chooser-trigger.service +● ├─snapd.seeded.service +○ ├─snapd.service +● ├─systemd-ask-password-wall.path +● ├─systemd-logind.service +○ ├─systemd-update-utmp-runlevel.service +● ├─systemd-user-sessions.service +○ ├─ua-reboot-cmds.service +○ ├─ubuntu-advantage.service +● ├─unattended-upgrades.service +● ├─wsl-pro.service +● ├─basic.target +○ │ ├─tmp.mount +● │ ├─paths.target +○ │ │ └─apport-autoreport.path +● │ ├─slices.target +● │ │ ├─-.slice +● │ │ └─system.slice +● │ ├─sockets.target +● │ │ ├─apport-forward.socket +● │ │ ├─dbus.socket +● │ │ ├─snapd.socket +● │ │ ├─systemd-initctl.socket +● │ │ ├─systemd-journald-dev-log.socket +● │ │ ├─systemd-journald.socket +○ │ │ ├─systemd-pcrextend.socket +● │ │ ├─systemd-sysext.socket +● │ │ ├─systemd-udevd-control.socket +● │ │ ├─systemd-udevd-kernel.socket +● │ │ └─uuidd.socket +● │ ├─sysinit.target +○ │ │ ├─apparmor.service +● │ │ ├─dev-hugepages.mount +● │ │ ├─dev-mqueue.mount +● │ │ ├─keyboard-setup.service +○ │ │ ├─kmod-static-nodes.service +○ │ │ ├─ldconfig.service +○ │ │ ├─proc-sys-fs-binfmt_misc.automount +● │ │ ├─setvtrgb.service +● │ │ ├─sys-fs-fuse-connections.mount +○ │ │ ├─sys-kernel-config.mount +● │ │ ├─sys-kernel-debug.mount +● │ │ ├─sys-kernel-tracing.mount +● │ │ ├─systemd-ask-password-console.path +○ │ │ ├─systemd-binfmt.service +○ │ │ ├─systemd-firstboot.service +○ │ │ ├─systemd-hwdb-update.service +○ │ │ ├─systemd-journal-catalog-update.service +● │ │ ├─systemd-journal-flush.service +● │ │ ├─systemd-journald.service +○ │ │ ├─systemd-machine-id-commit.service +● │ │ ├─systemd-modules-load.service +○ │ │ ├─systemd-pcrmachine.service +○ │ │ ├─systemd-pcrphase-sysinit.service +○ │ │ ├─systemd-pcrphase.service +○ │ │ ├─systemd-pstore.service +○ │ │ ├─systemd-random-seed.service +○ │ │ ├─systemd-repart.service +● │ │ ├─systemd-resolved.service +● │ │ ├─systemd-sysctl.service +○ │ │ ├─systemd-sysusers.service +● │ │ ├─systemd-timesyncd.service +● │ │ ├─systemd-tmpfiles-setup-dev-early.service +● │ │ ├─systemd-tmpfiles-setup-dev.service +● │ │ ├─systemd-tmpfiles-setup.service +○ │ │ ├─systemd-tpm2-setup-early.service +○ │ │ ├─systemd-tpm2-setup.service +● │ │ ├─systemd-udev-trigger.service +● │ │ ├─systemd-udevd.service +○ │ │ ├─systemd-update-done.service +● │ │ ├─systemd-update-utmp.service +● │ │ ├─cryptsetup.target +● │ │ ├─integritysetup.target +● │ │ ├─local-fs.target +● │ │ │ └─systemd-remount-fs.service +● │ │ ├─swap.target +● │ │ └─veritysetup.target +● │ └─timers.target +○ │ ├─apport-autoreport.timer +● │ ├─apt-daily-upgrade.timer +● │ ├─apt-daily.timer +● │ ├─dpkg-db-backup.timer +● │ ├─e2scrub_all.timer +○ │ ├─fstrim.timer +● │ ├─logrotate.timer +● │ ├─man-db.timer +● │ ├─motd-news.timer +○ │ ├─snapd.snap-repair.timer +● │ ├─systemd-tmpfiles-clean.timer +○ │ └─ua-timer.timer +● ├─getty.target +● │ ├─console-getty.service +○ │ ├─getty-static.service +● │ └─getty@tty1.service +● └─remote-fs.target + +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ systemctl list-dependencies multi-user.target +multi-user.target +○ ├─apport.service +● ├─console-setup.service +● ├─cron.service +● ├─dbus.service +○ ├─dmesg.service +○ ├─e2scrub_reap.service +○ ├─landscape-client.service +○ ├─networkd-dispatcher.service +● ├─rsyslog.service +○ ├─snapd.apparmor.service +○ ├─snapd.autoimport.service +○ ├─snapd.core-fixup.service +○ ├─snapd.recovery-chooser-trigger.service +● ├─snapd.seeded.service +○ ├─snapd.service +● ├─systemd-ask-password-wall.path +● ├─systemd-logind.service +○ ├─systemd-update-utmp-runlevel.service +● ├─systemd-user-sessions.service +○ ├─ua-reboot-cmds.service +○ ├─ubuntu-advantage.service +● ├─unattended-upgrades.service +● ├─wsl-pro.service +● ├─basic.target +○ │ ├─tmp.mount +● │ ├─paths.target +○ │ │ └─apport-autoreport.path +● │ ├─slices.target +● │ │ ├─-.slice +● │ │ └─system.slice +● │ ├─sockets.target +● │ │ ├─apport-forward.socket +● │ │ ├─dbus.socket +● │ │ ├─snapd.socket +● │ │ ├─systemd-initctl.socket +● │ │ ├─systemd-journald-dev-log.socket +● │ │ ├─systemd-journald.socket +○ │ │ ├─systemd-pcrextend.socket +● │ │ ├─systemd-sysext.socket +● │ │ ├─systemd-udevd-control.socket +● │ │ ├─systemd-udevd-kernel.socket +● │ │ └─uuidd.socket +● │ ├─sysinit.target +○ │ │ ├─apparmor.service +● │ │ ├─dev-hugepages.mount +● │ │ ├─dev-mqueue.mount +● │ │ ├─keyboard-setup.service +○ │ │ ├─kmod-static-nodes.service +○ │ │ ├─ldconfig.service +○ │ │ ├─proc-sys-fs-binfmt_misc.automount +● │ │ ├─setvtrgb.service +● │ │ ├─sys-fs-fuse-connections.mount +○ │ │ ├─sys-kernel-config.mount +● │ │ ├─sys-kernel-debug.mount +● │ │ ├─sys-kernel-tracing.mount +● │ │ ├─systemd-ask-password-console.path +○ │ │ ├─systemd-binfmt.service +○ │ │ ├─systemd-firstboot.service +○ │ │ ├─systemd-hwdb-update.service +○ │ │ ├─systemd-journal-catalog-update.service +● │ │ ├─systemd-journal-flush.service +● │ │ ├─systemd-journald.service +○ │ │ ├─systemd-machine-id-commit.service +● │ │ ├─systemd-modules-load.service +○ │ │ ├─systemd-pcrmachine.service +○ │ │ ├─systemd-pcrphase-sysinit.service +○ │ │ ├─systemd-pcrphase.service +○ │ │ ├─systemd-pstore.service +○ │ │ ├─systemd-random-seed.service +○ │ │ ├─systemd-repart.service +● │ │ ├─systemd-resolved.service +● │ │ ├─systemd-sysctl.service +○ │ │ ├─systemd-sysusers.service +● │ │ ├─systemd-timesyncd.service +● │ │ ├─systemd-tmpfiles-setup-dev-early.service +● │ │ ├─systemd-tmpfiles-setup-dev.service +● │ │ ├─systemd-tmpfiles-setup.service +○ │ │ ├─systemd-tpm2-setup-early.service +○ │ │ ├─systemd-tpm2-setup.service +● │ │ ├─systemd-udev-trigger.service +● │ │ ├─systemd-udevd.service +○ │ │ ├─systemd-update-done.service +● │ │ ├─systemd-update-utmp.service +● │ │ ├─cryptsetup.target +● │ │ ├─integritysetup.target +● │ │ ├─local-fs.target +● │ │ │ └─systemd-remount-fs.service +● │ │ ├─swap.target +● │ │ └─veritysetup.target +● │ └─timers.target +○ │ ├─apport-autoreport.timer +● │ ├─apt-daily-upgrade.timer +● │ ├─apt-daily.timer +● │ ├─dpkg-db-backup.timer +● │ ├─e2scrub_all.timer +○ │ ├─fstrim.timer +● │ ├─logrotate.timer +● │ ├─man-db.timer +● │ ├─motd-news.timer +○ │ ├─snapd.snap-repair.timer +● │ ├─systemd-tmpfiles-clean.timer +○ │ └─ua-timer.timer +● ├─getty.target +● │ ├─console-getty.service +○ │ ├─getty-static.service +● │ └─getty@tty1.service +● └─remote-fs.target + +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ who -a + system boot 2026-02-23 13:18 + run-level 5 2026-02-23 13:18 +LOGIN console 2026-02-23 13:18 198 id=cons +LOGIN tty1 2026-02-23 13:18 205 id=tty1 +somepatt - pts/1 2026-02-23 13:18 00:01 414 +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ last -n 5 +reboot system boot 5.15.167.4-micro Mon Feb 23 13:18 still running +reboot system boot 5.15.167.4-micro Fri Feb 20 19:19 still running +reboot system boot 5.15.167.4-micro Tue Feb 17 10:32 still running +reboot system boot 5.15.167.4-micro Mon Feb 16 23:12 still running +reboot system boot 5.15.167.4-micro Fri Feb 13 19:12 still running + +wtmp begins Fri Apr 4 21:03:33 2025 +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ free -h + total used free shared buff/cache available +Mem: 7.4Gi 620Mi 6.6Gi 3.2Mi 427Mi 6.8Gi +Swap: 2.0Gi 0B 2.0Gi +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ cat /proc/meminfo | grep -e MemTotal -e SwapTotal -e MemAvailable +MemTotal: 7718068 kB +MemAvailable: 7084860 kB +SwapTotal: 2097152 kB + + +1) systemd-analyze - показывает время загрузки системы +2) systemd-analyze blame - показывает какие из серисов грузило дольше всех +3) uptime - текущее время, сколько работает система, сколько пользователей, средняя нагрузка на CPU +4) w - показывает кто залогинен +5) ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head -n 6 - сортировка процессов по трате памяти топ 6 +6) ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head -n 6 - сортировка процессов по нагрузке cpu топ 6 +7) systemctl list-dependencies - дерево зависимости текущего target +8) systemctl list-dependencies multi-user.target - какие сервисыя запускаются в обычном серверном режиме +9) who -a - показывает когда был запуск, runlevel, кто залогинен +10) last -n 5 - история перезангрузок +11) free -h - память в удобном формате +12) at /proc/meminfo | grep -e MemTotal -e SwapTotal -e MemAvailable - то же что и 11 команда, только в сыром виде + + +Больше всего памяти занимает 223 1 /usr/bin/python3 /usr/share 0.2 0.4 +Очень низкая нагрузка на CPU, система простаивает. Быстрая загрузка системы. Нет тяжелых процессов. + + + +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ traceroute github.com +traceroute to github.com (140.82.121.4), 30 hops max, 60 byte packets + 1 DESKTOP-NG99BTO.mshome.net (172.30.208.1) 0.580 ms 0.511 ms 0.493 ms + 2 10.243.1.1 (10.243.1.1) 1.308 ms 1.236 ms 1.215 ms + 3 * * 10.250.0.2 (10.250.0.2) 1.104 ms + 4 10.252.6.1 (10.252.6.1) 1.102 ms * 1.049 ms + 5 * * * + 6 * * * + 7 * * * + 8 * * * + 9 * * * +10 83.169.204.82 (83.169.204.82) 45.095 ms 83.169.204.78 (83.169.204.78) 41.395 ms 83.169.204.82 (83.169.204.82) 46.880 ms +11 netnod-ix-ge-a-sth-1500.inter.link (194.68.123.180) 45.424 ms 42.413 ms 44.345 ms +12 * * * +13 * * * +14 * * * +15 * * * +16 * * * +17 r1-fra3-de.as5405.net (94.103.180.24) 58.448 ms 62.195 ms 58.342 ms +18 cust-sid435.r1-fra3-de.as5405.net (45.153.82.39) 60.721 ms cust-sid436.fra3-de.as5405.net (45.153.82.37) 54.202 ms 55.505 ms +19 * * * +20 * * * +21 * * * +22 * * * +23 * * * +24 * * * +25 * * * +26 * * * +27 * * * +28 * * * +29 * * * +30 * * * +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ dig github.com + +; <<>> DiG 9.18.39-0ubuntu0.24.04.2-Ubuntu <<>> github.com +;; global options: +cmd +;; Got answer: +;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28935 +;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 + +;; OPT PSEUDOSECTION: +; EDNS: version: 0, flags:; udp: 4096 +;; QUESTION SECTION: +;github.com. IN A + +;; ANSWER SECTION: +github.com. 56 IN A 140.82.121.4 + +;; Query time: 71 msec +;; SERVER: 10.255.255.254#53(10.255.255.254) (UDP) +;; WHEN: Mon Feb 23 13:42:12 MSK 2026 +;; MSG SIZE rcvd: 55 + +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ sudo timeout 10 tcpdump -c 5 -i any 'port 53' -nn +tcpdump: data link type LINUX_SLL2 +tcpdump: verbose output suppressed, use -v[v]... for full protocol decode +listening on any, link-type LINUX_SLL2 (Linux cooked v2), snapshot length 262144 bytes + +0 packets captured +0 packets received by filter +0 packets dropped by kernel +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ dig -x 8.8.4.4 + +; <<>> DiG 9.18.39-0ubuntu0.24.04.2-Ubuntu <<>> -x 8.8.4.4 +;; global options: +cmd +;; Got answer: +;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 13060 +;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 + +;; OPT PSEUDOSECTION: +; EDNS: version: 0, flags:; udp: 4096 +;; QUESTION SECTION: +;4.4.8.8.in-addr.arpa. IN PTR + +;; ANSWER SECTION: +4.4.8.8.in-addr.arpa. 5471 IN PTR dns.google. + +;; Query time: 30 msec +;; SERVER: 10.255.255.254#53(10.255.255.254) (UDP) +;; WHEN: Mon Feb 23 13:45:55 MSK 2026 +;; MSG SIZE rcvd: 73 + +somepatt@DESKTOP-NG99BTO:/mnt/c/Users/Mi/Desktop/projects/DevOps-Intro$ dig -x 1.1.2.2 + +; <<>> DiG 9.18.39-0ubuntu0.24.04.2-Ubuntu <<>> -x 1.1.2.2 +;; global options: +cmd +;; Got answer: +;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 12042 +;; flags: qr rd ra ad; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1 + +;; OPT PSEUDOSECTION: +; EDNS: version: 0, flags:; udp: 4096 +;; QUESTION SECTION: +;2.2.1.1.in-addr.arpa. IN PTR + +;; AUTHORITY SECTION: +1.in-addr.arpa. 1294 IN SOA ns.apnic.net. read-txt-record-of-zone-first-dns-admin.apnic.net. 23597 7200 1800 604800 3600 + +;; Query time: 20 msec +;; SERVER: 10.255.255.254#53(10.255.255.254) (UDP) +;; WHEN: Mon Feb 23 13:45:59 MSK 2026 +;; MSG SIZE rcvd: 137 + +Многие узлы не отвечают на traceroute, маршрут через Франкфурт, трафик проходит через nethod. +DNS содержит только одну запись(A), запрос идет через 10.255.255.254 +PTR есть на 8.8.4.4. На 1.1.2.2 его нет - NXDOMAIN +Пример DNS: +Запрос - A github.com +Ответ - 140.82.121.4 +DNS сервер - 10.255.255.254:53 \ No newline at end of file