Criando um comando que compacta um arquivo e salva em um usb, mas não consegue detectar o usb no linux

Criando um comando que compacta um arquivo e salva em um usb, mas não consegue detectar o usb no linux

Primeiro de tudo, não consigo detectar o USB no Linux usando a linha de comando. Eu verifico o diretório dev e ainda não consigo encontrar o usb. usei o comando df para verificar o usb. Eu conectei e digitei df e depois desconectei e digitei df novamente e nada mudou. Estamos usando um servidor (telnet) para usar a linha de comando do Linux em um sistema operacional Windows 7.

O segundo problema que tenho é como executar o script bash que criei. Parece que não consigo colocar meu arquivo .sh em /usr/bin/. Gostaria de tornar meu comando executável em todos os diretórios como um comando normal. Desculpe, ainda sou novato nessas coisas. Isso é o que eu ganho ao ficar muito tempo no Windows.

Desculpe pelo meu Inglês. Agradeço antecipadamente.

Responder1

df mostrará apenas o sistema de arquivos montado. A distribuição Linux que você usa pode ou não montar automaticamente unidades USB.

O método certo para fazer algo no caso de inserção e remoção de unidades USB é usar regras do udev. Verhttp://reactivated.net/writing_udev_rules.html

Você também pode usar o comando lsusb para ver o que está atualmente presente no barramento USB. Ver:http://linuxcommand.org/man_pages/lsusb8.html

Qual deles é o certo para o seu caso depende do seu caso de uso específico.

Responder2

Como você está acessando remotamente, provavelmente não será montado automaticamente, já que o gerenciador de arquivos da área de trabalho na maioria dos "ambientes" é o que monta essas mídias na maioria dos sistemas. É lamentável, mas é assim que as distros “amigáveis” as tornam.

Primeiro você pode descobrir se o USB está funcionando executando isto:

/sbin/udevadm monitor

Em seguida, conecte e desconecte seu disco USB. Você deverá ver alguns eventos impressos. Enquanto estiver, procure em /dev/disk/by-id e veja se você vê o nó do dispositivo (link simbólico).

Se você fizer isso, poderá montá-lo assim:

mkdir /mnt/media1
mount -t auto /dev/disk/(fullpathtodevice) /mnt/media1

você deve desmontá-lo antes de removê-lo.

Você deve ser superusuário (root) para fazer isso ou ser habilitado pelo root e nos grupos certos.

Em relação à sua segunda pergunta, o lugar certo para colocar scripts personalizados para uso em todo o host é /usr/local/bin. Novamente, você deve ser root para fazer isso.

Responder3

O local correto para colocar programas que não são fornecidos com o sistema operacional é /usr/local/bin. O diretório /usr/local/bin está incluído na variável PATH na maioria das distribuições Linux.

Responder4

gby está correto - o df detectará apenas sistemas de arquivos montados.

Sugiro usar uma fstabregra simples, que detalho como criar em outra respostaaqui.

Claro, isso exige que você realmentemontaro sistema de arquivos posteriormente - seu gerenciador de arquivos (eu uso pcmanfm - sei que Thunar também faz isso) deve detectar essas linhas em seu fstab e listá-las como montáveis. A maneira como você monta a unidade depende do gerenciador de arquivos, mas geralmente envolve clicar com o botão direito do mouse no ícone e pressionar Mount. O mesmo vale para a desmontagem quando terminar de usar a unidade.

Você também pode fazer mount /dev/insert-usb-device-here/umount /dev/insert-usb-device-here


Nem é preciso dizer que você deve sufazer sudoroot antes de fazer essas coisas.

informação relacionada