No Windows, a maioria dos aplicativos e dados de aplicativos são armazenados em um diretório especial conhecido como C:\Program Files
(e ocasionalmente C:\Program Files (x86)
). Qual é o Ubuntu / Linux equivalente a esse caminho? Existe um?
filesystem
Kaz Wolfe
fonte
fonte
Respostas:
/bin
e/usr/bin
é onde estão os scripts que iniciam os programas. O equivalente direto a "Arquivos de Programas" é provavelmente/usr/share
( consulte Padrão de Hierarquia do Sistema de Arquivos ). Esse diretório contém os vários arquivos de suporte para a maioria dos programas.Provavelmente, no entanto, não há um equivalente direto, pois, por exemplo, os arquivos da biblioteca são compartilhados pelo sistema (in
/lib
) e as opções são especificadas pelo usuário (no diretório inicial do usuário) ou localizadas universalmente/etc
.Portanto, a instalação de um programa por meio de um arquivo deb, repositório ou compilação provavelmente colocará arquivos em todos esses locais.
[EDIT] E como outros observam, há também
/sbin
e/usr/sbin
. Além disso/usr/local/bin
,/opt/bin
e até/usr/games/
. Então definitivamente não é uma comparação direta comc:\program files
!fonte
/opt
? Já vi muitos programas (geralmente de código fechado ou baseados em aplicativos) antes, de maneira semelhante aProgram Files
./opt
diretório./usr/local/bin
é um local semi-comum para software que pode não ser comumente usado por um usuário / empresa.Resposta tardia - criei um roteiro para os iniciantes seguirem. Se eles estiverem procurando por um arquivo, mas não souberem onde procurar, poderão usar o mapa para navegar mais ou menos. Você pode baixar um PNG de alta resolução aqui . Você pode encontrar o post relacionado aqui . Continuarei atualizando o arquivo e a publicação quando o tempo permitir, incorporando comentários úteis.
fonte
EDIT: Veja também a resposta de d4nyll abaixo para um mapa excelente e fácil para iniciantes!
Leia minha resposta abaixo para obter mais informações sobre o que é a
PATH
variável de ambiente, quais.desktop
arquivos são e como encontrar um programa específico usando vários comandos linux.Resposta original:
Não há uma resposta fácil.
/bin
,,/usr/bin
e/usr/share
Conforme mencionado nas outras respostas, você pode encontrar a maioria dos executáveis em
/bin
ou/usr/bin
, e os arquivos de suporte estão instalados no/usr/share
./usr/local
e/opt
No entanto, existem mais diretórios nos quais o Ubuntu instala aplicativos. A
PATH
variável, que determina onde procurar um comando digitado, pode fornecer uma pista, a minha se parece (echo $PATH
em um terminal):Como você pode ver, alguns softwares estão instalados
/usr/local
e têm seu próprio diretório ebin
. Outro lugar onde muitos programas estão instalados é/opt
. As propriedades desses locais são explicadas pelo Padrão de Hierarquia do Sistema de Arquivos , que é uma leitura muito boa. Infelizmente, a diferença entre/opt
e/usr/local
não está muito bem explicada, alguém no unix stackexchange teve uma explicação mais elaborada:/usr/local
é um local para instalar arquivos criados pelo administrador, geralmente usando o comando make. A idéia é evitar conflitos com arquivos que fazem parte dos sistemas operacionais que seriam substituídos ou sobrescritos pelos locais de outra forma. por exemplo./usr/bin/foo
faz parte do sistema operacional e/usr/local/bin/foo
é uma alternativa local,/opt
é um diretório para instalar pacotes desmembrados, cada um em seu próprio subdiretório. Eles já são pacotes completos construídos, fornecidos por um distribuidor independente de software de terceiros. Por exemplo,someapp
seria instalado em/opt/someapp
, um de seus comandos estaria em/opt/someapp/bin/foo
[e, geralmente, um link simbólico é feito em um dosbin
diretórios do diretórioPATH
, ou o programa é chamado a partir de um arquivo da área de trabalho (veja abaixo)].Localizando um programa ou comando específico
.desktop
arquivosPara descobrir onde um programa específico está instalado, você pode executar várias etapas. Primeiro você precisa localizar o
.desktop
arquivo. Os arquivos da área de trabalho são semelhantes aos atalhos do Windows e para os aplicativos do sistema em que estão localizados/usr/share/applications
. Os arquivos da área de trabalho para aplicativos disponíveis apenas para o usuário atual estão~/.local/share/applications
. Tomemos, por exemplo, o Google Chrome, que possui o arquivo da área de trabalho/usr/share/applications/google-chrome.desktop
e procure a linha que começa comExec=
, isso determina como iniciar o Google Chrome. Diz:Então você sabe Google Chrome está em
/opt
.Agora para o Mozilla Firefox, que está localizado em
/usr/share/applications/firefox.desktop
. Simplesmente dizNo começo, isso não parece ajudar muito, mas você percebe que
firefox
deve estar em um diretório que esteja naPATH
variável (provavelmente abin
), e podemos procurá-lo (veja abaixo).Procurando comandos
Para procurar comandos que você pode usar um ou mais dos seguintes:
type
,which
ewhereis
(eu incluí um link para suas páginas de manual on-line).tipo : descreve um comando e indica como seria interpretado se usado como um nome de comando. Os tipos possíveis para um comando são:
(o próprio tipo é um shell embutido, tente com
type type
: P)Executar
type firefox
nos dáque é o que queríamos saber
Se um comando for um arquivo (que você verificou
type
), também poderá usar:qual : mostra o caminho completo do comando,
Executar
which firefox
nos dáwhereis : localize os arquivos de página binário, de origem e manual de um comando.
Executar
whereis firefox
nos dáBônus
Você pode inspecionar
/usr/bin/firefox
mais de pertols -l /usr/bin/firefox
e isso fornece:Parece que
/usr/bin/firefox
é 'apenas' um link simbólico para o script/usr/lib/firefox/firefox.sh
. Se você inspecionar o script, descobrirá que o script chama/usr/lib/firefox/firefox
.Você pode descansar em paz agora :)
fonte
Não existe um diretório único equivalente exatamente à pasta Arquivos de Programas . A maneira como o Linux organiza as coisas é muito diferente do Windows.
No Windows, todo programa que instalamos recebe seu próprio diretório dentro do diretório Arquivos de Programas. Nesse diretório, outros subdiretórios são criados para diferentes tipos de arquivos. Não há estrutura fixa para subdiretórios. Os programas decidem por si mesmos como querem chamar cada diretório e onde querem colocar o quê.
Mas no Linux, quando um programa é instalado, diferentes tipos de arquivos são copiados para diferentes locais. Os executáveis são copiados para / usr / bin , arquivos de biblioteca para / usr / lib , documentação para um ou mais de / usr / man , / usr / info e / usr / doc . Se houver arquivos de configuração, eles são geralmente no diretório home do usuário ou em / etc .
fonte
A
C:\Program Files
pasta estaria/usr/bin
no Ubuntu./bin
parece maisC:\windows
.Na página de manual da hierarquia do sistema de arquivos :
O Ubuntu tem uma estrutura diferente do Windows. O Ubuntu coloca quase todos os aplicativos em um diretório, digamos
/usr/bin
. O Windows criaria uma nova pasta, por exemploMozilla Firefox
, e acrescentaria nela configurações, executáveis, DLLs, imagens etc. O Ubuntu os divide, os executáveis entram/usr/bin
, a configuração em todo o sistema/etc
, os objetos compartilhados/usr/lib
, as imagens/usr/share
, ...fonte
Os 'Arquivos de Programas' do Linux estão em toda a hierarquia. Poderia ser em
/usr/bin
,/bin
,/opt/...
, ou em outros diretórios.Acho que você encontrará algum arquivo relacionado ao seu aplicativo. Então, eu tenho uma idéia de como procurar arquivos que estão instalados na instalação do programa.
synaptic
emitindosudo apt-get install synaptic
no terminal.Properties
.Installed File
guia. O resultado é o mesmo quedpkg -L package_name
.Isso ocorre porque o linux move o arquivo instalado para os diretórios separadamente, com base em seu tipo.
/usr/bin
ou/bin
./usr/share/icons
ou desativado~/.local/share/icons
para local./opt
./usr/share/applications
ou desativado~/.local/share/applications
/usr/share/doc
/usr/lib
E muitos outros diretórios. (CMIIW, aceitando correção)
fonte
Nesta resposta, quando digo Unix, quero dizer Unix, assim como sistemas operacionais Unix-like.
O Ubuntu realmente não tem uma pasta de programas contendo todos os dados para cada programa. Nos sistemas operacionais Unix e Unix-like, TUDO é um arquivo, mesmo os comandos do terminal. Eles são arquivos também. A maneira como o Unix lida com programas pode ser bastante caótica e organizada ao mesmo tempo.
Os ícones dos programas são armazenados em / usr / share / icons / *, os executáveis do programa geralmente são armazenados em / usr / bin, / bin e outros locais com diretórios bin (bin é obv, abreviação de binário). As bibliotecas das quais os programas dependem estão em / lib.
Portanto, você acaba não com um diretório que contém todos os dados de um programa, mas os dados do programa se espalham. Embora a princípio isso pareça muito desorganizado, ele permite o compartilhamento de itens padrão, como bibliotecas e ícones.
Graças às permissões para cada arquivo, a idéia de tudo ser um arquivo é muito brilhante para ser honesto. Isso torna o Unix MUITO mais seguro que outros sistemas operacionais.
fonte
A maneira como os programas Linux e Windows são instalados é bem diferente.
O padrão comum no Windows é para um programa; ou vários programas, de um fornecedor, entre em seu próprio subdiretório em C: \ programs \ vendor ou algo semelhante.
No Linux, seus arquivos são divididos entre subdiretórios específicos, dependendo de sua função. Existem diretórios para bibliotecas, ícones, páginas de manual, arquivos de log, configuração e assim por diante. Você pode usar alguns deles, mas o sistema irá gerenciar todos eles. Eles não são acoplados, mas existem junto com arquivos semelhantes de outros programas.
Portanto, não há um equivalente real à estrutura de diretórios do Windows em uma implementação regular do Linux.
fonte
Se você instalar programas próprios, recomendo 1 pasta:
fonte
Olhe nos
/bin
,/usr/bin
e qualquer outra coisa que dizbin
.fonte