AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / computer / Perguntas / 1780345
Accepted
mFeinstein
mFeinstein
Asked: 2023-04-23 06:48:35 +0800 CST2023-04-23 06:48:35 +0800 CST 2023-04-23 06:48:35 +0800 CST

Por que o WSL é montado em /mnt/c e não em /c?

  • 772

Alguém sabe por que a Microsoft escolheu montar o diretório WSL /mnt/cem vez de /c?

Eu vi um tutorial online sobre como mudar para /c, mas temo que essa mudança possa travar alguma coisa.

windows-subsystem-for-linux
  • 2 2 respostas
  • 72 Views

2 respostas

  • Voted
  1. Best Answer
    amshepherd
    2023-04-23T07:00:24+08:002023-04-23T07:00:24+08:00

    A localização de vários pontos de montagem é de domínio do FHS . Existem algumas opções disponíveis para montar um volume permanente, como a unidade C do Windows. Vamos analisá-los para entender a lógica por trás da decisão da Microsoft.

    No/media/c

    Este teria sido meu primeiro pensamento, já que /media/*é onde estou pessoalmente acostumado a montar unidades permanentemente instaladas, como discos rígidos internos e SSDs em minhas máquinas Linux.

    A ESF diz:

    Este diretório contém subdiretórios que são usados ​​como pontos de montagem para mídia removível, como disquetes, cdroms e discos zip.

    Então, de acordo com a especificação, não é bem o que queremos. Embora eu não tenha certeza se é tecnicamente possível desmontar cdo WSL, certamente não é removível no sentido tradicional da palavra.

    Vários navegadores de arquivos da GUI também mostrarão os volumes montados na barra lateral. Isso geralmente não deve ser uma grande preocupação com a WSL, mas é bom considerar mesmo assim.

    Prós:

    • Uma opção bastante intuitiva
    • Suportado por muitos gerenciadores de arquivos

    Contras:

    • Não exatamente compatível com as especificações
    • Coloca mídias removíveis e permanentes juntas

    No/mnt/c

    Esta é claramente a opção que a Microsoft escolheu. Mas por que? Olhando para a especificação novamente, vemos:

    Este diretório é fornecido para que o administrador do sistema possa montar temporariamente um sistema de arquivos conforme necessário.

    Embora o uso de subdiretórios em /mnt como um ponto de montagem tenha sido comum recentemente, ele entra em conflito com uma tradição muito mais antiga de usar /mnt diretamente como um ponto de montagem temporário.

    Hum. Isso também não se encaixa em nosso caso de uso. Normalmente, ao usar /mnt, é ele /mnt mesmo que é montado, em vez de um subdiretório - mas como isso só deve ser feito temporariamente e manualmente por um administrador, o administrador ainda pode montar onde quiser dentro de seu próprio critério /mnt. Certamente, não é para ser montado automaticamente pelo sistema. Em suma, esta parece ser uma má escolha da parte da Microsoft.

    Prós:

    • ???

    Contras:

    • Definitivamente não está em conformidade com as especificações
    • Significa que você não pode montar nada para/mnt
    • Sugere que foi montado manualmente em vez de automaticamente

    No/c

    Isso pode parecer uma escolha intuitiva e óbvia. Ele espelha a metáfora do Windows do nome da unidade sendo a primeira parte de cada caminho e é fácil de digitar e lembrar. Mas o FHS não gosta de diretórios arbitrários em /.

    Existem várias razões pelas quais a criação de um novo subdiretório do sistema de arquivos raiz é proibida:

    • Exige espaço em uma partição raiz que o administrador do sistema pode querer manter pequena e simples por motivos de desempenho ou segurança.

    • Ele evita qualquer disciplina que o administrador do sistema possa ter configurado para distribuir hierarquias de arquivos padrão em volumes montáveis.

    As distribuições não devem criar novos diretórios na hierarquia raiz sem uma consideração extremamente cuidadosa das consequências, inclusive para a portabilidade do aplicativo.

    Prós:

    • Intuitivo

    Contras:

    • Definitivamente não está em conformidade com as especificações

    Resumo

    Onde montar drives permanentes é uma questão de longa data entre os usuários de sistemas * nix. Infelizmente, não parece haver um grande consenso no momento. Minha opinião pessoal é que a Microsoft tomou a decisão errada e /media/cteria sido melhor, embora /ctambém fosse uma opção válida. É possível, porém, que devido à falta de acordo, ele tenha sido simplesmente escolhido aleatoriamente por um desenvolvedor e nunca alterado. Seja qual for o caso, a resposta para o motivo pelo qual o WSL é montado C:é /mnt/cque "simplesmente".

    • 5
  2. NotTheDr01ds
    2023-04-24T23:56:51+08:002023-04-24T23:56:51+08:00

    Alguém sabe por que a Microsoft escolheu montar o diretório WSL /mnt/cem vez de /c?

    Como a outra resposta atual aqui demonstra (e muito bem), pode ser mais uma questão de opinião do que qualquer coisa. Como as perguntas baseadas em opinião são, para ser justo, fora do tópico aqui, abordarei a outra parte da sua pergunta (implícita):

    Eu vi um tutorial on-line sobre como alterá-lo para /c, mas temo que essa alteração possa quebrar alguma coisa.

    Embora eu não o encoraje necessariamente, não me preocupo com a possibilidade de quebrar alguma coisa, pelo menos não no sentido tradicional.

    O método para alterá-lo é mencionado diretamente nos [documentos WSL]( https://learn.microsoft.com/en-us/windows/wsl/wsl-config#automount-settings . Basta sudo -e /etc/wsl.confadicionar:

    [automount]
    root=/
    

    Saia da distribuição do WSL, execute wsl --shutdown(ou wsl --terminate <distro>) no PowerShell (como um usuário comum não administrador) e reinicie.

    Agora você deve ver /c(e quaisquer outras unidades do Windows no nível raiz). Observe que os pontos de montagem pré-existentes em /mnt(como /mnt/c) ainda existirão, mas estarão vazios. Você pode sudo rmdir /mnt/c(etc.) para cada unidade.

    Eu tenho algumas razões bastante benignas para recomendar que você mantenha as montarias em /mnt:

    • Todo mundo está fazendo isso ;-)

      Se você estiver seguindo as instruções do WSL (como outra resposta do Stack), eles normalmente assumirão que o local é/mnt/c

    • Algum código pode assumir erroneamente/mnt/c

      Há uma pequena chance de que algum código de terceiros /mnt/ctambém assuma. Não que haja muito código WSL de terceiros que você provavelmente executará.

    • Todo mundo está fazendo isso (redux)

      Quando você postar uma pergunta no futuro, se alterar o ponto de montagem para /c, encorajo você a fazer referência a esse fato em sua pergunta (supondo que você esteja trabalhando com esse caminho). Caso contrário, é apenas mais um detalhe que provavelmente terá de ser resolvido por quem espera responder.

    Mas, novamente, isso significa apenas que manter o padrão da WSL é o "caminho de menor resistência". Ainda não espero que nada "quebre" se você fizer isso.

    • 2

relate perguntas

  • Se o Windows 7 não oferece suporte a WSL, o que é "Subsistema para aplicativos baseados em UNIX"?

  • Existe uma maneira de obter acesso administrativo dos arquivos do Windows Subsystem Linux para os arquivos do Windows corretamente?

  • Por que tmux e oh-my-zsh quebram a saída de cores do git log no WSL?

  • Windows 10: Não é possível abrir arquivos .ttf dentro de um (antigo) repositório Git

  • como abrir um arquivo de escritório do WSL

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Como posso reduzir o consumo do processo `vmmem`?

    • 11 respostas
  • Marko Smith

    Baixar vídeo do Microsoft Stream

    • 4 respostas
  • Marko Smith

    O Google Chrome DevTools falhou ao analisar o SourceMap: chrome-extension

    • 6 respostas
  • Marko Smith

    O visualizador de fotos do Windows não pode ser executado porque não há memória suficiente?

    • 5 respostas
  • Marko Smith

    Como faço para ativar o WindowsXP agora que o suporte acabou?

    • 6 respostas
  • Marko Smith

    Área de trabalho remota congelando intermitentemente

    • 7 respostas
  • Marko Smith

    O que significa ter uma máscara de sub-rede /32?

    • 6 respostas
  • Marko Smith

    Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows?

    • 1 respostas
  • Marko Smith

    O VirtualBox falha ao iniciar com VERR_NEM_VM_CREATE_FAILED

    • 8 respostas
  • Marko Smith

    Os aplicativos não aparecem nas configurações de privacidade da câmera e do microfone no MacBook

    • 5 respostas
  • Martin Hope
    Vickel O Firefox não permite mais colar no WhatsApp web? 2023-08-18 05:04:35 +0800 CST
  • Martin Hope
    Saaru Lindestøkke Por que os arquivos tar.xz são 15x menores ao usar a biblioteca tar do Python em comparação com o tar do macOS? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh Como posso reduzir o consumo do processo `vmmem`? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Pesquisa do Windows 10 não está carregando, mostrando janela em branco 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    andre_ss6 Área de trabalho remota congelando intermitentemente 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney Por que colocar um ponto após o URL remove as informações de login? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca Todos os meus complementos do Firefox foram desativados repentinamente, como posso reativá-los? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK É possível criar um código QR usando texto? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 Altere o nome da ramificação padrão do git init 2019-04-01 06:16:56 +0800 CST

Hot tag

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve