Questão Posso excluir a pasta C: \ ProgramData \ Package Cache \?


Há uma nova pasta cheia de instaladores localizados em C:\ProgramData\Package Cache\. Eu acredito que isso é do Visual Studio 2012 RC.

Posso excluir esses gigabytes de dados sem consequências? São todos arquivos temporários? É um produto beta, então não tenho certeza se há muitas informações sobre essa pasta.


368


origem


Eu sugeriria contra qualquer coisa que tenha mais de 50MB de tamanho, é usado para alguma coisa. Tente movê-los para a sua área de trabalho ou algo assim, e se ele travar, mova-os de volta. - Frank
Eu não posso realmente testar meu cenário original, mas lembro que tudo foi bem desinstalado. Como há várias pessoas dizendo que tiveram problemas, eu revoguei a resposta aceita. Tenha em mente que eu estava usando o RC de 2012. - Ben L
@BenL, embora eu entenda quando você diz "Eu não posso realmente testar o meu cenário original, mas lembro que tudo foi desinstalado. Já que há várias pessoas dizendo que tiveram problemas, eu revoguei a resposta aceita." Acho que minha resposta abaixo (a mais popular até agora) permite que qualquer pessoa, em qualquer caso, trabalhe em torno do problema movendo e apontando a pasta para uma unidade com mais espaço. Ele vai até trabalhar com mídia offline. Assim, você pode simplesmente remontar / inserir seu DVD de arquivamento / reconectar sua unidade externa, se é onde você move isso também, no momento da desinstalação, dos reparos, etc. - Flak DiNenno
@ FlakDiNenno Eu gosto da sua solução. Mas a questão é se é seguro excluir, não se é seguro montar ou offline. - Ben L
@BenL Bom ponto. Eu adicionei alguns detalhes e um link da Microsoft que definitivamente recomenda que você não exclua a pasta e por quê. - Flak DiNenno


Respostas:


TL; DR: NÃO apague esta pasta

(veja abaixo para soluções alternativas)


Por que não?

Houve relatórios conflitantes sobre se a ausência desta pasta (como conseqüência de excluí-la) será na realidade e em todos os casos causar problemas com a instalação do visual studio, ou seja, durante a operação normal, durante a reinstalação, patch / upgrade, reparo, instalação ou desinstalação. No entanto, a recomendação da MICROSOFT é claramente NÃO DELETE.

A partir de Blogs de Ferramentas do Desenvolvedor Microsoft → AQUI

Ao reparar, modificar ou desinstalar um produto ou quando   instalar ou desinstalar um patch, se a mídia de origem for necessária,   cache de pacotes é usado automaticamente e a maioria dos usuários nunca verá um   pronto. Somente se o cache do pacote estiver ausente ou incompleto, o Visual   Prompt de configuração do Studio para fazer download (se conectado) ou localizar   mostrado na imagem abaixo.

Visual Studio 2012 Prompt for Source

Os usuários que instalaram a partir de mídia até mesmo têm a opção de baixar   (se conectado). Então, enquanto muito poucos clientes deveriam ver isso   diálogo, queríamos ter certeza de que a experiência era fácil.
  Embora nós   solicitará o download de pacotes para o cache, se ausentes, recomendamos   os usuários não removem o cache do pacote. Não só o cache é usado por   muitos outros produtos que são instalados com o Burn e podem não fornecer a mesma experiência de download, existem cenários quando   O Windows Installer pode exigir uma fonte que não podemos manipular porque   código não está sendo executado.


Solução / Solução:

Se você precisar recuperar esse espaço, sua aposta mais segura é evitar "excluindo" qualquer coisa, mas em vez disso, mova essa pasta e todos os seus arquivos. Você pode fazer isso com segurança seguindo as instruções abaixo para qualquer armazenamento local / ativo, on-line, near-line ou off-line enquanto esse sistema de armazenamento que pode ser montado em uma letra de unidade ou qualquer ponto de montagem no sistema de arquivos NTFS. Qualquer um dos seguintes itens funcionará:

  • outra partição ao vivo (montada)
  • um disco óptico (CD, DVD, etc.) com um sistema de arquivos ao vivo como FAT ou NTFS
  • um disco rígido externo
  • um drive USB
  • uma unidade de rede

Sempre que você for solicitado a fornecer a mídia / receber erros sobre falta de arquivos / local ausente, simplesmente remontar / reinserir sua unidade / mídia se ela ainda não for uma partição ativa.

Uma vez movido, para "ligar" o antigo ponto de montagem / localização (na maioria dos casos C:\ProgramData\Package Cache\), você simplesmente cria um diretório junction para isso.

Junctions são reconhecidos no file systemnível como um alias de entrada no FSTAB. Portanto, é transparente para todos os programas, incluindo o próprio sistema operacional. Em outras palavras, NÃO é visto como um arquivo que simplesmente aponta para outro local (como um shortcut) e, portanto, sempre funciona sem incidentes.

  1. Você moveria a (s) pasta (s) em questão para o novo local
  2. Crie o entroncamento

    • Opção 1. (nativamente): Basta emitir o comando interno do Windows Vista / 7/8 e o prompt do cmd:

      mklink /J oldpath newpath
      

      NOTA: Se você fizer o newpath absoluto, você será capaz de mover o link sem quebrar o ponteiro para o newpath. Se você fizer o newpath Relativamente, você poderá evitar a quebra do link, contanto que você mova AMBOS o link e segmente JUNTOS e mantenha seus caminhos relativos.

    • Opção 2. (usando uma ferramenta): Outra ótima alternativa é um utilitário prático gratuito que eu tenho usado há anos chamado "Link Shell Extension". O LSE é gratuito e você pode encontrá-lo aqui (ou no Google): http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html

      O LSE permite que você crie links simbólicos, hardlinks, junções, smartcopies, smartclones, espelhos inteligentes, movimentos inteligentes, emendas, várias fontes e muitas outras coisas que eu achei muito confuso para ler, francamente. Mas é um brilhante produto gratuito que cria um menu de contexto do Windows Explorer que permite clicar com o botão direito do mouse na pasta LINK-TARGET e arrastá-lo até o local onde deseja criar o link real. Você pode, claro, renomear o link para o que quiser.


350



esta é uma ótima solução. Eu preciso limpar minha unidade SSD c, movendo os arquivos para outra unidade. Muito Obrigado - marek
+1 para extensão de shell de hardlink. Não poderia viver sem isso. - Dennis G
Prezada Microsoft: Por favor, não use o nome "cache" para descrever uma pasta que causa muita dor de cabeça quando excluída. Obrigado. - Todd Menier
Fiz o truque de mudar para outra unidade e fazer uma junção. Executando o instalador do VS2015 SP3 hoje, o instalador fez com que a junção fosse transferida para um diretório normal (possivelmente ao desinstalar uma versão mais antiga de algum componente, ele recursava por diretórios pai "vazios" removendo-os - há problemas conhecidos com junções e diretório vazio ingênuo testes). Por isso, ele colocou novos componentes em C: \ ProgramData \ Package Cache e, em seguida, não encontrou itens no novo local onde a junção anteriormente apontava. Apenas um aviso para os futuros leitores a junção pode precisar de ser restabelecida. - Ben Voigt
Como uma correção mais permanente, use as permissões NTFS e negue a permissão "excluir" na própria junção. - Ben Voigt


Eu encontrei a mesma pasta no meu laptop depois de instalar o VS2012. Tentei renomear essa pasta para '__Package Cache'. Quando tentei desinstalar o VS2012, o processo de desinstalação não pôde ser iniciado.

Mais informações estão disponíveis Aqui.


46





A resposta correta parece ser que, se você excluí-lo, o VS 2012 falhará na desinstalação, mas, caso contrário, não será necessário. Assim sendo:

  1. Você pode deixar os arquivos lá. Tudo vai funcionar, mas vai usar muito espaço em disco.
  2. Você pode excluir os arquivos e, se quiser desinstalar o VS 2012, poderá executar novamente o instalador original para recuperar os arquivos e, em seguida, desinstalar.
  3. Você pode mover os arquivos para outra unidade com mais espaço livre e:

    a) mova os arquivos de volta quando você precisar deles

    b) crie uma junção como na sugestão de Flak (aviso: junções são bestas complicadas, e mentirá para o Windows Explorer dizendo que os arquivos ocupam espaço em disco em C: quando eles estão realmente em outra unidade!)

Junções e links simbólicos são a única resposta para mover arquivos do sistema para outra unidade. Eles são recursos de nível de sistema de arquivos NTFS que até mesmo o próprio Windows ignora e, portanto, são realmente um grande martelo (e risco de segurança em potencial) que devem ser usados ​​com moderação ao contrário de seus equivalentes UNIX / Linux / BSD, já que existem muito mais tempo Nessa família OS e programas UNIX / Linux / BSD sabem como lidar com eles.


19



junções são bestas complicadas, e vai mentir para o Windows Explorer dizendo-lhe os arquivos ocupam espaço em disco em C - se o que você quer dizer com isto é que quando você abre o diálogo de propriedades da junção, ele exibe o "Tamanho no disco" igual ao seu tamanho no disco em que ele está, então eu concordo que ele é enganoso. Mas, no entanto, o tamanho atual da pasta é junção não adiciona o total de espaço usado na unidade C, conforme exibido pelo diálogo de propriedades da unidade C. Nesse caso, sua declaração é enganosa ;-) - Sнаđошƒаӽ


Todos os instaladores do software são salvos nesta pasta. Ele falharia quando você tenta desinstalar um software após excluir essa pasta.


16





Eu notei esta pasta depois que eu instalei o Visual Studio 2012, no meu caso tudo nele contido para a instalação do Visual Studio 2012, eu removi manualmente e tudo parece estar funcionando, incluindo o Visual Studio.


12



Esta é a resposta aceita e é errado. Se você excluir esta pasta você não vai ser capaz de desinstalar ou atualizar o Visual Studio (e ferramentas e redistribuições relacionadas - vai causar problemas de segurança se uma atualização dos tempos de execução do MSVC for exibida) - kinokijuf
Você está errado, eu tenho, sem nenhum problema conseguiu atualizar o Visual Studio 2012 com as atualizações mais recentes. Obrigado. - Johan Svensson


Não. Se você excluir esta pasta, não poderá desinstalar (e possivelmente atualizar) o Visual Studio.


7





SIM, você pode excluir este diretório, caso tenha desinstalado o Visual Studio.

Eu encontrei este diretório depois de desinstalar o Visual Studio em preparação para instalar um SSD menor do que o disco rígido que eu estava usando antes. Este computador não é mais uma estação de desenvolvimento.

Desinstalar o Visual Studio deixou para trás algum outro software como um programa para se conectar a um servidor SQL local, que eu não tenho. Eu desinstalei.

Ele também deixou para trás vários programas .NET, mas eu não sei quais são seguros para desinstalar, então deixei-os no lugar.

Então, ao ponto da pergunta: eu deletei este diretório.

Foi muito grande, então ajudou-me a caber no meu SSD melhor.

Agora, um dia depois, não notei nenhum problema.


4



Meses depois, ainda sem problemas. - SDsolar


Geralmente, é melhor não atrapalhar a exclusão manual desses arquivos e, em vez disso, deixar essa tarefa para a Limpeza de Disco do Windows ou para outras ferramentas de limpeza de disco. O que eu pessoalmente uso e posso te recomendar é o CCleaner.

O CCleaner pode ajudá-lo a encontrar automaticamente arquivos obsoletos em um programa e excluí-los para você.


2



Tenha muito cuidado; esses programas não são de forma alguma infalíveis. O CCleaner é conhecido por remover arquivos críticos para alguns programas, e algumas opções removerão os arquivos mantidos para desinstalação. - Bob
CCleaner é apenas uma porcaria mais ou menos. Eu tive que restaurar meu computador (devido a não ser capaz de iniciar) depois de tentar usar essa ferramenta. Melhor não usá-lo nunca. - Hopeless


Para o Visual Studio 2017, você pode desabilitar o cache de pacotes (mesmo após a instalação do Visual Studio) chamando:

"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vs_installer.exe" --nocache

Ganhei cerca de 2 GB de espaço em disco na unidade do meu sistema (YMMV).

Para detalhes, consulte os documentos: Visual Studio Docs: Desativar ou remover o cache de pacote


2



Alguém testou a desativação e remoção do cache após a instalação do vs2017? - Ben L
@BenL: Funcionou para mim. - 0xA3