Como montar um compartilhamento do Windows no OpenDreambox via Telnet?

2

Eu criei uma nova pasta na raiz do disco C chamada gravações e compartilhei com todos. Agora eu quero montar esta pasta no meu Dreambox para que eu possa gravar nele.

Mas como esta é uma caixa Dream Multimedia original com Enigma2 não tenho as opções Network Browser ou Mount Manager no menu de configurações de rede, então não posso faça isso facilmente através do menu, não sem mudar a imagem do Dreambox.

Eu li que é possível montá-lo através do Telnet. Então, como exatamente eu faço isso? Que comando ou comandos eu uso?

Encontrei estes dois comandos na web:

Exemplo 1:

mount –t cifs –o username=name,password=password //192.168.1.10/dreambox

Exemplo 2:

mount -t smbfs -o username=YourUserName //x.x.x.x/YourShareName /your/mountpoint

Posso usar qualquer um desses dois comandos? Por que ele diz cifs em um e smbfs no outro? O que esses switches significam? E também, eu tenho que fazer isso toda vez que eu reiniciar ou isso é uma configuração permanente?

Eu me conecto ao Dreambox com o PuTTYtel e ele se apresenta como o OpenDreambox 1.6.0.

Update: Aqui está a saída do comando PS no PuTTYtel.

OpenDreambox 1.6.0 dm500hd

dm500hd login: root
root@dm500hd:~# ps
  PID USER       VSZ STAT COMMAND
    1 root      1724 S    init [3]
    2 root         0 SW   [migration/0]
    3 root         0 SWN  [ksoftirqd/0]
    4 root         0 SW   [migration/1]
    5 root         0 SWN  [ksoftirqd/1]
    6 root         0 SW<  [events/0]
    7 root         0 SW<  [events/1]
    8 root         0 SW<  [khelper]
    9 root         0 SW<  [kthread]
   10 root         0 SW<  [kblockd/0]
   11 root         0 SW<  [kblockd/1]
   12 root         0 SW<  [khubd]
   13 root         0 SW   [pdflush]
   14 root         0 SW   [pdflush]
   15 root         0 SW<  [kswapd0]
   16 root         0 SW<  [aio/0]
   17 root         0 SW<  [aio/1]
   18 root         0 SW<  [ata/0]
   19 root         0 SW<  [ata/1]
   20 root         0 SW<  [ata_aux]
   21 root         0 SW<  [scsi_eh_0]
   22 root         0 SW<  [scsi_eh_1]
   23 root         0 SW   [mtdblockd]
   24 root         0 SWN  [jffs2_gcd_mtd3]
   70 root      2180 S <  udevd --daemon
  310 root         0 SW   [b_event]
  311 root         0 SW   [b_idle]
  317 root         0 SW<  [fp]
  339 root         0 SW<  [dmx0]
  345 root         0 SW<  [dmx1]
  354 root         0 SW<  [dmx2]
  355 root         0 SW<  [dmx_hw_sec]
  391 messageb  2408 S    /usr/bin/dbus-daemon --system
  394 root      1928 S    /usr/bin/wdog tpmd
  395 root      4312 S    tpmd
  398 root      1928 S    /usr/bin/wdog dccamd -
  399 root      3136 S    dccamd -
  408 avahi     3084 S    avahi-daemon: running [dm500hd.local]
  441 root      4076 S    nmbd -D
  443 root      6780 S    smbd -D
  458 root      6780 S    smbd -D
  465 root      2504 S    udhcpc -R -b -T3 -A10 -p /var/run/udhcpc.eth0.pid -i
  477 root      1712 S    /usr/sbin/zeroconf -i eth0
  493 root      2348 S    /usr/sbin/dropbear -r /etc/dropbear/dropbear_rsa_host
  496 root      1832 S    /usr/sbin/inetd
  499 root      2504 S    /sbin/syslogd -n -O /var/log/messages -s 32 -b 1 -m 2
  501 root      2504 S    /sbin/klogd -n
  614 root      2256 S    /usr/sbin/automount --pid-file=/var/run/autofs/_autof
  675 root      2504 S    /bin/sh /usr/bin/enigma2.sh
  678 root     65104 S    /usr/bin/enigma2
  687 root     65104 S    /usr/bin/enigma2
  709 root     65104 S    /usr/bin/enigma2
  717 root     65104 S N  /usr/bin/enigma2
22611 root      2824 S    telnetd
22612 root      2820 S    -sh
22737 root      2820 R    ps
root@dm500hd:~#

Atualização: eu obviamente já tenho a pasta / media.

root@dm500hd:/# cd /media
root@dm500hd:/media# cd /share
root@dm500hd:/usr/share#

Quando tento cd to /share , ele redireciona para /usr/share . Então, posso usar essa pasta em vez de criar uma nova? ...

Atualização: fiz uma nova tentativa agora ...

root@dm500hd:/# sudo mkdir /newfolder/share
-sh: sudo: not found
root@dm500hd:/# $ sudo mkdir /newfolder/share
-sh: $: not found
root@dm500hd:/# $sudo mkdir /newfolder/share
mkdir: cannot create directory '/newfolder/share': No such file or directory
root@dm500hd:/# $sudo mkdir /media/share
root@dm500hd:/# $sudo chmod a+r /media/share
root@dm500hd:/# $sudo mount -a
mount: mounting /dev/sda1 on /media/hdd failed: No such file or directory
root@dm500hd:/# edit /etc/fstab
-sh: edit: not found
root@dm500hd:/# edit /etc/fstab
-sh: edit: not found
root@dm500hd:/# open /etc/fstab
-sh: open: not found
root@dm500hd:/#

Então eu precisava adicionar o cifrão? E sem espaços no meio? Parece que funcionou desta vez ... Primeiro tentei criar uma pasta chamada newfolder . Por que recusou? Eu criei a pasta / media / share ... como isso afetou o link simbólico existente compartilhar (ou o que quer que seja) que existia anteriormente?

A sh é a casca de Bourne ou Thompson? Ou todos os shells do Linux são abreviados como sh e até mesmo Ash shell?

Como você edita um arquivo no shell? Eu tive que baixar fstab e editá-lo no Windows e enviá-lo de volta por FTP.

Então eu tentei o $sudo mount -a e isso me deu:

root@dm500hd:/# $sudo mount -a
mount: mounting /dev/sda1 on /media/hdd failed: No such file or directory
mount: mounting //192.168.0.107/recordings on /media/share failed: No such device
root@dm500hd:/#

Este é o conteúdo do meu arquivo fstab:

rootfs               /                    auto       defaults              1 1
proc                 /proc                proc       defaults              0 0
devpts               /dev/pts             devpts     mode=0620,gid=5       0 0
usbfs                /proc/bus/usb        usbfs      defaults              0 0
/dev/mtdblock2       /boot                jffs2      ro                    0 0
tmpfs                /var                 tmpfs      defaults              0 0
tmpfs                /tmp                 tmpfs      defaults              0 0
/dev/sda1            /media/hdd           auto       defaults              0 0
//192.168.0.107/recordings /media/share smbfs auto,user=classified,password=classfied 0 0

Vou tentar reiniciar a caixa e ver se funciona.

Atualização: Ainda sem sorte ...

Ainda me dá mount: mounting //192.168.0.107/recordings on /media/share failed: No such device . Eu tentei substituir o IP com o nome do computador, mas ele me dá a mesma mensagem.

Eu até tentei reverter a ordem dos termos no fstab (no caso de ser uma sintaxe), de modo que recebo / media / share primeiro na linha. Isso me deu mount: mounting /media/share on /computername/recordings failed: No such file or directory .

Atualização: tive sorte ...

Por que você insiste em montar em /media/share ? É uma coisa de convenção? Posso montar em outra pasta? Eu resolvi o problema criando uma nova pasta e um novo compartilhamento no Windows e, em seguida, usando o comando mount -t cifs .

OpenDreambox 1.6.0 dm500hd


dm500hd login: root
root@dm500hd:~# $sudo mount -a
mount: mounting /dev/sda1 on /media/hdd failed: No such file or directory
mount: mounting //192.168.0.107/recordings on /media/share failed: No such device

Acho que a parte /dev/sda1 on /media/hdd failed é porque não há nenhuma unidade de disco conectada. Este STB tem a capacidade de conectar um HDD na porta eSATA, mas não há nenhum conectado.

Acho que a segunda linha mostra porque o IP está errado. Eu acho que deveria ter sido 192.168.0.101 enquanto 192.168.0.107 era o nome da caixa STB que eu estou tentando montar.

root@dm500hd:~# ps
  PID USER       VSZ STAT COMMAND
    1 root      1724 S    init [3]
    2 root         0 SW   [migration/0]
    3 root         0 SWN  [ksoftirqd/0]
    4 root         0 SW   [migration/1]
    5 root         0 SWN  [ksoftirqd/1]
    6 root         0 SW<  [events/0]
    7 root         0 SW<  [events/1]
    8 root         0 SW<  [khelper]
    9 root         0 SW<  [kthread]
   10 root         0 SW<  [kblockd/0]
   11 root         0 SW<  [kblockd/1]
   12 root         0 SW<  [khubd]
   13 root         0 SW   [pdflush]
   14 root         0 SW   [pdflush]
   15 root         0 SW<  [kswapd0]
   16 root         0 SW<  [aio/0]
   17 root         0 SW<  [aio/1]
   18 root         0 SW<  [ata/0]
   19 root         0 SW<  [ata/1]
   20 root         0 SW<  [ata_aux]
   21 root         0 SW<  [scsi_eh_0]
   22 root         0 SW<  [scsi_eh_1]
   23 root         0 SW   [mtdblockd]
   24 root         0 SWN  [jffs2_gcd_mtd3]
   70 root      2180 S <  udevd --daemon
  313 root         0 SW   [b_event]
  314 root         0 SW   [b_idle]
  320 root         0 SW<  [fp]
  344 root         0 SW<  [dmx0]
  351 root         0 SW<  [dmx1]
  359 root         0 SW<  [dmx2]
  360 root         0 SW<  [dmx_hw_sec]
  396 messageb  2408 S    /usr/bin/dbus-daemon --system
  399 root      1928 S    /usr/bin/wdog tpmd
  400 root      4312 S    tpmd
  403 root      1928 S    /usr/bin/wdog dccamd -
  404 root      3136 S    dccamd -
  413 avahi     3084 S    avahi-daemon: running [dm500hd.local]
  451 root      4076 S    nmbd -D
  453 root      6780 S    smbd -D
  473 root      6780 S    smbd -D
  489 root      2504 S    udhcpc -R -b -T3 -A10 -p /var/run/udhcpc.eth0.pid -i
  503 root      1712 S    /usr/sbin/zeroconf -i eth0
  519 root      2348 S    /usr/sbin/dropbear -r /etc/dropbear/dropbear_rsa_host
  522 root      1832 S    /usr/sbin/inetd
  525 root      2504 S    /sbin/syslogd -n -O /var/log/messages -s 32 -b 1 -m 2
  527 root      2504 S    /sbin/klogd -n
  640 root      2256 S    /usr/sbin/automount --pid-file=/var/run/autofs/_autof
  701 root      2504 S    /bin/sh /usr/bin/enigma2.sh
  704 root     84536 S    /usr/bin/enigma2
  713 root     84536 S    /usr/bin/enigma2
  735 root     84536 S    /usr/bin/enigma2
  748 root     84536 S N  /usr/bin/enigma2
  739 root         0 SW<  [kdvb-ad-0-fe-0]
  886 root      7324 S    smbd -D
  965 root      2824 S    telnetd
  966 root      2820 S    -sh
 1063 nobody    2292 S    vsftpd
 1065 root      2316 S    vsftpd
 1076 root      2820 R    ps
root@dm500hd:~# smbd
root@dm500hd:~# $sudo mount -a
mount: mounting /dev/sda1 on /media/hdd failed: No such file or directory
mount: mounting /computername/recordings on /media/share failed: No such device

Nesta última linha eu estava tentando usar o nome da rede do computador em vez do endereço IP no arquivo fstab . Mas isso não ajudou ... talvez tenha que ser um IP, e não um nome de rede? ... não sei ...

root@dm500hd:~# $sudo mount -a
mount: mounting /dev/sda1 on /media/hdd failed: No such file or directory
mount: mounting /media/share on /computername/recordings failed: No such file or directory
root@dm500hd:~# $sudo mount -a
mount: mounting /dev/sda1 on /media/hdd failed: No such file or directory
mount: mounting //media/share on /computername/recordings failed: No such file or directory
root@dm500hd:~# $sudo mount -a
mount: mounting /dev/sda1 on /media/hdd failed: No such file or directory
mount: mounting //media/share on /computername/recordings failed: No such file or directory
root@dm500hd:~# $sudo mount -a
mount: mounting /dev/sda1 on /media/hdd failed: No such file or directory
mount: mounting //computername/recordings on /media/share failed: No such device

Eu tentei editar e atualizar o arquivo fstab de maneiras diferentes, como adicionar espaços extras ... Eu pensei em algo de formatação ...

Esta é a parte que me deu a solução de trabalho:

Eu criei uma pasta chamada dreambox sob a unidade C na máquina Windows e a compartilhei com o grupo Everyone . Então eu fiz os comandos abaixo.

root@dm500hd:~# cd /
root@dm500hd:/# mkdir
BusyBox v1.15.3 (2010-10-14 16:48:44 UTC) multi-call binary

Usage: mkdir [OPTIONS] DIRECTORY...

Create DIRECTORY

Options:
        -m      Set permission mode (as in chmod), not rwxrwxrwx - umask
        -p      No error if existing, make parent directories as needed

root@dm500hd:/# /hdd/movie
-sh: /hdd/movie: not found
root@dm500hd:/# mkdir /hdd/movie

The /hdd is a syslink (symbolic link) I think so it is really located at '/media/hdd'. Note that this is the same location where '/dev/sda1' is mounted.

root@dm500hd:/# mount -t cifs -o username=user,password=pass //192.168.0.10
7/dreambox /hdd
mount: mounting //192.168.0.107/dreambox on /hdd failed: No such device or address
root@dm500hd:/# mount cifs user=user,password=pass //192.168.0.101/dreambox /hdd

O 192.168.0.107 é o IP da caixa STB, então isso está errado. O correto para o compartilhamento de hospedagem da máquina Windows é 192.168.0.101. Além disso, é "username" e não usuário ".

Esta é a saída:

BusyBox v1.15.3 (2010-10-14 16:48:44 UTC) multi-call binary

Usage: mount [flags] DEVICE NODE [-o OPT,OPT]

Mount a filesystem. Filesystem autodetection requires /proc be mounted.

Options:
        -a              Mount all filesystems in fstab
        -r              Read-only mount
        -w              Read-write mount (default)
        -t FSTYPE       Filesystem type
        -O OPT          Mount only filesystems with option OPT (-a only)
-o OPT:
        loop            Ignored (loop devices are autodetected)
        [a]sync         Writes are [a]synchronous
        [no]atime       Disable/enable updates to inode access times
        [no]diratime    Disable/enable atime updates to directories
        [no]relatime    Disable/enable atime updates relative to modification time
        [no]dev         (Dis)allow use of special device files
        [no]exec        (Dis)allow use of executable files
        [no]suid        (Dis)allow set-user-id-root programs
        [r]shared       Convert [recursively] to a shared subtree
        [r]slave        Convert [recursively] to a slave subtree
        [r]private      Convert [recursively] to a private subtree
        [un]bindable    Make mount point [un]able to be bind mounted
        bind            Bind a directory to an additional location
        move            Relocate an existing mount point
        remount         Remount a mounted filesystem, changing its flags
        ro/rw           Read-only/read-write mount

There are EVEN MORE flags that are specific to each filesystem
You'll have to see the written documentation for those filesystems

Como você pode ver, esta foi uma sintaxe errada. É preciso usar uma das opções.

root@dm500hd:/# mount -t cifs -o username=user,password=pass //192.168.0.10
1/dreambox /hdd
root@dm500hd:/# mount -a
mount: mounting //computername/recordings on /media/share failed: No such device

Esta última linha é porque eu ainda tinha aquela linha adicionada ao arquivo fstab. Depois de editar o arquivo fstab e remover essa linha que eu havia adicionado anteriormente, este comando mount -t cifs entrou em vigor.

root@dm500hd:/# mount -a
root@dm500hd:/# $sudo mount -a
root@dm500hd:/#

Observe que não há saída de erro quando eu faço mount -a ou sudo mount -a .

Eu segui este guia: link

    
por Samir 20.09.2012 / 11:51

1 resposta

1

A maneira mais fácil de fazer isso é usando o protocolo SMB. Na sua máquina Linux, crie o ponto de montagem para a pasta compartilhada:

$ sudo mkdir /media/share
$ sudo chmod a+xr /media/share

O segundo comando define o diretório '/ media / share / para ser legível e executável (ou seja, os usuários podem mudar para esse diretório) por todos usuários.

Em sistemas * x, as configurações para montar unidades (locais ou remotas) são definidas no arquivo etc/fstab . O formato geral do arquivo é:

DRIVE  LOCAL_MOUNT_DIRECTORY FILESYSTEM OPTIONS    


Edite /etc/fstab na sua caixa linux e adicione esta linha:

//x.x.x.x/recordings /media/share smbfs auto,user=USER,password=PASS 0 0

Altere x.x.x.x./YouShareName para mostrar o IP do seu servidor Windows e configure USER e PASS corretamente. Se tudo correr bem, deve funcionar e será montado quando o sistema (linux) for reinicializado. Para testar sem reiniciar, execute:

$ sudo mount -a

Para mais informações e um tutorial mais detalhado, consulte aqui .

    
por 20.09.2012 / 16:00