{"id":31240,"date":"2019-10-31T21:40:13","date_gmt":"2019-10-31T18:40:13","guid":{"rendered":"https:\/\/prohoster.info\/blog\/linux-quest-pozdravlyaem-pobeditelej-i-rasskazyvaem-pro-resheniya-zadanij\/"},"modified":"2019-10-31T21:40:13","modified_gmt":"2019-10-31T18:40:13","slug":"linux-quest-pozdravlyaem-pobeditelej-i-rasskazyvaem-pro-resheniya-zadanij","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/linux-quest-pozdravlyaem-pobeditelej-i-rasskazyvaem-pro-resheniya-zadanij","title":{"rendered":"Linuxi \u00fclesanne. Palju \u00f5nne v\u00f5itjatele ja r\u00e4\u00e4gime \u00fclesande lahendustest","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Linuxi \u00fclesanne. Palju \u00f5nne v\u00f5itjatele ja r\u00e4\u00e4gime \u00fclesande lahendustest\" src=\"\/wp-content\/uploads\/2019\/04\/a8c28d0ba562680119475609a56136d6.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n25. m\u00e4rtsil avasime registreerimise <noindex><a rel=\"nofollow\" href=\"https:\/\/linux.mail.ru\">Linux Quest<\/a><\/noindex>, see on m\u00e4ng Linuxi operatsioonis\u00fcsteemi armastajatele ja asjatundjatele. Veidi statistikat: m\u00e4ngu on registreerunud 1117 inimest, kellest 317 on leidnud v\u00e4hemalt \u00fche v\u00f5tme, 241 on edukalt l\u00e4binud esimese etapi \u00fclesande, 123 \u2013 teise ja 70 on l\u00f5petanud kolmanda etapi. T\u00e4na l\u00f5ppes meie m\u00e4ng ja \u00f5nnitleme v\u00f5itjaid! <br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<ul>\n<li><b>Esikoha saavutas Aleksandr Tjeldekov.<\/b><br \/>\nAleksandr \u00fctles enda kohta, et ta on k\u00f5ige tavaline s\u00fcsteemiadministraator. Elab Volgogradis ja on erinevaid Unix-t\u00fc\u00fcpi s\u00fcsteeme haldanud juba kaksk\u00fcmmend aastat. On t\u00f6\u00f6tanud internetiteenuse pakkujates, pangas, s\u00fcsteemiintegraatoris. Praegu t\u00f6\u00f6tab ta v\u00e4ikese ettev\u00f5tte juures eemalt, tegeleb pilvinfra jaoks suure rahvusvahelise kliendi vajadustega. Armastab lugeda ja muusikat kuulata. M\u00e4ngu kohta \u00fctles Aleksandr, et see meeldis talle \u00fcldiselt, talle meeldivad sellised \u00fclesanded. \u00dches ettev\u00f5ttes t\u00f6\u00f6intervjuul tegi ta midagi sarnast Hackerrankiga, see oli huvitav.<\/li>\n<li><b>Teise koha saavutas Roman Suslov.<\/b><br \/>\nRoman elab Moskvas. Tal on 37 aastat. T\u00f6\u00f6tab Linux\/Unix-insenerina ettev\u00f5ttes \u201eInfos\u00fcsteemid Jet\u201c. T\u00f6\u00f6 t\u00f5ttu peab tegelema Linuxi\/Unix-s\u00fcsteemide haldamise ja t\u00f5rkeotsinguga + SANiga. Huvid on mitmekesised: Linux-s\u00fcsteemid, programmeerimine, tagasip\u00f6\u00f6ramine, infotehnoloogia turvalisus, Arduino. M\u00e4ngu kohta m\u00e4rkis Roman, et see meeldis talle \u00fcldiselt. \"Treenisin oma m\u00f5tlemisoskusi natuke ja p\u00f5genesin igava igap\u00e4evase t\u00f6\u00f6 eest. \ud83d\ude42 Sooviks rohkem \u00fclesandeid, sest ei j\u00f5udnud ma veel r\u00fctmi sisse, kui m\u00e4ng juba l\u00f5ppes.\"<\/li>\n<li><b>Kolmas koht \u2014 alex3d.<\/b><br \/>\nAleks elab Moskvas ja tegeleb tarkvaraarendusega. \"Ait\u00e4h v\u00f5istluse eest, oli huvitav oma google-fu oskusi proovile panna.\"<\/li>\n<\/ul>\n<p>\nSamuti on k\u00fcmne parima m\u00e4ngija seas:<\/p>\n<ul>\n<li>Yevgeniy Saldayev<\/li>\n<li>Markel Mohnachevsky<\/li>\n<li>Konstantin Konosov<\/li>\n<li>Pavel Sergeev<\/li>\n<li>Vladimir Bovaev<\/li>\n<li>Ivan Bubnov<\/li>\n<li>Pavlo Klets<\/li>\n<\/ul>\n<p>\nMe m\u00f5istame, et meie \u00fclesannete lahendamiseks on palju v\u00f5imalusi, allpool on kirjas m\u00f5ned v\u00f5imalikud lahendusvariandid. <\/p>\n<h3>1. Esimene etapp <\/h3>\n<p>\nMe nimetasime selle \u201eKas oled t\u00f5esti admin?\u201c kuna \u00fclesanne oli \u00fcsna lihtne \u2014 parandada soe ja mugav teenus.<\/p>\n<h4>1.1. Huvitavad faktid:<\/h4>\n<p>\nKaks m\u00e4ngijat leidsid esimese v\u00f5tme esimeses 15 minutil m\u00e4ngust ja esimese tunni jooksul ilmus kolm liidrit, kes said \u00fclesandega hakkama. <\/p>\n<h4>1.2. \u00dclesanne<\/h4>\n<p>\nSa tulite t\u00f6\u00f6le ettev\u00f5ttesse, kus pikka aega ei olnud korralikku infotehnoloogia spetsialisti. Enne, kui hakata korda looma, tuleb lahendada p\u00f5letav probleem, mis takistab kontori t\u00f6\u00f6d.<\/p>\n<p>Koduabiline t\u00f5ukas mopiga serverikapi toitekaabli. Toide taastati, kuid v\u00e4ga oluline veebileht ei t\u00f6\u00f6ta ikkagi. Veebileht on oluline, kuna ettev\u00f5te ei ole v\u00e4ga mures infotehnoloogia turvalisuse p\u00e4rast ja sellel on peamise lehe avatud kujul peadirektori arvuti administraatori parool.<\/p>\n<p>Hiljuti muudeti parooli, kuid uut ei m\u00e4letata, direktor ei saa t\u00f6\u00f6tada. K\u00e4ivad kuulujutud, et sellel masinal v\u00f5iksid olla ka v\u00f5tmed, mis aitavad meil raamatupidamisdokumentide varukoopia dekr\u00fcpteerimisel.<\/p>\n<p>K\u00f5ik ootavad kiiret lahendust probleemile!<\/p>\n<h4>1.3. Lahendus<\/h4>\n<p>\n1. Esiteks tuleb muuta root parool virtuaalses masinas, et sellele juurde p\u00e4\u00e4seda. K\u00e4ivitamisel m\u00e4rkame, et tegemist on Ubuntu 16.04 Serveriga.<\/p>\n<p>Root parooli l\u00e4htestamiseks taask\u00e4ivitame masina, laadimisel, grub men\u00fc\u00fc kuvamise hetkel, liigume Ubuntu punkti redigeerimise juurde nuppu 'e' kasutades. Redigeerime rida linux, lisades l\u00f5ppu <code>init=\/bin\/bash<\/code>. Laadime Ctrl+x abil ja saame bash'i. \u00dcmbermountime juurt rw, muudame parooli:<\/p>\n<pre><code class=\"bash\">$ mount -o remount,rw \/dev\/mapper\/ubuntu--vg-root\n$ passwd<\/code><\/pre>\n<p>\n\u00c4rge unustage sync'i, taask\u00e4ivitame.<\/p>\n<p>2. Tingimustes on \u00f6eldud, et meie veebiserver ei t\u00f6\u00f6ta, vaatame:<\/p>\n<pre><code class=\"bash\">$ curl localhost\nNot Found\nTehtud URL \/ ei leitud sellel serveril.\nApache\/2.4.18 <\/code><\/pre>\n<p>\nSeega on Apache tegelikult k\u00e4ivitatud, kuid annab 404 koodi. Vaatame konfiguratsiooni:<\/p>\n<pre><code class=\"bash\">$ vim \/etc\/apache2\/sites-enabled\/000-default.conf<\/code><\/pre>\n<p>\nSiin on v\u00f5tme s\u00f5num \u2014 StevenPaulSteveJobs.<\/p>\n<p>Kontrollime teed <code>\/usr\/share\/WordPress<\/code> \u2014 seda ei ole, kuid on olemas <code>\/usr\/share\/wordpress<\/code>. Muudame konfiguratsiooni ja taask\u00e4ivitame apache'i.<\/p>\n<pre><code class=\"bash\">$ systemctl restart apache2<\/code><\/pre>\n<p>\n3. Proovime uuesti, saame vea:<\/p>\n<pre><code class=\"bash\">Warning: mysqli_real_connect(): (HY000\/2002): Connection refused in \/usr\/share\/wordpress\/wp-includes\/wp-db.php on line 1488<\/code><\/pre>\n<p>\nKas andmebaas ei ole k\u00e4ivitunud?<\/p>\n<pre><code class=\"bash\">$ systemctl status mysql\nActive: active (running)<\/code><\/pre>\n<p>\nMilles siis probleem? Tuleb uurida. Selleks tuleb p\u00e4\u00e4seda MySQL'i, kuidas seda teha on kirjeldatud <noindex><a rel=\"nofollow\" href=\"https:\/\/dev.mysql.com\/doc\/refman\/8.0\/en\/resetting-permissions.html\">dokumentatsioon<\/a><\/noindex>. \u00dcks dokumendi punkte soovitab meil lisada valiku <code>skip-grant-tables<\/code> ja <code>\/etc\/mysql\/mysql.conf.d\/mysqld.cnf<\/code>. Siin on samuti v\u00f5tme s\u00f5num \u2014 AugustaAdaKingByron.<\/p>\n<p>Korrigeerime \u00f5igusi kasutajale <code>'wp'@'localhost'<\/code>. K\u00e4ivitame MySQL, teeme selle v\u00f5rgu kaudu k\u00e4ttesaadavaks, kommenteerides konfiguratsioonis valiku <code>skip-networking<\/code>.<\/p>\n<p>4. P\u00e4rast tehtud toiminguid veebiserver k\u00e4ivitub, kuid sait ei t\u00f6\u00f6ta ikkagi, kuna <\/p>\n<pre><code class=\"bash\">Hoiatus: require_once(\\\/usr\\\/share\\\/wordpress\\\/wp-content\\\/themes\\\/twentysixteen\\\/footer.php): voogude avamine eba\u00f5nnestus: Luba keelatud failis\\\/usr\\\/share\\\/wordpress\\\/wp-includes\\\/template.php real 562<\/code><\/pre>\n<p>\nParandame faili \u00f5igused.<\/p>\n<pre><code class=\"bash\">$ chmod 644 \\\/usr\\\/share\\\/wordpress\\\/wp-content\\\/themes\\\/twentysixteen\\\/footer.php\n<\/code><\/pre>\n<p>\nUuendame lehte, siseneme veebisaidile ja leiame v\u00f5tme \u2014 BjarneStroustrup! Oleme leidnud k\u00f5ik kolm v\u00f5tit, meie direktor saab t\u00f6\u00f6tada, de\u0161ifreerisime raamatupidamise failid. K\u00f5ik on \u00f5nnelikud, kuid sul on ees palju t\u00f6\u00f6d infrastruktuuri, varukoopiate ja ettev\u00f5tte turvalisuse loomisega. <\/p>\n<h3>2. Teine etapp<\/h3>\n<p>\nPidi lahendama anal\u00fc\u00fcsi kogumise \u00fclesande. Anal\u00fc\u00fcse armastavad k\u00f5ik \u2014 kes ja kust ning kui palju inimesi k\u00e4ib. M\u00f5tlesime v\u00e4lja olukorra, millega k\u00f5ik insenerid v\u00f5ivad elus mingil moel kokku puutuda.<\/p>\n<h4>2.1. Huvi pakkuvad faktid<\/h4>\n<p>\n\u00dcks meie m\u00e4ngijatest sisestas \u00f5ige v\u00f5tme esimesed 10 minutit m\u00e4ngust, ja esimese tunni jooksul sai meil liider, kes t\u00e4itis \u00fclesande.<\/p>\n<h4>2.2. \u00dclesanne<\/h4>\n<p>\nSa alustasid t\u00f6\u00f6d ettev\u00f5ttes, sulle tulid juhid ja palusid leida, kellele saadeti meilis\u00f5numeid Aafrikast. Pead koostama 21 k\u00f5ige v\u00e4\u00e4rtuslikuma saaja aadressi tipplist. Saaja aadresside esimesed t\u00e4hed on v\u00f5tmed. \u00dcks aga: meiliserver, mille kaudu s\u00f5numid saadeti, ei ole saadaval. K\u00f5ik ootavad operatiivset lahendust!<\/p>\n<h4>2.3. Lahendus<\/h4>\n<p>\n1. Server ei k\u00e4ivitu, kuna fstab-is on mittet\u00e4ielik swap jagunemine, s\u00fcsteem proovib seda k\u00e4ivitada ja crashib. Kuidas k\u00e4ivitada?<\/p>\n<p>Laadime alla ISO-faili, laadisime CentOS 7 ja k\u00e4ivitame Live CD\\\/DVD (Troubleshooting -&gt; Rescue), montime s\u00fcsteemi, teeme parandusi <code>\/etc\/fstab<\/code>. Siit leidsime esimese v\u00f5tme \u2014 GottfriedWilhelm11646Leibniz!<\/p>\n<p>Loome swap:<\/p>\n<pre><code class=\"bash\">$ lvcreate -n swap centos -L 256M\n$ sync &amp;&amp; reboot<\/code><\/pre>\n<p>\n2. Nagu ikka, parooli ei ole, tuleb muuta root parool virtuaalses masinas. Oleme seda juba varasemas \u00fclesandes teinud. Muudame ja siseneme edukalt serverisse, kuid see k\u00e4ivitub kohe uuesti. Server taask\u00e4ivitub nii kiiresti, et ei j\u00f5ua isegi k\u00f5iki logisid p\u00f5hjalikult vaadata. Kuidas m\u00f5ista, mis toimub?<\/p>\n<p>Taas k\u00e4ivitame livecd-ga, uurime hoolikalt s\u00fcsteemi logisid ja igaks juhuks vaatame croni, kuna selline sagedus on. Sealt leidsime probleemi ja teise v\u00f5tme \u2014 Alan1912MathisonTuring!<\/p>\n<p>Peab <code>\/etc\/crontab<\/code> \u00e4ra eemaldama v\u00f5i kommenteerima read <code>echo b &gt; \\\/proc\\\/sysrq-trigger<\/code>.<\/p>\n<p>3. P\u00e4rast seda, kui server on laaditud, saab t\u00e4ita haldurite \u00fclesande: \u201eMillised on Aafrika aadressid?\u201c See teave on \u00fcldiselt avalikult k\u00e4ttesaadav. Seda teavet saab internetis leida fraasidega \u201eip address africa\u201c, \u201egeoip database\u201c. Probleemi lahendamiseks saab kasutada vabalt k\u00e4ttesaadavaid aadressijaotuse andmebaase (geoip). Me kasutasime n\u00e4idisena andmebaasi <noindex><a rel=\"nofollow\" href=\"https:\/\/dev.maxmind.com\/geoip\/geoip2\/geolite2\/\">MaxMind GeoLite2<\/a><\/noindex>, mis on saadaval Creative Commonsi litsentsi Attribution-ShareAlike 4.0 alusel.<\/p>\n<p>Proovime lahendada meie \u00fclesande, kasutades ainult Linuxi s\u00fcsteemik\u00e4ske, kuid sellega saab tegelikult lahendada tohutu hulga erinevaid viise: teksti filtreerimise utiliitide ja erinevates programmeerimiskeeltes kirjutatud skriptide abil.<\/p>\n<p>Alustame, saades e-kirja logidest paarid \u201eIP-saatja \u2014 saaja\u201c <code>\/var\/log\/maillog<\/code> (koostame e-kirjade saajate \u2014 IP saatjate tabeli). Seda saab teha j\u00e4rgmise k\u00e4suga:<\/p>\n<pre><code class=\"bash\">$ cat \/var\/log\/maillog | fgrep -e ' connect from' -e 'status=sent' | sed 's\/[][]\/ \/g' | awk '\/connect from\/ {ip=$11} \/status=sent\/ {print $10\" \"ip}' &gt; log1.txt<\/code><\/pre>\n<p>\nJa enne, kui me j\u00e4tkame Aafrika aadresside andmebaasi koostamist, vaatame k\u00f5ige populaarsemaid IP-aadresse saatjatelt.<\/p>\n<pre><code class=\"bash\">$ cat log1.txt | cut -d' ' -f1 | sort | uniq -c | sort -r | head -n 40\n5206 L2JhbjAbM67GA99jg@mail.ru\n4165 iHKTBkegOQa6fIALq@mail.ru\n3739 nHkcBl7BdgXxijSYD7@mail.ru\n3405 SMAzPJAzbl9vp4hAXo@mail.ru\n3346 xILz6d7P@mail.ru\n<\/code><\/pre>\n<p>\nSelgelt paistavad v\u00e4lja kolm esimest saajat palju kirju. Kui greppida saatjate IP-aadresse, kes saatsid neid top-3 aadressidelt, v\u00f5ib m\u00e4rgata teatud v\u00f5rkude selget \u00fclekaalu:<\/p>\n<pre><code class=\"bash\">$ cat log1.txt | fgrep 'L2JhbjAbM67GA99jg@mail.ru' | cut -d' ' -f2 | sort | cut -d'.' -f1 | uniq -c | sort -r | head\n831 105\n806 41\n782 197\n664 196\n542 154\n503 102\n266 156\n165 45\n150 160\n108 165<\/code><\/pre>\n<p>\nEnamik v\u00f5rkudest 105\/8, 41\/8, 196\/8, 197\/8 on v\u00e4lja antud AFRINIC-ule \u2014 \u00fchele viiest piirkondlikust Interneti-registerist, mis tegeleb Interneti-resursside jaotamisega. AFRINIC jaotab aadressiruumi Aafrika territooriumil. Ja 41\/8 kuulub AFRINIC-ule t\u00e4ielikult.<\/p>\n<pre><code class=\"bash\">https:\/\/www.nic.ru\/whois\/?searchWord=105.0.0.0 \nhttps:\/\/www.nic.ru\/whois\/?searchWord=41.0.0.0\n<\/code><\/pre>\n<p>\nNii, et vastus \u00fclesandele on tegelikult logis endas.<\/p>\n<pre><code class=\"bash\">$ cat log1.txt | fgrep -e '105.' -e '41.' -e '196.' -e '197.' -e '154.' -e '102.' | awk '{print $1}' | sort | uniq -c | sort -r | head -n 21\n4209 L2JhbjAbM67GA99jg@mail.ru\n3313 iHKTBkegOQa6fIALq@mail.ru\n2704 nHkcBl7BdgXxijSYD7@mail.ru\n2215 uvRbp1O@mail.ru\n1774 sPmMsmmFiV@mail.ru\n1448 BtG3aHgQgCKuze2AKuRH@mail.ru\n1233 eQpuuQ2uQdbwRL3@mail.ru\n958 nJT5dpaBZ@mail.ru\n862 ef4WbQiB@mail.ru\n762 dQCqKL6eVminFfH7wLA@mail.ru\n632 ifq6Rd1HxuCQOdO9@mail.ru\n539 cFwm2ssypMmx1sA7@mail.ru\n531 twtTnr4G@mail.ru\n431 TSrczgYASrR11Hs3qCi@mail.ru\n380 o3r3exc3OL@mail.ru\n357 rzmjr2VAHK@mail.ru\n348 vnPr6YjJ3ndw@mail.ru\n312 anOjFXrwOtLP2Rl1Vcz6@mail.ru\n289 dvny5zHmRW8fiT@mail.ru\n282 sgg9jPxFDYvzw8Kr@mail.ru\n274 tKSevzA7GntJ@mail.ru<\/code><\/pre>\n<p>\nSellel etapil saame stringi \u201eLinuxBenedictTorvadst\u201c.<\/p>\n<p>\u00d5ige v\u00f5ti: \u201eLinusBenedictTorvalds\u201c.<\/p>\n<p>Saadud string sisaldab tr\u00fckiviga \u00f5ige v\u00f5ti kolme viimase s\u00fcmboli osas. See on tingitud sellest, et valitud v\u00f5rgud ei ole t\u00e4ielikult eraldatud Aafrika riikidele ja kuidas meili t\u00f5husus IP-aadresside jaotuses meie logides.<\/p>\n<p>Rohke t\u00e4psustamise korral Aafrika riikidele eraldatud suurimate v\u00f5rkude kohta saab t\u00e4pset vastust.<\/p>\n<pre><code class=\"bash\">$ cat log1.txt | fgrep -e' '105.{30..255}. -e' '41. -e' '196.{64..47}. -e' '196.{248..132}. -e' '197.{160..31}. -e' '154.{127..255}. -e' '102.{70..255}. -e' '156.{155..255}. | awk '{print $1}' | sort | uniq -c | sort -r | head -n 21\n3350 L2JhbjAbM67GA99jg@mail.ru\n2662 iHKTBkegOQa6fIALq@mail.ru\n2105 nHkcBl7BdgXxijSYD7@mail.ru\n1724 uvRbp1O@mail.ru\n1376 sPmMsmmFiV@mail.ru\n1092 BtG3aHgQgCKuze2AKuRH@mail.ru\n849 eQpuuQ2uQdbwRL3@mail.ru\n712 nJT5dpaBZ@mail.ru\n584 ef4WbQiB@mail.ru\n463 dQCqKL6eVminFfH7wLA@mail.ru\n365 ifq6Rd1HxuCQOdO9@mail.ru\n269 cFwm2ssypMmx1sA7@mail.ru\n225 twtTnr4G@mail.ru\n168 TSrczgYASrR11Hs3qCi@mail.ru\n142 o3r3exc3OL@mail.ru\n111 rzmjr2VAHK@mail.ru\n 96 vnPr6YjJ3ndw@mail.ru\n 78 anOjFXrwOtLP2Rl1Vcz6@mail.ru\n 56 lHzWiB7ExvRtSbAcU9@mail.ru\n 56 dvny5zHmRW8fiT@mail.ru\n 40 sgg9jPxFDYvzw8Kr@mail.ru<\/code><\/pre>\n<p>\nProbleemi on samuti v\u00f5imalik lahendada teisel viisil.<br \/>\nLaadime alla MaxMind, pakime lahti, ja j\u00e4rgmised kolm k\u00e4sku lahendavad samuti meie probleemi.<\/p>\n<pre><code class=\"bash\">$ cat GeoLite2-Country-Locations-ru.csv | grep \"Aafrika\" | cut -d',' -f1 &gt; africaIds.txt\n$ grep -Ff africaIds.txt GeoLite2-Country-Blocks-IPv4.csv | cut -d',' -f1 &gt; africaNetworks.txt\n$ grepcidr -f africaNetworks.txt log1.txt | cut -d' ' -f1 | sort | uniq -c | sort -r | head -n21\n<\/code><\/pre>\n<p>\nIgal juhul oleme l\u00f5puks statistika kokku lugenud ja juhid said vajalikud andmed oma t\u00f6\u00f6ks! <\/p>\n<h3>3. Kolmas etapp<\/h3>\n<p>\nKolmas etapp sarnaneb mingil m\u00e4\u00e4ral esimesega \u2014 samuti tuleb parandada soe lambipirnil p\u00f5hinev teenus, kuid k\u00f5ik on keerulisem kui esimeses \u00fclesandes.<\/p>\n<h4>3.1. Huvi pakkuvad faktid<\/h4>\n<p>\nEsimese 15 minuti jooksul leidis kolm m\u00e4ngijat esimese v\u00f5tme, kaks tundi ja 20 minutit p\u00e4rast etapi algust lahendas meie v\u00f5itja \u00fclesande.<\/p>\n<h4>3.2. \u00dclesanne<\/h4>\n<p>\nSa hakkasid t\u00f6\u00f6le ettev\u00f5ttes, kus k\u00f5ik ettev\u00f5tte dokumendid on salvestatud sisemisele Wiki-serverile. Eelmisel aastal tellis insener serverisse kolm uut ketast, lisaks \u00fchele olemasolevale, p\u00f5hjendades seda sellega, et s\u00fcsteemi t\u00f6\u00f6kindluse tagamiseks tuleb kettad paigaldada mingitesse massiividesse. Kahjuks, paar n\u00e4dalat p\u00e4rast nende paigaldamist lahkus insener puhkusele Indiasse ja ei naasnud.<\/p>\n<p>M\u00f5ned aastad t\u00f6\u00f6tas server t\u00f5rgeteta, kuid paar p\u00e4eva tagasi h\u00e4kkis ettev\u00f5tte v\u00f5rku. Juhiste p\u00f5hjal eemaldas turvat\u00f6\u00f6tajate meeskond kettad serverist ja saatis need sinu juurde. Transportimise ajal kaotati \u00fcks ketas l\u00f5plikult.<\/p>\n<p>Vaja on taastada Wiki funktsionaalsus, eelk\u00f5ige huvitab sisu wikis. \u00dcks tekstit\u00fckk, mis oli \u00fchel selle wiki lehek\u00fcljest, on 1C serveri parool ja on kiirelt vajalik selle avamiseks.<\/p>\n<p>Lisaks on kuskil wikis v\u00f5i mujal olnud logiserveri ja videovalveserveri paroolid, mille taastamine oleks samuti soovitav, ilma nendeta on juhtumi uurimine v\u00f5imatu. Nagu alati, oodatakse kiiret lahendust!<\/p>\n<h4>3.3. Lahendus<\/h4>\n<p>\n1. Proovime k\u00e4ivituda j\u00e4rgem\u00f6\u00f6da nende ketastega, mis meil on, ja k\u00f5ikjal saame sama s\u00f5numi:<\/p>\n<pre><code class=\"bash\">No bootable medium found! System halted \n<\/code><\/pre>\n<p>\nPeame millegagi k\u00e4ivituma. J\u00e4lle p\u00e4\u00e4stab meid Live CD\/DVD (T\u00f5rkeotsing -&gt; Rescue) k\u00e4ivitamine. K\u00e4ivitamisel proovime leida k\u00e4ivitusosa, kuid ei leia, j\u00f5uame shelli. Proovime uurida, mis ja kuidas ketastega on. On teada, et neid on kolm. Selle jaoks on 7. versioonis CentOS-is rohkem t\u00f6\u00f6riistu, kus on k\u00e4sk <code>blkid<\/code> v\u00f5i <code>lsblk<\/code>, mis n\u00e4itab meile k\u00f5ike teavet ketaste kohta. <\/p>\n<p>Kuidas ja mida teeme:<\/p>\n<pre><code class=\"bash\">$ ls \/dev\/sd*<\/code><\/pre>\n<p>\nKoheselt on n\u00e4ha, et <\/p>\n<pre><code class=\"bash\">\/dev\/sdb1 - ext4\n\/dev\/sdb2 - \u0447\u0430\u0441\u0442\u044c lvm\n\/dev\/sda1 \u0438 \/dev\/sdc1 - \u0447\u0430\u0441\u0442\u0438 \u0440\u0435\u0439\u0434\u0430\n\/dev\/sda2 \u0438 \/dev\/sdc2 - \u043f\u0440\u043e \u043d\u0438\u0445 \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e \u043d\u0430 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442<\/code><\/pre>\n<p>\nM\u00fcntime sdb1, on n\u00e4ha, et see on CentOS 6 k\u00e4ivitusosa.<\/p>\n<pre><code class=\"bash\">$ mkdir \/mnt\/sdb1 &amp;&amp; mount \/dev\/sdb1 \/mnt\/sdb1<\/code><\/pre>\n<p>\nIlmselgelt l\u00e4heme grub ja leiame seal esimese v\u00f5tme - James191955Gosling ebatavalises failis.<\/p>\n<p>2. Uurime pvs ja lvs, kuna t\u00f6\u00f6tame LVM-iga. N\u00e4eme, et peaks olema 2 f\u00fc\u00fcsilist mahutavat, \u00fcks ei leidu jaebildil kaebab kadunud uid \u00fcle. N\u00e4eme, et peaks olema 2 loogilist mahutavat: root ja swap, samas on root osaliselt kadunud (atribuut P mahutites). Eks monteerida ei ole v\u00f5imalik, kahju! See on meile v\u00e4ga vajalik.<\/p>\n<p>On veel 2 kettast, vaatame neid, kogume ja monteerime:<\/p>\n<pre><code class=\"bash\">$ mdadm --examine --verbose --scan\n$ mdadm --assemble --verbose --scan\n$ mkdir \/mnt\/md127 &amp;&amp; mount \/dev\/md127  \/mnt\/md127 <\/code><\/pre>\n<p>\nVaadates, on selge, et see on CentOS 6 k\u00e4ivitusosa ja koopia sellest, mis on juba olemas <code>\/dev\/sdb1<\/code>, ja siin j\u00e4lle sama v\u00f5ti - DennisBMacAlistairCRitchie!<br \/>\nVaadatav, kuidas see kokku pandud on <code>\/dev\/md127<\/code>.<\/p>\n<pre><code class=\"bash\">$ mdadm --detail \/dev\/md127\n<\/code><\/pre>\n<p>\nN\u00e4eme, et see pidi olema kokku pandud neljast kettast, see koosneb kahest <code>\/dev\/sda1<\/code> ja <code>\/dev\/sdc1<\/code>, need pidid olema numbrites 2 ja 4 s\u00fcsteemis. Eeldame, et ka <code>\/dev\/sda2<\/code> ja <code>\/dev\/sdc2<\/code> seda on v\u00f5imalik kokku panna. Pole selge, miks neil pole metainfot, kuid see on adminni s\u00fc\u00fc, kes on kuskil Goa. Eeldame, et siin peaks olema RAID10, kuigi on ka variandid. Paneme kokku: <\/p>\n<pre><code class=\"bash\">$ mdadm --create --verbose \/dev\/md0 --assume-clean --level=10 --raid-devices=4 missing \/dev\/sda2 missing \/dev\/sdc2\n<\/code><\/pre>\n<p>\nVaadates blkid, pvs, lvs. Tuvastame, et oleme kokku pannud f\u00fc\u00fcsilise mahutava, mida meil varem polnud.<\/p>\n<p>Koheselt parandasime lvroot'i, monteerime selle, aga eelnevalt aktiveerime VG:<\/p>\n<pre><code class=\"bash\">$ vgchange -a y\n$ mkdir \/mnt\/lvroot &amp;&amp; mount \/dev\/mapper\/vg_c6m1-lv_root \/mnt\/lvroot \n<\/code><\/pre>\n<p>\nJa seal on k\u00f5ik, sealhulgas v\u00f5tme asukoht, mis on root'i kodu kataloogis \u2014 \/root\/sweet.<\/p>\n<p>3. P\u00fc\u00fcame siiski ellu \u00e4ratada meie serveri, et see korralikult k\u00e4ivitatud saaks. K\u00f5ik loogilised mahud meie <code>\/dev\/md0<\/code> (kus meil k\u00f5ik leidus) liigume \u00fcle <code>\/dev\/sdb2<\/code>, kus algselt kogu server t\u00f6\u00f6tas.<\/p>\n<pre><code class=\"bash\">$ pvmove \/dev\/md0 \/dev\/sdb2\n$ vgreduce vg_c6m1 \/dev\/md0<\/code><\/pre>\n<p>\nK\u00fc\u00fcrime serveri v\u00e4lja, eemaldame 1. ja 3. kettad, j\u00e4tame teise, laadime Live CD\/DVD pealt Rescue re\u017eiimi. Leiame boot-partitsiooni, taastame laadijat grub's:<\/p>\n<pre><code class=\"bash\">root (hd0,0)\nsetup (hd0)\n<\/code><\/pre>\n<p>\nEemaldame boot-ketta ja laadime edukalt sisse, kuid veebileht ei t\u00f6\u00f6ta.<\/p>\n<p>4. Veebilehe k\u00e4ivitamiseks on kaks v\u00f5imalust: seadistada Apache nullist v\u00f5i kasutada eelnevalt seadistatud nginx'i koos php-fpm'iga:<\/p>\n<pre><code class=\"bash\">$ \/etc\/init.d\/nginx start\n$ \/etc\/init.d\/php-fpm start\n<\/code><\/pre>\n<p>\nL\u00f5puks tuleb k\u00e4ivitada MySQL:<\/p>\n<pre><code class=\"bash\">$ \/etc\/init.d\/mysqld start<\/code><\/pre>\n<p>\nSee ei k\u00e4ivitu, ja m\u00f5istatuse lahendus peitub <code>\/var\/log\/mysql<\/code>. Kui lahendate MySQL probleemi, veebileht k\u00e4ivitub, peaees leiate v\u00f5tme \u2014 RichardGCCMatthewGNUStallman! N\u00fc\u00fcd on meil juurdep\u00e4\u00e4s 1C-sse ja t\u00f6\u00f6tajad saavad palku saada. Ja sul on endiselt palju t\u00f6\u00f6d tegemata, et rajada infrastruktuuri ja turvalisuse osas ettev\u00f5ttes korrap\u00e4ra.<\/p>\n<p>Samuti saame veel kord jagada nimekirja raamatutest, mis aitasid meil ja meie osalejatel m\u00e4nguks valmistuda: <noindex><a rel=\"nofollow\" href=\"https:\/\/linux.mail.ru\/books\">linux.mail.ru\/books<\/a><\/noindex>.<\/p>\n<p>Ait\u00e4h, et olite meiega! J\u00e4lgige j\u00e4rgnevate m\u00e4ngude teateid!<br \/>\n<br \/>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/mailru\/blog\/447222\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>25 \u043c\u0430\u0440\u0442\u0430 \u043c\u044b \u043e\u0442\u043a\u0440\u044b\u043b\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044e \u043d\u0430 Linux Quest, \u044d\u0442\u043e \u0418\u0433\u0440\u0430 \u0434\u043b\u044f \u043b\u044e\u0431\u0438\u0442\u0435\u043b\u0435\u0439 \u0438 \u0437\u043d\u0430\u0442\u043e\u043a\u043e\u0432 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b Linux. \u041d\u0435\u043c\u043d\u043e\u0433\u043e \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0438: \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043b\u043e\u0441\u044c \u043d\u0430 \u0438\u0433\u0440\u0443 1117 \u0447\u0435\u043b\u043e\u0432\u0435\u043a, \u0438\u0437 \u043d\u0438\u0445 317 \u2014 \u043d\u0430\u0448\u043b\u0438 \u0445\u043e\u0442\u044f \u0431\u044b \u043e\u0434\u0438\u043d \u043a\u043b\u044e\u0447, 241 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0441\u043f\u0440\u0430\u0432\u0438\u043b\u0438\u0441\u044c \u0441 \u0437\u0430\u0434\u0430\u043d\u0438\u0435\u043c \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u044d\u0442\u0430\u043f\u0430, 123 \u2014 \u0432\u0442\u043e\u0440\u043e\u0433\u043e \u0438 70 \u043f\u0440\u043e\u0448\u043b\u0438 \u0442\u0440\u0435\u0442\u0438\u0439 \u044d\u0442\u0430\u043f. \u0421\u0435\u0433\u043e\u0434\u043d\u044f \u043d\u0430\u0448\u0430 \u0438\u0433\u0440\u0430 \u043f\u043e\u0434\u043e\u0448\u043b\u0430 \u043a \u043a\u043e\u043d\u0446\u0443, \u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":23206,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-31240","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/linux-quest-pozdravlyaem-pobeditelej-i-rasskazyvaem-pro-resheniya-zadanij\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Linux Quest. \u041f\u043e\u0437\u0434\u0440\u0430\u0432\u043b\u044f\u0435\u043c \u043f\u043e\u0431\u0435\u0434\u0438\u0442\u0435\u043b\u0435\u0439 \u0438 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u043f\u0440\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u043d\u0438\u0439 | ProHoster\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/linux-quest-pozdravlyaem-pobeditelej-i-rasskazyvaem-pro-resheniya-zadanij\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:40:13+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:40:13+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Linux Quest. Palju \u00f5nne v\u00f5itjatele ja r\u00e4\u00e4gime lahendustest | ProHoster","description":"","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/linux-quest-pozdravlyaem-pobeditelej-i-rasskazyvaem-pro-resheniya-zadanij","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Linux Quest. \u041f\u043e\u0437\u0434\u0440\u0430\u0432\u043b\u044f\u0435\u043c \u043f\u043e\u0431\u0435\u0434\u0438\u0442\u0435\u043b\u0435\u0439 \u0438 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u043f\u0440\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u043d\u0438\u0439 | ProHoster","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/linux-quest-pozdravlyaem-pobeditelej-i-rasskazyvaem-pro-resheniya-zadanij","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:40:13+00:00","article:modified_time":"2019-10-31T18:40:13+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"31240","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 05:12:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 03:20:31","updated":"2026-01-21 05:12:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/31240","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=31240"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/31240\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/23206"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=31240"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=31240"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=31240"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}