{"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\/es\/blog\/administrirovanie\/koe-chto-ob-inode","title":{"rendered":"Algo sobre inode","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Peri\u00f3dicamente, con el fin de mudarme al CRS, me entrevisto en diferentes grandes empresas, principalmente de San Petersburgo y Mosc\u00fa, para el puesto de DevOps. He notado que en muchas compa\u00f1\u00edas (en muchas buenas empresas, como Yandex) se hacen dos preguntas similares:<\/p>\n<ul>\n<li> \u00bfQu\u00e9 es un inode?<\/li>\n<li> \u00bfPor qu\u00e9 se puede obtener un error al escribir en el disco (o, por ejemplo: \u00bfpor qu\u00e9 puede terminarse el espacio en el disco? La esencia es la misma).\n<\/li>\n<\/ul>\n<p>\nComo suele suceder, estaba seguro de que conoc\u00eda bien este tema, pero tan pronto como empec\u00e9 a explicar, comenzaron a aparecer lagunas en mi conocimiento. Para sistematizar mis conocimientos, llenar los vac\u00edos y no avergonzarme m\u00e1s, escribo este art\u00edculo, tal vez le sirva a alguien m\u00e1s.<\/p>\n<p>Comenzar\u00e9 \"desde abajo\", es decir, desde el disco duro (ignoraremos unidades flash, SSD y otras cosas modernas; tomemos como ejemplo cualquier disco viejo de 20 o 80 GB, ya que all\u00ed el tama\u00f1o del bloque es de 512 bytes).<\/p>\n<p>El disco duro no puede dirigirse a su espacio byte por byte; en t\u00e9rminos generales, est\u00e1 dividido en bloques. La numeraci\u00f3n de los bloques comienza desde 0. (esto se llama LBA, los detalles aqu\u00ed: <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=\"Algo sobre inode\" 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 \/>\nComo se puede ver en la imagen, los bloques LBA los he etiquetado como el nivel HDD. Por cierto, para ver cu\u00e1l es el tama\u00f1o del bloque de su disco, puede hacerlo as\u00ed: <\/p>\n<pre><code class=\"bash\">root@ubuntu:\/home\/serp# blockdev --getpbsz \/dev\/sdb\n512<\/code><\/pre>\n<p>\nEl nivel superior est\u00e1 marcado como partici\u00f3n, una para todo el disco (de nuevo, por simplicidad). La mayor\u00eda de las veces se usan dos tipos de particiones: msdos y gpt. Por lo tanto, msdos es el formato antiguo, que admite discos de hasta 2Tb, gpt es el nuevo formato que puede dirigir hasta 1 zettabyte de bloques de 512 bytes. En nuestro caso, tenemos una partici\u00f3n del tipo msdos, como se puede ver en la imagen, la partici\u00f3n comienza en el bloque \u21161, el bloque cero se utiliza para el MBR.<\/p>\n<p>En la primera partici\u00f3n, cre\u00e9 un sistema de archivos ext2, cuyo tama\u00f1o de bloque por defecto es de 4096 bytes, lo cual tambi\u00e9n se refleja en la imagen. Para ver el tama\u00f1o del bloque del sistema de archivos, puede hacerlo as\u00ed:<\/p>\n<pre><code class=\"bash\">root@ubuntu:\/home\/serp# tune2fs -l \/dev\/sdb1\ntune2fs 1.42.9 (4-feb-2014)\nNombre del volumen del sistema de archivos:   \n\u00daltimo montado en:          \nUUID del sistema de archivos:          a600bf40-f660-41f6-a3e6-96c303995479\nN\u00famero m\u00e1gico del sistema de archivos:  0xEF53\nRevisi\u00f3n del sistema de archivos #:    1 (din\u00e1mico)\nCaracter\u00edsticas del sistema de archivos:      ext_attr resize_inode dir_index filetype sparse_super large_file\nBanderas del sistema de archivos:         signed_directory_hash\nOpciones de montaje predeterminadas:    user_xattr acl\nEstado del sistema de archivos:         limpio\nComportamiento ante errores:          Continuar\nTipo de sistema operativo del sistema de archivos:       Linux\nCantidad de inodos:              65536\nCantidad de bloques:              261888\nCantidad de bloques reservados:     13094\nBloques libres:              257445\nInodes libres:              65525\nPrimer bloque:              0\nTama\u00f1o del bloque:               4096\nTama\u00f1o del fragmento:            4096\nBloques GDT reservados:      63\nBloques por grupo:         32768\nFragmentos por grupo:      32768\nInodes por grupo:         8192\nBloques de inodes por grupo:   512\nSistema de archivos creado:       Vie Ago  2 15:02:13 2019\n\u00daltima vez montado:          n\/a\n\u00daltima vez escrito:          Vie Ago  2 15:02:14 2019\nCantidad de montajes:              0\nM\u00e1xima cantidad de montajes:      -1\n\u00daltima verificaci\u00f3n:             Vie Ago  2 15:02:13 2019\nIntervalo de verificaci\u00f3n:           0 ()\nUID de bloques reservados:      0 (usuario root)\nGID de bloques reservados:      0 (grupo root)\nPrimer inode:              11\nTama\u00f1o de inode:               256\nTama\u00f1o extra requerido:     28\nTama\u00f1o extra deseado:      28\nHash de directorio predeterminado:   half_md4\nSemilla del hash de directorio:      c0155456-ad7d-421f-afd1-c898746ccd76<\/code><\/pre>\n<p>\nEl par\u00e1metro que necesitamos es \"Tama\u00f1o del bloque\".<\/p>\n<p>Ahora lo interesante, \u00bfc\u00f3mo leer el archivo \/home\/serp\/testfile? El archivo consta de uno o varios bloques del sistema de archivos, donde se almacenan sus datos. Sabiendo el nombre del archivo, \u00bfc\u00f3mo encontrarlo? \u00bfQu\u00e9 bloques leer?<\/p>\n<p>Aqu\u00ed es donde nos resultan \u00fatiles los inodes. En el sistema de archivos ext2fs hay una \"tabla\" que contiene informaci\u00f3n sobre todos los inodes. La cantidad de inodes en el caso de ext2fs se establece al crear el sistema de archivos. Los n\u00fameros necesarios se observan en el par\u00e1metro \"Cantidad de inodos\" de la salida de tune2fs, es decir, tenemos 65536. En el inode se almacena la informaci\u00f3n que necesitamos: la lista de bloques del sistema de archivos para el archivo buscado. \u00bfC\u00f3mo encontrar el n\u00famero de inode para el archivo especificado?<\/p>\n<p>La correspondencia entre el nombre y el n\u00famero de inode se encuentra en el directorio, y un directorio en ext2fs es un archivo de tipo especial, es decir, tambi\u00e9n tiene su propio n\u00famero de inode. Para romper este c\u00edrculo vicioso, se asign\u00f3 un n\u00famero de inode \"fijo\" de 2 a el directorio ra\u00edz. Veamos el contenido del inode n\u00famero 2:<\/p>\n<pre><code class=\"bash\">root@ubuntu:\/# debugfs \/dev\/sdb1\ndebugfs 1.42.9 (4-feb-2014)\ndebugfs:  stat \n\nInode: 2   Tipo: directorio    Modo:  0755   Banderas: 0x0\nGeneraci\u00f3n: 0    Versi\u00f3n: 0x00000000:00000002\nUsuario:     0   Grupo:     0   Tama\u00f1o: 4096\nACL de archivo: 0    ACL de directorio: 0\nEnlaces: 3   Conteo de bloques: 8\nFragmento:  Direcci\u00f3n: 0    N\u00famero: 0    Tama\u00f1o: 0\nctime: 0x5d43cb51:16b61bcc -- Vie Ago  2 16:34:09 2019\n atime: 0x5d43c247:b704301c -- Vie Ago  2 15:55:35 2019\n mtime: 0x5d43cb51:16b61bcc -- Vie Ago  2 16:34:09 2019\ncrtime: 0x5d43b5c6:00000000 -- Vie Ago  2 15:02:14 2019\nTama\u00f1o de campos extras de inode: 28\nBLOQUES:\n(0):579\nTOTAL: 1<\/code><\/pre>\n<p>\nComo se puede ver, el directorio que necesitamos se encuentra en el bloque n\u00famero 579. All\u00ed encontraremos el n\u00famero del nodo para la carpeta home, y as\u00ed sucesivamente en la cadena, hasta que en el directorio serp veamos el n\u00famero del nodo para el archivo solicitado. Si alguien quisiera verificar si el n\u00famero es correcto y si all\u00ed hay informaci\u00f3n necesaria, no es complicado. Hacemos:<\/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 registros en\n1+0 registros fuera\n4096 bytes (4,1 kB) copiados, 0,000184088 s, 22,3 MB\/s\nroot@ubuntu:~# hexdump -c \/home\/serp\/dd_image<\/code><\/pre>\n<p>\nEn la salida se pueden leer los nombres de los archivos en el directorio.<\/p>\n<p>Aqu\u00ed estoy, llegando a la pregunta principal: \"\u00bfpor qu\u00e9 puede ocurrir un error de escritura\"?<\/p>\n<p>Naturalmente, esto suceder\u00e1 si no quedan bloques libres en el sistema de archivos. \u00bfQu\u00e9 se puede hacer en este caso? Adem\u00e1s de la obvia idea de \"eliminar algo innecesario\", hay que recordar que en los sistemas de archivos ext2, 3 y 4 hay algo llamado \"Reserved block count\". Si miramos el listado anterior, tenemos esos bloques \"13094\". Estos bloques son accesibles para escritura solo para el usuario root. Pero si es necesario resolver el problema r\u00e1pidamente, como soluci\u00f3n temporal se pueden hacer accesibles para todos, lo que resultar\u00e1 en un poco de espacio libre:<\/p>\n<pre><code class=\"bash\">root@ubuntu:\/mnt# tune2fs -m 0 \/dev\/sdb1\ntune2fs 1.42.9 (4-Feb-2014)\nEstableciendo el porcentaje de bloques reservados a 0% (0 bloques)<\/code><\/pre>\n<p>\nEs decir, por defecto, no tiene disponible para escritura el 5% del espacio en disco, y considerando el tama\u00f1o de los discos modernos, esto puede ser cientos de gigabytes.<\/p>\n<p>\u00bfQu\u00e9 m\u00e1s puede haber? Tambi\u00e9n puede suceder que haya bloques libres, pero se hayan acabado los nodos. Esto ocurre generalmente si tienes en el sistema de archivos un mont\u00f3n de archivos de tama\u00f1o menor al tama\u00f1o del bloque del sistema de archivos. Considerando que se gasta 1 inode por archivo o directorio, y que en total tenemos (para este sistema de archivos) 65536 \u2014 la situaci\u00f3n es m\u00e1s que real. Esto se puede ver claramente en la salida del comando df:<\/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>\nComo se puede ver claramente en la secci\u00f3n \\\/var\\\/www, la cantidad de bloques libres del sistema de archivos y la cantidad de nodos libres difieren considerablemente.<\/p>\n<p>En caso de que se agoten los inode, no puedo sugerir conjuros, ya que no hay (si me equivoco, h\u00e1zmelo saber). Por lo tanto, para las secciones donde se generan muchos archivos peque\u00f1os, es importante elegir el sistema de archivos adecuadamente. Por ejemplo, en btrfs, los inode no pueden agotarse, ya que se crean din\u00e1micamente cuando es necesario.<br \/>\n<br \/>Fuente: <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.2 - 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\/es\/blog\/administrirovanie\/koe-chto-ob-inode\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\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\/es\/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\udd47Algo sobre inode | ProHoster","description":"Peri\u00f3dicamente, con el fin de mudarme a un CRR, tengo entrevistas en diferentes grandes empresas, principalmente de San Petersburgo y Mosc\u00fa para el puesto de DevOps.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/koe-chto-ob-inode","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","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\/es\/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\/es\/wp-json\/wp\/v2\/posts\/36984","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=36984"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/36984\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/27717"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=36984"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=36984"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=36984"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}