Outro artigo sobre como criar um servidor de mídia doméstico
No Giktayms, mais de uma vez, e não foram publicados dois artigos sobre a montagem do seu NAS / servidor de mídia / decodificador e afins, de comichão e mãos relativamente diretas. Para quem gosta dessa masturbação, ou planeja fazer isso sozinho, abaixo está outra variação sobre esse tópico.
Tudo começou há 26 anos, alguns meses atrás, quando uma pausa clara começou a aparecer no trabalho, e o nível de solução de problemas técnicos no sangue começou a cair um pouco. Eu queria pegar algo com as mãos e a cabeça. Como iniciar reparos no apartamento na véspera do inverno não é uma idéia muito boa, mas geralmente cara, a escolha recaiu em algo não tão global. Em particular, à unidade de sistema conectada à TV na sala de estar, costumava assistir filmes / programas de TV locais, torrent, armazenar montes de discos rígidos com "informações muito úteis" e o mais importante - uma coleção de músicas e uma base de dados de uma Internet não tão legal bibliotecas.Sim Sim Sim. Como alguém disse:Senhora, sou um pirata velho e não conheço as palavras do contrato de licença.
A decisão foi tomada: quero me livrar da grande caixa barulhenta que vibra com vários discos rígidos e substituir o modelo de controle do mouse e teclado por algo como um controle remoto ou smartphone. Além disso, ao longo do caminho, seria bom organizar o acesso a uma coleção de músicas do mundo exterior com a capacidade de ouvir de qualquer lugar.Nas melhores tradições de gerenciamento de tempo, estabelecemos uma lista de objetivos que queremos alcançar:Ferro:- Precisa de um corpo compacto
- Em que você pode amontoar muitos discos rígidos
- Ele deve ficar quieto
- Vamos fazê-lo por conta própria (tudo para nos manter ocupados)
- O resultado não deve ser muito assustador (caso contrário, não peça ao bom cônjuge para instalá-lo em um local visível)
Por software:- O resultado deve ser controlado sem mouse / teclado.
- Além da videoteca local, é necessário acesso ao Torrent TV
- ,
- . 1:
- . 2:
Portanto, é hora de terminar de procrastinar a idéia e começar a implementá-la. Contamos com o uso de componentes de formas de fatores facilmente acessíveis e facilmente atualizáveis, porque em primeiro lugar, para simplificar a possibilidade de uma atualização subsequente e, em segundo lugar, já que eu já tenho uma placa- mãe MicroATX Elitegroup H81H3-M4 , além de um processador I3 4150 e algumas ripas Memória DDR3 para ela.Antes de tudo, é necessário determinar o fator de forma do gabinete e a localização dos componentes dentro dele. Além da placa-mãe, ainda teremos quatro discos rígidos de tamanho normal de várias capacidades e fabricantes dentro de nós, e também precisamos criar algo com energia e sem ruído.Inicialmente, eu realmente não queria ter uma fonte de alimentação ATX desmontada dentro do gabinete. Em primeiro lugar, requer algum tipo de resfriamento adicional e, em segundo lugar, por si só, não é muito pequeno. Felizmente, nossos irmãos chineses vêm em socorro com esta coisa maravilhosa: em
uma extremidade, este maravilhoso produto se conecta diretamente ao conector de alimentação de 24 pinos na placa-mãe e o segundo a uma fonte de alimentação externa de 12 volts da energia necessária. A descrição do conversor diz que ele trabalha com cargas de até 160 watts, o que deve ser mais do que suficiente para a nossa tarefa.Para solicitar imediatamente uma fonte de alimentação para este conversor, foi necessário calcular a potência estimada para ele no joelho. De acordo com os dados nos discos rígidos, cada um deles consumirá cerca de 7 a 10W durante a operação. Além disso, deve-se ter em mente que, ao iniciar os discos, seu consumo pode chegar a 150% do valor nominal. Assim, para 4 discos rígidos com uma margem de cerca de 60W deve ser suficiente. Além disso, é mais difícil: para processadores e placas-mãe é muito difícil encontrar valores semelhantes: para processadores, apenas o TDP é indicado em todos os lugares - a quantidade de calor dissipada, mas a Intel não indica o consumo de energia em nenhuma especificação (embora eu tenha prazer em saber que estou errado se alguém me cutuca em um lugar onde você pode vê-lo), uma situação semelhante com os fabricantes de placas-mãe. Para uma placa-mãe, eu poderia lembrar aproximadamentehá alguns anos, li em algum lugar que o consumo de um representante típico de uma classe low-end não excede 20-30W. Assim, considerando que agora todos estão concentrados na economia do ferro, esse valor pode ser reduzido com segurança para 18-20W. Para o processador, não havia mais nada a não ser imaginar sobriamente que o moderno Core I3, de maneira alguma, pode consumir mais de 40-50W. O resultado total foi que, teoricamente, eu deveria ter 120 watts de fonte de alimentação suficientes.No total, descobriu-se que teoricamente eu deveria ter 120 watts de fonte de alimentação suficientes.O resultado total foi que, teoricamente, eu deveria ter 120 watts de fonte de alimentação suficientes.Olhando para o futuro, posso dizer que meus cálculos foram justificados, e a fonte de alimentação de 12 volts e 10A encomendada por mim atendeu completamente à tarefa e alimentou com êxito o servidor de mídia, apesar das minhas dúvidas de que as inscrições chinesas sejam muito diferentes das reais fonte de energia.Depois de nos livrarmos do componente mais controverso, sem filosofar por muito tempo, esboçamos um diagrama aproximado da caixa futura e imaginamos quantas e quais partes precisaremos produzir:
Não filosofando realmente a placa-mãe e o compartimento do disco rígido, decidiu-se colocá-lo em um plano horizontal, um ao lado do outro. Os discos rígidos são primeiramente montados em conjunto com uma unidade separada, composta por uma peça longa localizada no lado direito do esboço, dobrada na forma da letra “P”, após a qual é instalada dentro do corpo principal e parafusada na parede inferior. Para amortecer a vibração, o interior da peça será colado com espuma fina.Uma partição adicional é instalada entre o compartimento do disco rígido e a placa-mãe, que será um reforçador adicional, além de uma ênfase na tampa superior do gabinete, e não permitirá que ele "toque" devido à falta de ênfase.O rascunho inicial passa por várias melhorias; pensa-se como o resfriamento, as portas e os botões serão implementados, após o que se desenvolve suavemente em um desenho muito preciso ( FRW , DWG , PDF ), feito com o espírito de espeto completo em todos os padrões de design:
Nesse momento, surgiu a questão muito clara sobre o que realmente fazer toda essa “felicidade” e como prender juntos. A escolha, é claro, recaiu sobre o material mais acessível disponível: os painéis laterais do antigo servidor da torre que foram para o mundo melhor. Mais uma vez, olhando para o futuro, posso dizer que essa solução foi bem-sucedida e mal-sucedida ao mesmo tempo: por um lado, o case acabou sendo muito monumental, não rangendo e não "tocando", mas, por outro lado, a caixa pesa ~ 7 kg quando montada, o que, para dizer o mínimo, não é suficiente para um servidor de mídia compacto. Além disso, a espessura e a qualidade do metal reduziram bastante a velocidade do trabalho.Mas desde que a escolha foi feita. não tem volta. Não descobrindo como transferir rapidamente os desenhos para o metal rapidamente, eu apenas imprimi os detalhes no valor de 1 a 1 (a propósito, foi nessas proporções que o desenho foi feito, caso alguém tente seguir meus passos) e colei no metal lápis de escritório. A propósito, é uma solução muito conveniente: o desenho colado é mantido firme o suficiente para não cair durante o corte ou a perfuração (apenas certifique-se de que a cola seja aplicada sobre toda a superfície de contato do metal e do papel) e ao mesmo tempo, após a conclusão do trabalho, o desenho esgotado removido no lugar com cola do metal em questão de segundos sob uma corrente de água morna. Após a colagem, a frente do trabalho fica clara:
Inicialmente, era para fazer um corte com um moedor, seguido de brilho. No entanto, os primeiros testes (em uma única folha de metal) mostraram que, após o corte feito dessa maneira, era improvável que eu fosse capaz de coletar qualquer coisa, por causa do qual tive que abandonar esse empreendimento em favor de uma serra completamente manual e de lazer para metal, e também dremel para casos de emergência e locais onde é necessária uma precisão especial.A primeira panqueca, contrariando as expectativas, acabou não sendo irregular, e "apenas" após uma hora e meia de trabalho ativo com uma serra (não use caixas de servidor grossas para artesanato), a saída foi o primeiro resultado material dos trabalhos:
Posteriormente, o estágio de corte foi adiado por duas a três semanas, pois, em qualquer caso, era necessário alocar pelo menos 2-3 horas para uma peça (após o corte, é necessário terminar as arestas com um dremel com um bico abrasivo para não ficar sem um dedo), devido a por que toda noite não havia desejo de fazer isso. Mas, como você sabe, a água desgasta a pedra, e depois de um tempo esse conjunto ficou pronto:
como você pode ver, das oito partes planejadas, existem apenas 6. Aqui, isso ocorre porque, assim que o fundo da caixa e o suporte dos discos foram cortados, as mãos estão aqui mas eles foram atraídos pela implantação e depuração paralelas da parte do software, em conexão com a qual o seguinte projeto de engenharia foi temporariamente estabelecido na TV:
No processo de montagem do esqueleto do gabinete, foi encontrado um bug fundamental e incorrigível, que precisou ser atendido: a placa, o conversor que conecta o conector de alimentação de 24 pinos na placa-mãe mostrou-se bastante espesso (já que existem 2 placas) e apoiado em um dos suportes de operação memória, por causa da qual ambos estavam em um ligeiro ângulo de 5-7 graus, como pode ser visto na terrível figura abaixo:
O conversor aquece naturalmente durante a operação. E, é claro, a parte mais quente é pressionada na barra de memória. No entanto, ele me tranquiliza parcialmente que o conversor e a memória estão localizados próximos à borda da placa no lado em que o ventilador do gabinete estará mais tarde. Como estará literalmente a 2 centímetros de toda essa desgraça - esperamos que o calor do conversor seja removido com eficiência suficiente para não levar à falha de uma das ripas de memória.Vou falar sobre a parte do software após a parte do hardware, para que ainda não nos distraímos e continuemos nossos exercícios com uma serra e um dremel. Mais precisamente, a serra não nos ajudará mais e terá que ser deixada de lado. Uma broca agora substituirá. Usando uma broca e dremel, perfuramos e cortamos todos os furos técnicos fornecidos pelo projeto:
Nota para a anfitriã: apesar de os discos de corte "diamante" mais caros da dremel (de 100r) serem muito mais duráveis, eles cortam muito pior do que os discos de corte comuns de metal para 20r, já que eles mesmos são feitos de metal, e o processo de corte é muito quente. Temos que parar a cada 5-7 cm (olá, mais uma vez, ao metal grosso do gabinete do servidor) e recorrer a um copo de água fria para esfriar o disco. O próprio metal, ao cortar com esse disco, também é muito quente.No entanto, esse disco é simplesmente indispensável para marcar dobras. Na ausência de equipamento especial para dobrar metais, em casa, isso pode ser feito da seguinte maneira:- ( — ) ( — , , )
- , ( 15, ) , ,
- ~15 , , ~45
- 2-3
- , ,
Quanto mais lentamente esse procedimento for realizado, mais resultará a dobra. O papel principal é desempenhado pelo aumento gradual da parte de flexão da peça, pois a flexão muito acentuada levará ao aparecimento de ondas muito grandes na borda curvada, das quais será muito difícil se livrar.Portanto, temos as peças, todos os furos necessários são cortados, as curvas são feitas nos lugares certos, nas quais as peças serão presas juntas, é hora de juntar tudo para fazer o ajuste final e suavizar os solavancos inevitáveis. Ainda não vamos colocar as “tripas” no estojo, pois, após a montagem, temos mais uma etapa de retificação, ou talvez recorte, mas ainda precisamos consertar alguns elementos técnicos no estojo para garantir que eles se encaixem no lugar. e não interfira na montagem e instalação de outros componentes:
Como o núcleo do nosso centro de mídia nunca é o frio Core I3, e há alguns discos rígidos inseridos nele, não podemos recusar o resfriamento ativo. Portanto, para minimizar o ruído, pegamos duas ventoinhas de caixa de 12 centímetros sem controle de velocidade (elas foram cortadas sem piedade de fontes de alimentação antigas, juntamente com grades cromadas e, o bingo, acabou sendo rolamento, o que é muito bom) e conectadas a uma fonte de alimentação de 5 volts. Na velocidade mínima, o nível de ruído está à beira da audibilidade - qualquer, mesmo o som mais silencioso da casa - sejam os pássaros do lado de fora da janela, andando pela sala ou o ronco do gato abafando completamente o sussurro silencioso dos refrigeradores. Os botões liga / desliga e redefinir são adquiridos no departamento mais próximo de componentes de rádio, conforme sua preferência.Como as grades mais frias cromadas dão o tom, usaremos rebites cegos de alumínio que serão colocados sobre o material do revestimento para montar a caixa - eles são baratos, fáceis de instalar e diluirão levemente nossa triste caixa preta.Após uma hora de montagem e montagem das peças, é obtida a versão beta do gabinete:
A rigidez do metal novamente fez uma piada cruel conosco - por causa da flexão manual do fundo e da tampa do corpo (nessas partes, a flexão foi realizada pelos quatro lados), ambas as partes levemente levemente na diagonal. para consertar esse bug irritante, tivemos que fazer cortes perpendiculares nas peças dobradas para dar alguma flexibilidade às peças. Após essas correções, além de várias outras correções menores, todas as partes salientes foram polidas suavemente, todos os cantos desiguais foram endireitados sem piedade e todos os cortes não perfeitos foram corrigidos resolutamente.Quando um equilíbrio começou a surgir nas escalas do perfeccionismo e do senso de realidade, foi decidida com força de vontade que era hora de trazer beleza e montagem final (especialmente considerando que a parte do software já estava pronta há muito tempo, aprovada pela esposa e usada ao máximo, mesmo que separada). componentes).Como para uma pintura de metal de alta qualidade, que foi originalmente projetada, idealmente, é necessário remover a tinta antiga, suavizar todas as falhas e procurar em algum lugar um lugar onde a pintura em si será executada (na rua, neste momento, já estava bem atrás de zero), tive que cuspir sobre esse assunto e recorra aos serviços de um filme autoadesivo de vinil. E novamente: foi uma decisão muito boa: levou menos de 10 minutos para processar uma parte (com exceção da tampa traseira com sua grade de ventilação), e o resultado tornou possível ocultar pequenas falhas que inevitavelmente atingem os olhos.Depois de uma hora e meia, em vez de um prédio feio, mas todo, à minha frente havia uma pilha de peças bonitas, mas novamente desmontadas:
Devido a um ataque de inflamação da sensação de beleza, até os detalhes internos ocultos dos olhos foram colados:
Então, todos os caminhos de volta foram completamente cortados e era hora de fazer a montagem final, após a qual seria hora de triunfar na vitória ou sentir a amargura da derrota.Um pequeno fakap: um bloco de discos rígidos com cabos de alimentação e SATA e resfriadores montados na frente não apareceu ao mesmo tempo e, portanto, uma surpresa desagradável foi encontrada durante a montagem: era muito difícil encaixar os cabos para que eles não se encaixassem no resfriador. Por causa disso, eu tive que fazer uma colocação cuidadosa dos fios, embora isso não tenha sido planejado originalmente (de qualquer maneira, decidi colocar a tampa superior nos rebites para que minhas mãos não coçam para entrar lá).
Como inicialmente apenas um conector SATA e um MOLEX estavam disponíveis no conversor, eles precisaram ser cortados e alterados para atender às suas necessidades: substitua um conector SATA por 4 e o MOLEX foi deixado para conectar o resfriamento. Foi muito conveniente que o conversor fosse muito compacto e apenas dois conjuntos de fios saíssem dele (entrada e saída da PSU para a periferia) - não interfere na colocação dos cabos e pode ser conectado quando tudo estiver pronto e oculto.Devido às características de design do gabinete, a placa-mãe teve que ser elevada a uma altura fora do padrão (foram utilizados 3 racks padrão para a placa-mãe parafusados um no outro). Isso permitiu que todos os quilômetros de fios se encaixassem diretamente embaixo da placa. A visão geral estraga apenas um monte de fios caóticos multicoloridos do painel frontal e botões de energia, indo para o cache sob a placa. Um dos loops da SATA é vermelho; assim, após 5 anos, você ainda se lembra em qual unidade o sistema está instalado (bem, e isso é elegante). Um pouco de fita isolante azul (canto inferior esquerdo) para tranqüilidade - o fabricante não se incomodou em isolar a junção dos fios e contatos do conector, mas eu estava com preguiça de dessoldá-los para encolher o calor. Além disso, o conector está longe o suficiente de todo o resto:
Como pessoas realmente arriscadas, primeiro fechamos a tampa superior, prendemos com rebites e tiramos algumas fotos, depois conectamos tudo à TV e verificamos se esquecemos de conectar alguma coisa:
você sabe como é difícil fazer manualmente exatamente 100 furos em metal? Portanto, eu não sei - eu as perfurei de maneira desigual:
pernas de cortiça autoadesivas para móveis foram úteis: com peso considerável, o estojo fica bem, quando você tenta movê-lo, o faz com relutância e silenciosamente. Ondas na junção entre as paredes inferior e frontal do gabinete também são visíveis - o próprio resultado da rima de flexão de metal apressada:
mas, apesar das falhas menores restantes, tudo isso se estabeleceu organicamente sob a TV, ao lado do bom e velho Microlab SOLO 2:
Durante todo o processo de montagem, pareceu-me que eu ainda estava um pouco longe demais com as dimensões, mas no final o gabinete mostrou-se com tamanhos bastante aceitáveis: 35x22x15 cm.Me custaria comprar um gabinete de fábrica mais barato? Sim Definitivamente sim. Mais de apenas 2 mil rublos foram comprados apenas com materiais de ferramentas e outras pequenas coisas. E isso não leva em conta o fato de que levei pelo menos 50 horas para fabricar lentamente o gabinete. O resultado corresponde às expectativas? Pessoalmente, consegui o que queria: um prédio pequeno e muito tranquilo, além de uma lição para mãos e cabeça no meu tempo livre (afinal, essa era a tarefa inicial). Se o objetivo é simplesmente obter um caso, é muito mais lucrativo gastar essas 50 horas ganhando dinheiro e comprando uma versão de fábrica.Parte do software
Nós descobrimos a parte de ferro. Agora vamos ver o que temos com o software e o que obtemos dessa caixa. As estrelas acabaram se tornando mais como um administrador do Windows e, portanto, a escolha de uma plataforma de software não foi um tormento especial para mim, no entanto, todos os produtos que eu uso como “saias extras” têm suas próprias versões Linux e MacOS e são abertos ou apenas gratuitos .A primeira coisa que foi instalada após a implantação do sistema operacional, a atualização e a criação de um usuário sem direitos administrativos foi o sistema aberto de home theater KODI(anteriormente também conhecido como XBMC). De todas as opções testadas de conchas para home theaters, essa talvez seja a mais flexível e expansível. Além da funcionalidade interna para gerenciar conteúdo local, o KODI suporta plugins adicionais instalados a partir de repositórios oficiais e de terceiros. Sem muito trabalho, o KODI foi muito fácil de fazer amizade com o Torrent TV (de acordo com as instruções no site do próprio Torrent TV), além de pesquisa de cinema e rutracker (veja se ele para de funcionar no Cazaquistão após o bloqueio). A interação com o reprodutor funciona de acordo com o seguinte esquema: por nome ou por qualquer critério, um filme / série é selecionado na base da pesquisa de filmes, todas as informações sobre ele são exibidas na tela, além de um botão mágico de "baixar / assistir", quando clicado, uma lista é exibida distribuições deste filme encontradas no rastreador.Após selecionar uma distribuição, ela é automaticamente transferida para clientes de torrent para download. O download será realizado em blocos consecutivos, o que possibilita começar a assistir a um filme imediatamente após configurá-lo para download. Gerenciado por todo esse milagre usando aplicativos paraAndroid e iOS . No caso de um backup ou de "estetas" especiais, esse tipo de coisa também está conectado:
não vejo muito sentido em considerar a plataforma KODI em mais detalhes, pois muitas palavras podem ser ditas sobre isso e podem ser implementadas muito pouco. poucas idéias. A pedido da comunidade - sobre isso, posso escrever um artigo separado, para continuarmos.Como todos os principais objetivos do software foram alcançados, vejamos pontos adicionais: postar sua coleção de músicas na Internet, para que você sempre tenha acesso a ela. Uma espécie de Google Play Music do tamanho de um bolso, tão amado e usado por mim, mesmo após a transição do Android para o iOS. Por certas razões, por mais 10 meses não poderei usar esse serviço: foi uma surpresa desagradável que apenas 10 dispositivos possam ser conectados a ele em um ano e apenas 4 possam ser desconectados.Esta circunstância me leva a uma tristeza insuperável. Inicialmente, tentei dissipá-lo usando a interface da web KODI, mas funcionou surpreendentemente instável em um canal de 40 megabytes e não resolveu o problema de tocar música em um smartphone. Embora eu possa perdoá-lo,Afinal, ele foi projetado principalmente para trabalhar dentro da rede local e reproduzir vídeo / áudio localmente. Portanto, tive que recorrer ao mecanismo de pesquisa, que me deu para resolver meu problema apenas uma ferramenta maravilhosa:Servidor de mídia Plex .A essência do software é muito simples: ela pega sua biblioteca uPnP e permite acessá-la de qualquer lugar do mundo através de um navegador da Web ou aplicativos móveis para qualquer plataforma. Como parte da plataforma é implementada no lado do desenvolvedor, a configuração é extremamente simples: basta no servidor e no cliente / site app.plex.tv/web fazer login usando sua gravação, e a mágica acontece: no cliente ou navegador, você pode acessar seu áudio / vídeo / biblioteca de fotos. Ao mesmo tempo, no lado do servidor durante a reprodução, o vídeo / áudio será transcodificado em tempo real para o formato garantido para ser entendido pelo dispositivo. Para canais estreitos, você pode selecionar a qualidade da reprodução. O acesso funciona mesmo que o servidor não olhe diretamente para a Internet ou não tenha um endereço IP estático (não é crítico,já que eu ainda tinha que configurar o encaminhamento de porta no roteador para outros fins, mas o bônus é bom).No entanto, há uma limitação desagradável para clientes móveis: se você quiser assistir / ouvir o aplicativo no seu telefone / tablet, terá que pagar por uma assinatura ou desbloquear esta função. Ao mesmo tempo, é bastante confortável usar o aplicativo através do navegador, mesmo no telefone, mas, por um recurso tão bom, não ganhei e honestamente consegui um cliente pago para mim e para minha esposa - agora ela também está encantada: sua série favorita em qualidade FullHD sem freios (velocidade de download na cidade) \ upload de arquivos para o meu servidor improvisado é de cerca de 3-4Mb / s) sempre à mão.A próxima pergunta é o acesso à biblioteca. Tudo ficou ainda mais simples do que eu pensava: minha biblioteca é um monte de arquivos zip e índice de arquivos inpx. Para ver toda a minha vida, usei o freelib aberto, em que após a instalação de uma marca de seleção nas configurações, a interface da Web é ativada para pesquisar livros no catálogo ou o servidor OPDS é iniciado , para o qual existem muitos aplicativos para todas as plataformas.Parece que o que mais é necessário para a felicidade? Ann no. Não é tão fácil parar agora. A essência do homem é tal que ele sempre desejará algo mais do que ele já tem. Por isso, falei sobre sentimentos e decidi que deixar outro aplicativo de servidor em minhas condições seria simplesmente imperdoável e implantei o servidor SeaFile nele . Obviamente, o armazenamento na nuvem doméstica está longe de ser executado para tolerância a falhas em gigantes como Google ou Microsoft, mas eles não podem me dar espaço em disco ilimitado com uma velocidade de download / upload de 3-4 MB.Nesse ponto, percebi que minhas idéias sobre a carga útil dessa caixa infeliz estavam esgotadas e a última coisa que ficou intrigante foi a questão do backup (sim, eu já pertenço ao segundo grupo de pessoas - que já faz backups), que eu, no entanto, Ainda não o dominei, pois hesito entre uma solução simples e gratuita e a Acronis, tão amada por mim, mas paga.Em vez de uma conclusão
A parte do artigo dedicada ao software ficou um pouco amarrotada, mas isso se deve ao fato de que cada um dos produtos merece um artigo separado; portanto, literalmente em algumas frases, tive que descrever a possível carga funcional de cada um deles.Espero que alguém considere minhas anotações úteis e descubra os maravilhosos produtos de software livre descritos por mim.Se você ainda tiver alguma dúvida que eu não tenha revelado o suficiente ou que mereça um artigo separado, escreva sobre isso nos comentários.E agradeço a atenção daqueles poucos que leram até aqui.PS: Eu coloquei o habrastorage extremamente básico ao lado de todas as fotos verticais (em princípio, eu concordo com ele - é assim que deve ser feito com elas), mas não desmontarei tudo novamente para tirar as fotos "certas", então aceite todas como isso é. Source: https://habr.com/ru/post/pt387717/
All Articles