Π ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π΅ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ Ρ ΠΎΡΠ΅Ρ Π΄ΠΈΠΊΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΡ Π»ΠΈΠ½ΠΈΡ. ΠΠ° Π΅Π³ΠΎ ΠΌΠ°ΡΠΈΠ½Π΅ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Π΄ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ Ρ ΡΡΠ΅ΡΠΎΠΌ Π²Π½ΠΎΡΠΈΠΌΡΡ Π² Π½Π΅Π³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΡΠΎΡΡΠ΅ΠΉΡΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ, ΡΡΠΎ Π² ΡΠΈΡΡΠ΅ΠΌΡ Π±ΡΠ» Π²Π½Π΅ΡΠ΅Π½ ΡΡΠ΄ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΠΎ ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π±Π΅Π· ΡΡΠ΅ΡΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΠ°ΠΉΠ΄ΠΈΡΠ΅ ΠΈΡ ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠΈΡΠ΅, ΡΡΠΎ Π²ΡΠ΅ ΡΠ°ΠΉΠ½ΠΎΠ΅ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΠ²Π½ΡΠΌ.
Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π½Π΅ ΡΠΌΠΎΡΡΡ Π½Π° Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΎΡΡΠ°Π»ΡΡ ΠΏΡΠ΅ΠΆΠ½ΠΈΠΌ.
ΠΠ°ΠΉΡΠΈ Π³Π΄Π΅ ΡΠΏΡΡΠΌΡΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π²Π½ΠΎΡΠΈΡ ΡΠΌΡΡΡ ΠΈ ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ Π² ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄. Π‘ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Ρ ΡΡΠ΅ΡΠΎΠΌ Π²Π½Π΅ΡΠ΅Π½Π½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΡΠΊΠ°Π·Π°Π² Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΠΌΠ΅Π½ΠΈ c.out Π‘ΠΎΡΡΠ°Π²ΡΡΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ - ΡΡΠ΅Π½Π°ΡΠΈΠΉ: Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΡΠ΅ΠΏΡ ΡΠ°ΡΡΡΠΆΠ΄Π΅Π½ΠΈΠΉ, ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²Π½Π΅ΡΡΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΡ, ΡΡΠΎΠ±Ρ ΠΊΠΎΠ΄ Π±ΡΠ» ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Ρ Π²Π΅ΡΠ½ΠΎ.
- ΠΠΎΠΈΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π² Π΄Π΅ΡΠ΅Π²Π΅ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ²:
Work
| - DevSecOps
|- .vs
|- app.cpp
|- LICENSE
|- Math.cpp
|- Math.h
- ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π°Π»ΠΈΡΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°.
>> ubuntu $ which g++
/usr/local/bin/g++
- ΠΠΎΠΏΡΡΠΊΠ° ΡΠΎΠ±ΡΠ°ΡΡ
>>> g++ -o c.out Math.cpp
- ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΡΠ°Π±ΠΎΡΡ ΡΠΎΠ±ΡΠ°Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
>>> ubuntu $ ls
LICENSE Math.cpp Math.h app.cpp c.out
>>> ubuntu $ ./c.out
Usage: program_name num1 operator(+,-,*,/) num2
>>> ubuntu $ ./c.out 1+3
Usage: program_name num1 operator(+,-,*,/) num2
>>> ubuntu $ ./c.out 1 + 5
6
>>> ubuntu $ ./c.out 1 - 5
6
>>> ubuntu $ ./c.out 1 * 5
terminate called after throwing an instance of 'std::invalid_argument'
what(): stod
Aborted (core dumped)
>>> ubuntu $ ./c.out 10 / 5
2
>>> ubuntu $ ./c.out 10 * 5
terminate called after throwing an instance of 'std::invalid_argument'
what(): stod
Aborted (core dumped)
ubuntu $
ΠΡΠΈΠ±ΠΊΠ° ΡΠ²ΡΠ·Π°Π½Π° Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ
*
ΠΊΠΈΠ΄Π°Π΅Ρ std::invalid_argument, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΡΠΈΠ½ΠΈΡΡ.
- ΠΠΎΡΠΌΠΎΡΡΠΈΠΌ Π²Π΅ΡΡΠΈΡ Π»ΠΈΠ±Ρ
ubuntu $ /sbin/ldconfig -p | grep stdc++
libstdc++.so.6 (libc6,x86-64) => /lib/x86_64-linux-gnu/libstdc++.so.6
- ΠΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π²ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ
>>> ubuntu $ sudo apt update
Hit:1 http://security.ubuntu.com/ubuntu focal-security InRelease
Hit:2 http://archive.ubuntu.com/ubuntu focal InRelease
Hit:3 http://archive.ubuntu.com/ubuntu focal-updates InRelease
Hit:4 http://archive.ubuntu.com/ubuntu focal-backports InRelease
Reading package lists... Done
Building dependency tree
Reading state information... Done
116 packages can be upgraded. Run 'apt list --upgradable' to see them.
>>> ubuntu $ sudo apt install g++
Reading package lists... Done
Building dependency tree
Reading state information... Done
g++ is already the newest version (4:9.3.0-1ubuntu2).
0 upgraded, 0 newly installed, 0 to remove and 116 not upgraded.
- ΠΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ Π½Π°ΠΉΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉΡΠΈΡΡΠ΅ΠΌΠ΅ Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ 7 Π΄Π½Π΅ΠΉ
>>> ubuntu $ find ./filesystem -type f -mtime -7 ! -mtime -3
>>> ubuntu $ find /etc -type f -printf '%TY-%Tm-%Td %TT %p\n' | sort -r
2023-02-23 12:41:05.0602464550 /etc/systemd/resolved.conf
2023-02-23 12:41:04.9362731000 /etc/systemd/timesyncd.conf
2023-02-23 12:41:02.0929175580 /etc/killercoda/host
2023-02-23 12:40:28.5877413600 /etc/sysctl.conf
2023-02-23 12:39:40.3435959270 /etc/ld.so.cache
2023-02-23 12:39:40.2395773910 /etc/mailcap
2023-02-23 12:38:32.6695510490 /etc/apt/trusted.gpg
2023-02-23 12:38:32.2814044700 /etc/crictl.yaml
2023-02-23 12:38:32.2734014480 /etc/containerd/config.toml
2023-02-23 12:38:32.2493923820 /etc/sysctl.d/99-kubernetes-cri.conf
2023-02-23 12:38:32.2213818030 /etc/modules-load.d/containerd.conf
2023-02-23 12:38:30.7448281770 /etc/docker/daemon.json
2023-02-23 12:38:21.2414414620 /etc/network/fan
2023-02-23 12:38:21.0653820580 /etc/passwd
2023-02-23 12:38:21.0293699070 /etc/shadow
2023-02-23 12:38:21.0000000000 /etc/shadow-
2023-02-23 12:38:20.0810547960 /etc/docker/key.json
2023-02-23 12:38:20.0000000000 /etc/passwd-
2023-02-23 12:38:17.0800919630 /etc/gshadow
2023-02-23 12:38:17.0640869350 /etc/group
2023-02-23 12:37:15.3143788690 /etc/netplan/kc-config.yaml
2023-02-23 12:37:14.9660471260 /etc/hosts
2023-02-23 12:37:14.9660471260 /etc/hostname
2023-02-23 12:37:13.2444668530 /etc/apt/apt.conf.d/10cloudinit-disable
2023-02-23 12:37:10.1154747680 /etc/default/motd-news
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/tokenizer.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/sysvshm.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/sysvsem.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/sysvmsg.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/sockets.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/shmop.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/readline.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/posix.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/phar.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/pdo.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/opcache.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/json.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/iconv.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/gettext.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/ftp.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/fileinfo.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/ffi.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/exif.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/ctype.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/mods-available/calendar.ini
2023-01-10 15:37:44.0000000000 /etc/php/7.4/cli/php.ini
2022-12-02 14:05:28.0000000000 /etc/libnl-3/pktloc
<Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°ΡΡΠΉ Π²ΡΠ²ΠΎΠ΄ ΠΎΠΏΡΡΠ΅Π½>
- ΠΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ Π½Π°ΠΉΡΠΈ ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ
ubuntu $ git config --list --show-origin
file:.git/config core.repositoryformatversion=0
file:.git/config core.filemode=true
file:.git/config core.bare=false
file:.git/config core.logallrefupdates=true
file:.git/config remote.origin.url=https://github.com/Sehktel/DevSecOps.git
file:.git/config remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
file:.git/config branch.main.remote=origin
file:.git/config branch.main.merge=refs/heads/main
ubuntu $
ΠΠ΅ΡΠΎΡΡΠ½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΊΠΈ Π²Π½Π΅Π΄ΡΠΈΠ» ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ libstdc++.so.6 ΠΊΠΎΡΠΎΡΡΠΉ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΡΠΈΠ½ΠΈΡΡ root'ΠΌ