Qual é o equivalente para alternar unidades no terminal no Linux?


38

No DOS, eu alternar entre diferentes unidades de digitação c:, d:, e:e assim por diante. Mas isso não funciona dessa maneira no Linux.

Alguém poderia me dizer como alternar entre unidades diferentes?


sim .. usando linux pela primeira vez. hav de aprender muito
saiy2k

Apenas para esclarecer, pois esse é um equívoco comum, causando mais problemas de entendimento: o DOSBox é um emulador, o cmd.exe , um interpretador de linha de comando para versões do Windows não baseadas no DOS e o COMMAND.COM, um shell do sistema para o DOS. Embora a interação do usuário com esses programas e a aparência possa ser semelhante, eles não são os mesmos.
LiveWireBT

Respostas:


23

O Linux realmente não tem como trabalhar com "unidades", por si só, exceto com utilitários de sistema que acessam partições; eles geralmente precisam especificar a unidade que contém a partição. Mas se cada uma das unidades tiver apenas uma partição, isso realmente não importa.

De qualquer forma, para acessar uma unidade, você realmente precisa especificar a partição de alguma maneira, geralmente com uma definição como / dev / sda1 (1ª partição na 1ª unidade) ou / dev / sda2 (2ª partição na primeira unidade). Usando o Utilitário de Disco ou gparted, você pode ver todas as partições graficamente. Se você estiver usando apenas o terminal, descobri que o comando "blkid" é útil para listar as unidades com seus UUIDs. Eu uso o formulário:

sudo blkid -c /dev/null

Usando o terminal, você precisa montar uma partição para realmente usá-la. Isso é realmente muito fácil de fazer. Na maioria dos casos, você desejaria usar um diretório vazio como o "ponto de montagem"; se o diretório não estiver vazio, seu conteúdo ficará mascarado e indisponível durante a montagem. Isso pode ser útil em determinadas circunstâncias, como testar ou alterar temporariamente uma configuração por algum outro motivo, pois aliviará a necessidade de renomear ou excluir o conteúdo atual.

Se você possui um diretório chamado / mnt / drive2 (/ mnt é comumente usado, mas pode estar no seu diretório pessoal, se você quiser) e sua unidade é / dev / sdb, com uma única partição, o comando mais simples é:

sudo mount -t type /dev/sdb1 /mnt/drive2

onde "type" é o tipo mostrado no comando blkid, como ntfs, ext4, etc.

EDIT: para experimentar, não tenha medo de tentar o comando mount. É apenas temporário até você reiniciar (ou desmontar usando o comando "umount"). Para torná-lo permanente, você precisa inseri-lo /etc/fstab. Se você quiser fazer isso, experimente criar uma entrada e, em seguida, use o comando "mount -a" para montar tudo /etc/fstab. Se houver erros, ele informará e você poderá corrigir e repetir até que funcione.


1
A primeira partição da primeira unidade é sda1, não há sda0
enzotib

Opa, desculpe, você está certo. Eu me acostumei a usar UUIDs que esqueci. E como tenho muitas partições, sempre tenho que procurá-las para ver qual delas usar, para não pensar nisso. Vou editar minha resposta, mas tome nota para que seu comentário não pareça deslocado.
Marty Fried

12

Os discos rígidos (unidades, como você os chama) contêm partições e cada partição contém um sistema de arquivos.

No Linux e Unix, existe um sistema de arquivos principal chamado sistema de arquivos raiz , e indicado com /. Outros sistemas de arquivos (reais ou virtuais) são montados no sistema de arquivos raiz em um ponto de montagem , ou seja, um diretório vazio usado como ponto de partida para o sistema de arquivos específico, de forma que todos os arquivos possam ser acessados ​​como descendentes do diretório raiz.

Se você digitar o comando mountsem opção, verá algo como o seguinte:

sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,relatime,size=764668k,nr_inodes=191167,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=153392k,mode=755)
/dev/sda5 on / type ext4 (rw,noatime,errors=remount-ro,user_xattr,barrier=1,data=ordered)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,relatime,size=306784k)
tmpfs on /run/shm type tmpfs (rw,nosuid,nodev,relatime,size=306784k)
/dev/sda7 on /media/data type ext4 (rw,noatime,user_xattr,acl,barrier=1,data=ordered)
rpc_pipefs on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)
XXX.XXX.163.168:/media/data/ on /media/data/mnt type nfs4 (rw,nosuid,noexec,relatime,vers=4,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=XXX.XXX.163.76,minorversion=0,local_lock=none,addr=XXX.XXX.163.168)
gvfs-fuse-daemon on /home/enzotib/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000)

onde você pode ver que a partição /dev/sda5(quinta partição do disco rígido /dev/sda) está montada e /, portanto, é a partição raiz.
Além disso, você vê /dev/sda7, outra partição / sistema de arquivos, montada /media/data, para que cd /media/datacorresponda efetivamente à d:terminologia do Windows.

Existem muitos outros sistemas de arquivos montados nesta saída, como você pode ver, e são todos sistemas de arquivos virtuais, isto é, o sistema de arquivos não corresponde a uma partição de disco. E você pode ver um sistema de arquivos montado em NFS, um sistema de arquivos virtual vinculado a um sistema de arquivos real disponível em outra máquina pela rede (a linha de saída na qual você vê um endereço IP em parte deliberadamente obscurecido por mim).

Você pode ver a simplicidade de ter uma única estrutura para acessar todos os seus arquivos e, em alguns casos, também arquivos remotos.

Perguntas relacionadas:


1
O uso lsblkpode ser um pouco mais fácil de ler e lista apenas os dispositivos de armazenamento em bloco (sem sysfs, proc, cgroup etc.).
LiveWireBT

cd ~para voltar parahome directory
Aakash Shah

1
@AakashShah: cd ~é uma versão curta do cd, que faz a mesma coisa.
enzotib

12

O Ubuntu mantém todos os discos adicionais montados no /mediadiretório, então use

cd /media/$USER/<your-drive-name>

Como a resposta abaixo, o diretório é cd /media/$USER/<your drive name>.
Bobort 13/09/18

7

é fácil

cd /media/$USER/{the name of the drive}

no futuro, se você esquecer, basta ir ao drive com o seu gerenciador de arquivos, escolher uma pasta aleatória e clicar com o botão direito do mouse em uma área em branco -> propriedades e ver o "local"


5

Você também pode simplesmente navegar para a pasta na unidade desejada e clicar com o botão direito do mouse, abrir no terminal.


0

O Ubuntu pode usar, em seu diretório pessoal (elimine <e> e substitua " seu nome de usuário " pelo seu nome de usuário real no qual você fez login no Linux , "nome da unidade" pelo nome do seu disco rígido).

cd /media/<yourusername>/<drive name>

Todos os discos montados estão nesse diretório / media / yourusername / . Se você não souber o nome da unidade, sempre poderá procurar no gerenciador de arquivos -ou- através do terminal (novamente a partir do diretório inicial)

ls /media/<yourname>/

Você pode usar o sd # e o mnt descritos; no entanto, acho que você estava procurando uma resposta fácil.


Os comandos que você forneceu usam caminhos absolutos e não precisam ser executados no diretório inicial do usuário.
jkt123

0

Na verdade, para mim é assim:

cd /media/<user>/New\ Volume/

Com New Volumesendo o nome da unidade externa. e usuário sendo meu nome de usuário.

Não sei por que a barra invertida, suponho por causa do espaço?


2
Sim, é por causa do espaço.
Muru

1
Sim, eu evitaria usar o Spaces em nomes de pastas ou discos ou mesmo nomes de arquivos. Basta usar o CamelCase.
Bobort 13/09/18
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.