{"id":36984,"date":"2019-10-31T22:15:09","date_gmt":"2019-10-31T19:15:09","guid":{"rendered":"https:\/\/prohoster.info\/blog\/koe-chto-ob-inode\/"},"modified":"2019-10-31T22:15:09","modified_gmt":"2019-10-31T19:15:09","slug":"koe-chto-ob-inode","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/koe-chto-ob-inode","title":{"rendered":"Midagi inode'ist","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Aeg-ajalt, et \u00fcleviimine CRSi, olen intervjueerinud erinevates suurtes ettev\u00f5tetes, peamiselt Peterburis ja Moskvas, DevOps ametikoha peale. Olen t\u00e4hele pannud, et paljudes ettev\u00f5tetes (paljudes heades ettev\u00f5tetes, n\u00e4iteks Yandexis) esitatakse kaks sarnast k\u00fcsimust:<\/p>\n<ul>\n<li> mis on inode;<\/li>\n<li> millistel p\u00f5hjustel v\u00f5ib tekkida viga ketta kirjutamisel (v\u00f5i n\u00e4iteks: miks v\u00f5ib ketas t\u00e4is saada, sisu on sama).\n<\/li>\n<\/ul>\n<p>\nNagu sageli juhtub, olin kindel, et teema on mul h\u00e4sti selge, kuid kui hakkasin selgitama, siis ilmnesid teadmisteaugud. Et oma teadmisi s\u00fcsteemsemalt korraldada, l\u00fcnkasid t\u00e4ita ja enam mitte piinlikkust tunda, kirjutan selle artikli, ehk on see kellelegi veel kasulik.<\/p>\n<p>Alustan \u201ealt\u201c, st k\u00f5vakettast (v\u00e4ikesed m\u00e4lupulgad, SSD ja muud kaasaegsed vidinad j\u00e4etakse k\u00f5rvale, vaatleme igasugust 20 v\u00f5i 80 gigabaidist vana ketast, kuna seal on ploki suurus 512 baiti).<\/p>\n<p>K\u00f5vaketas ei oska adresseerida oma ruumi baitide kaupa, see on tinglikult jagatud plokkideks. Plokkide nummerdamine algab 0-st. (seda nimetatakse LBA-ks, detailid siin: <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/LBA\">ru.wikipedia.org\/wiki\/LBA<\/a><\/noindex>)<\/p>\n<p><img decoding=\"async\" alt=\"Midagi inode&#039;ist\" src=\"\/wp-content\/uploads\/2019\/08\/47036dc7ec2ed8c868fa1bcf044ba9ea.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nNagu jooniselt n\u00e4ha, olen LBA plokid t\u00e4histanud kui HDD taset. Muide, vaadata, milline on teie ketta ploki suurus, saab niimoodi: <\/p>\n<pre><code class=\"bash\">root@ubuntu:\/home\/serp# blockdev --getpbsz \/dev\/sdb\n512<\/code><\/pre>\n<p>\n\u00dche taseme v\u00f5rra k\u00f5rgem on osakond, \u00fcks tervele kettale (taas lihtsuse huvides). K\u00f5ige sagedamini kasutatakse kaht t\u00fc\u00fcpi partitsioonihaldust: msdos ja gpt. Seega msdos on vana formaat, mis toetab kettasid kuni 2Tb, gpt on uus formaat, mis suudab adresseerida kuni 1 zettabaidi 512 baitiste plokkide. Meie juhul on osakonna t\u00fc\u00fcp msdos, nagu jooniselt n\u00e4ha, osakond algab ploki nr 1-st, nullkasutatakse aga MBR jaoks.<\/p>\n<p>Esimeses osas l\u00f5in failis\u00fcsteemi ext2, mille ploki suurus on vaikimisi 4096 baiti, nagu jooniselt n\u00e4ha. Failis\u00fcsteemi ploki suurust saab vaadata niimoodi:<\/p>\n<pre><code class=\"bash\">root@ubuntu:\/home\/serp# tune2fs -l \/dev\/sdb1\ntune2fs 1.42.9 (4-Feb-2014)\nFilesystem volume name:   \nLast mounted on:          \nFilesystem UUID:          a600bf40-f660-41f6-a3e6-96c303995479\nFilesystem magic number:  0xEF53\nFilesystem revision #:    1 (dynamic)\nFilesystem features:      ext_attr resize_inode dir_index filetype sparse_super large_file\nFilesystem flags:         signed_directory_hash\nDefault mount options:    user_xattr acl\nFilesystem state:         clean\nErrors behavior:          Continue\nFilesystem OS type:       Linux\nInode count:              65536\nBlock count:              261888\nReserved block count:     13094\nFree blocks:              257445\nFree inodes:              65525\nFirst block:              0\nBlock size:               4096\nFragment size:            4096\nReserved GDT blocks:      63\nBlocks per group:         32768\nFragments per group:      32768\nInodes per group:         8192\nInode blocks per group:   512\nFilesystem created:       Fri Aug  2 15:02:13 2019\nLast mount time:          n\/a\nLast write time:          Fri Aug  2 15:02:14 2019\nMount count:              0\nMaximum mount count:      -1\nLast checked:             Fri Aug  2 15:02:13 2019\nCheck interval:           0 ()\nReserved blocks uid:      0 (user root)\nReserved blocks gid:      0 (group root)\nFirst inode:              11\nInode size:               256\nRequired extra isize:     28\nDesired extra isize:      28\nDefault directory hash:   half_md4\nDirectory Hash Seed:      c0155456-ad7d-421f-afd1-c898746ccd76<\/code><\/pre>\n<p>\nMeile vajalik parameeter on \"Block size.\"<\/p>\n<p>N\u00fc\u00fcd on k\u00f5ige huvitavam, kuidas lugeda faili \/home\/serp\/testfile? Fail koosneb \u00fche v\u00f5i mitme failis\u00fcsteemi blokist, kus on talletatud selle andmed. Teades faili nime, kuidas seda leida? Milliseid blokke lugeda?<\/p>\n<p>Siin tulevadki abiks inode'id. Failis\u00fcsteemil ext2fs on \"tabel\", kus on teave k\u00f5igi inode'ide kohta. Inode'ide arvu m\u00e4\u00e4rab ext2fs-i loomisel failis\u00fcsteem. Vajalikke arve vaatame parametrist \"Inode count\" tune2fs v\u00e4ljundis, st meil on 65536 t\u00fckki. Inode'ides on vajalik teave: failis\u00fcsteemi blokkide loetelu otsitava faili jaoks. Kuidas leida antud faili inode'i number?<\/p>\n<p>Nime ja inode'i numberi vastavust hoitakse kataloogis ning kataloog ext2fs-is on erilise t\u00fc\u00fcbi fail, st tal on samuti oma inode'i number. Selle n\u00f5iaringi katkestamiseks m\u00e4\u00e4rati juurkataloogile \u201efikseeritud\u201c inode'i number \u201e2\u201c. Vaatame inode'i sisu numbriga 2:<\/p>\n<pre><code class=\"bash\">root@ubuntu:\/# debugfs \/dev\/sdb1\ndebugfs 1.42.9 (4-Feb-2014)\ndebugfs:  stat \n\nInode: 2   Type: directory    Mode:  0755   Flags: 0x0\nGeneration: 0    Version: 0x00000000:00000002\nUser:     0   Group:     0   Size: 4096\nFile ACL: 0    Directory ACL: 0\nLinks: 3   Blockcount: 8\nFragment:  Address: 0    Number: 0    Size: 0\n ctime: 0x5d43cb51:16b61bcc -- Fri Aug  2 16:34:09 2019\n atime: 0x5d43c247:b704301c -- Fri Aug  2 15:55:35 2019\n mtime: 0x5d43cb51:16b61bcc -- Fri Aug  2 16:34:09 2019\ncrtime: 0x5d43b5c6:00000000 -- Fri Aug  2 15:02:14 2019\nSize of extra inode fields: 28\nBLOCKS:\n(0):579\nTOTAL: 1<\/code><\/pre>\n<p>\nNagu n\u00e4ha, sisaldub vajalik kaust plokis number 579. Sealt leiame kausta home nodenumbri ja j\u00e4tkame j\u00e4rjestust, kuni kataloogis serp n\u00e4eme n\u00f5utud faili nodenumbrit. Kui keegi soovib kontrollida, kas number on \u00f5ige ja kas seal on vajalik teave, pole see keeruline. Teeme:<\/p>\n<pre><code class=\"bash\">root@ubuntu:~# dd if=\/dev\/sdb1 of=\/home\/serp\/dd_image bs=4096 count=1 skip=579\n1+0 records in\n1+0 records out\n4096 bytes (4.1 kB) copied, 0.000184088 s, 22.3 MB\/s\nroot@ubuntu:~# hexdump -c \/home\/serp\/dd_image<\/code><\/pre>\n<p>\nV\u00e4ljundist v\u00f5ib lugeda kaustade nimesid.<\/p>\n<p>N\u00fc\u00fcd olen l\u00e4henenud peamisele k\u00fcsimusele: \u201eMillistel p\u00f5hjustel v\u00f5ib tekkida kirjutamisviga\u201c?<\/p>\n<p>Loomulikult juhtub see siis, kui failis\u00fcsteemis ei j\u00e4\u00e4 vabu blokke. Mida saab sel juhul teha? Peale k\u00f5ige ilmsema \u201ekustuta midagi mittevajalikku\u201c, tasub meeles pidada, et failis\u00fcsteemides ext2, 3 ja 4 on selline asi nagu \u201eReserved block count\u201c. Kui vaadata eelnevat nimekirja, siis on meil neid blokee \u201e13094\u201c. Need blokid on kirjutamiseks saadaval ainult kasutajale root. Kuid kui on vaja k\u00fcsimus kiiresti lahendada, siis saab ajutiselt teha need k\u00f5ikidele k\u00e4ttesaadavaks, mille tulemusena ilmub veidi vaba ruumi:<\/p>\n<pre><code class=\"bash\">root@ubuntu:\/mnt# tune2fs -m 0 \/dev\/sdb1\ntune2fs 1.42.9 (4-Feb-2014)\nSeades reserveeritud blokki protsendi 0% (0 blokki)<\/code><\/pre>\n<p>\nSee t\u00e4hendab, et vaikimisi on teil kirjutamiseks k\u00e4ttesaadavad 5% ketasruumist, ja arvestades kaasaegsete ketaste mahtu, v\u00f5ivad need olla sada gigabaytti.<\/p>\n<p>Mis veel v\u00f5ib juhtuda? Veel on v\u00f5imalik olukord, kus vabad blokid on olemas, kuid nodid on otsas. See juhtub tavaliselt siis, kui teie failis\u00fcsteemis on palju faile, mis on v\u00e4iksemad kui failis\u00fcsteemi bloki suurus. Arvestades, et iga faili v\u00f5i kausta puhul kulub 1 inode ja kokku on need (antud failis\u00fcsteemi jaoks) 65536 \u2014 olukord on enam kui reaalne. Selgelt on seda n\u00e4ha k\u00e4sku df k\u00e4itades:<\/p>\n<pre><code class=\"bash\">serp@ubuntu:~$ df -hi\nFilesystem     Inodes IUsed IFree IUse% Mounted on\nudev             493K   480  492K    1% \/dev\ntmpfs            493K   425  493K    1% \/run\n\/dev\/xvda1       512K  240K  273K   47% \/\nnone             493K     2  493K    1% \/sys\/fs\/cgroup\nnone             493K     2  493K    1% \/run\/lock\nnone             493K     1  493K    1% \/run\/shm\nnone             493K     2  493K    1% \/run\/user\n\/dev\/xvdc1       320K  4,1K  316K    2% \/var\n\/dev\/xvdb1        64K   195   64K    1% \/home\n\/dev\/xvdh1       4,0M  3,1M  940K   78% \/var\/www\nserp@ubuntu:~$ df -h\nFilesystem      Size  Used Avail Use% Mounted on\nudev            2,0G  4,0K  2,0G   1% \/dev\ntmpfs           395M  620K  394M   1% \/run\n\/dev\/xvda1      7,8G  2,9G  4,6G  39% \/\nnone            4,0K     0  4,0K   0% \/sys\/fs\/cgroup\nnone            5,0M     0  5,0M   0% \/run\/lock\nnone            2,0G     0  2,0G   0% \/run\/shm\nnone            100M     0  100M   0% \/run\/user\n\/dev\/xvdc1      4,8G  2,6G  2,0G  57% \/var\n\/dev\/xvdb1      990M  4,0M  919M   1% \/home\n\/dev\/xvdh1       63G   35G   25G  59% \/var\/www<\/code><\/pre>\n<p>\nNagu h\u00e4sti on m\u00e4rgata jaotises \/var\/www, on failis\u00fcsteemi vabad blokeerimise numbrid ja vabad noodid tugevalt erinevad.<\/p>\n<p>Kui inode'id peaksid otsa l\u00f5ppema, ei oska ma juhendada, kuna neid pole (kui ma eksin, andke teada). Seega, jaotistes, kus luuakse v\u00e4ikeseid faile, tuleb failis\u00fcsteemi valimisel olla hoolikas. N\u00e4iteks btrfs puhul ei saa inode'id otsa l\u00f5ppeda, kuna neid luuakse vajadusel d\u00fcnaamiliselt.<br \/>\n<br \/>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/462849\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438, \u0441 \u0446\u0435\u043b\u044c\u044e \u043f\u0435\u0440\u0435\u0435\u0437\u0434\u0430 \u0432 \u0426\u0420\u0421 \u0441\u043e\u0431\u0435\u0441\u0435\u0434\u0443\u044e\u0441\u044c \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u043a\u0440\u0443\u043f\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f\u0445, \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u041f\u0438\u0442\u0435\u0440\u0430 \u0438 \u041c\u043e\u0441\u043a\u0432\u044b \u043d\u0430 \u0434\u043e\u043b\u0436\u043d\u043e\u0441\u0442\u044c DevOps. \u041e\u0431\u0440\u0430\u0442\u0438\u043b \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0432\u043e \u043c\u043d\u043e\u0433\u0438\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f\u0445 (\u0432\u043e \u043c\u043d\u043e\u0433\u0438\u0445 \u0445\u043e\u0440\u043e\u0448\u0438\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f\u0445, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0432 \u044f\u043d\u0434\u0435\u043a\u0441\u0435) \u0437\u0430\u0434\u0430\u044e\u0442 \u0434\u0432\u0430 \u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u0432\u043e\u043f\u0440\u043e\u0441\u0430: \u0447\u0442\u043e \u0442\u0430\u043a\u043e\u0435 inode; \u043f\u043e \u043a\u0430\u043a\u0438\u043c \u043f\u0440\u0438\u0447\u0438\u043d\u0430\u043c \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043e\u0448\u0438\u0431\u043a\u0443 \u0437\u0430\u043f\u0438\u0441\u0438 \u043d\u0430 \u0434\u0438\u0441\u043a (\u0438\u043b\u0438 \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440: \u043f\u043e\u0447\u0435\u043c\u0443 \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u0442\u044c\u0441\u044f \u043c\u0435\u0441\u0442\u043e \u043d\u0430 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":27717,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-36984","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=\"description\" content=\"\u041f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438, \u0441 \u0446\u0435\u043b\u044c\u044e \u043f\u0435\u0440\u0435\u0435\u0437\u0434\u0430 \u0432 \u0426\u0420\u0421 \u0441\u043e\u0431\u0435\u0441\u0435\u0434\u0443\u044e\u0441\u044c \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u043a\u0440\u0443\u043f\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f\u0445, \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u041f\u0438\u0442\u0435\u0440\u0430 \u0438 \u041c\u043e\u0441\u043a\u0432\u044b \u043d\u0430 \u0434\u043e\u043b\u0436\u043d\u043e\u0441\u0442\u044c DevOps.\" \/>\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\/koe-chto-ob-inode\" \/>\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\udd47\u041a\u043e\u0435-\u0447\u0442\u043e \u043e\u0431 inode | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438, \u0441 \u0446\u0435\u043b\u044c\u044e \u043f\u0435\u0440\u0435\u0435\u0437\u0434\u0430 \u0432 \u0426\u0420\u0421 \u0441\u043e\u0431\u0435\u0441\u0435\u0434\u0443\u044e\u0441\u044c \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u043a\u0440\u0443\u043f\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f\u0445, \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u041f\u0438\u0442\u0435\u0440\u0430 \u0438 \u041c\u043e\u0441\u043a\u0432\u044b \u043d\u0430 \u0434\u043e\u043b\u0436\u043d\u043e\u0441\u0442\u044c DevOps.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/koe-chto-ob-inode\" \/>\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-31T19:15:09+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:15:09+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\udd47M\u00f5ned faktid inode'ide kohta | ProHoster","description":"Kperiodiliselt, et kolida CRSi, vestlen erinevates suurtes ettev\u00f5tetes, peamiselt Peterburis ja Moskvas DevOpsi ametikohtadele.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/koe-chto-ob-inode","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\udd47\u041a\u043e\u0435-\u0447\u0442\u043e \u043e\u0431 inode | ProHoster","og:description":"\u041f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438, \u0441 \u0446\u0435\u043b\u044c\u044e \u043f\u0435\u0440\u0435\u0435\u0437\u0434\u0430 \u0432 \u0426\u0420\u0421 \u0441\u043e\u0431\u0435\u0441\u0435\u0434\u0443\u044e\u0441\u044c \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u043a\u0440\u0443\u043f\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f\u0445, \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u041f\u0438\u0442\u0435\u0440\u0430 \u0438 \u041c\u043e\u0441\u043a\u0432\u044b \u043d\u0430 \u0434\u043e\u043b\u0436\u043d\u043e\u0441\u0442\u044c DevOps.","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/koe-chto-ob-inode","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-31T19:15:09+00:00","article:modified_time":"2019-10-31T19:15:09+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"36984","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-22 05:38:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:35:27","updated":"2026-01-22 05:38: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\/36984","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=36984"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/36984\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/27717"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=36984"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=36984"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=36984"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}