Contexto:
Este método utiliza um roteador como um adaptador "USB para SMB", oferecendo a conveniência do USB com a velocidade do método SMB.
AVISO : você pode bloquear seu roteador ao instalar um novo firmware. Por favor, tome cuidado e não me responsabilizo por qualquer dano.
Características
- não é necessária fonte de alimentação externa quando usado com uma unidade flash USB (alimentado pela porta USB do PS2)
- suporta sistemas de arquivos FAT32, exFAT, NTFS, ext2/3/4 (portanto, não há limite de arquivo de 4 GB, a menos que você escolha FAT32)
- não há necessidade de desfragmentar
- suporta compactação do sistema de arquivos NTFS
- Taxa de transferência de 10 MB/s (6 MB/s para unidades compactadas em NTFS), sem interrupções no FMV
- usa hardware barato
- Roteador TP-Link TL-WR703N
- um sistema Linux de 64 bits para construir o firmware personalizado
- programas telnet, ssh e scp (usei PuTTY e WinSCP)
(TLWR703N, mas qualquer roteador compatível com OpenWRT com pelo menos 4 MB de flash, 32 MB de RAM e uma porta USB deve funcionar)
Este é um roteador pequeno e barato com USB. O Samba consome muitos recursos, então precisamos configurar o OpenWRT com cuidado.
Ele também consome muito pouca energia, então você pode simplesmente conectá-lo a uma das portas USB do PS2 para ligá-lo. Embora isso funcione para uma unidade flash USB, é provável que você precise de uma fonte de alimentação externa para um disco rígido USB.
OpenWRT
OpenWRT é uma versão pequena do Linux. Os roteadores são, em sua maioria, baseados em Linux, mas o OpenWRT é altamente personalizável. Existem outros firmwares personalizados disponíveis para este roteador (por exemplo, DD-WRT), mas para um roteador com apenas 4 MB de flash, precisamos atualizar um firmware simplificado e o OpenWRT permite isso.
Créditos a JuanVCS, cuja configuração semelhante me deu esta ideia:http://psx-scene.com/forums/f150/best-n... ost1195626
1) Gerar uma imagem de firmware.
Geraremos uma imagem de firmware personalizada que inclui todos os pacotes necessários e nada que não seja necessário.
Você precisa de uma máquina Linux de 64 bits para isso. As instruções detalhadas estão aqui.http://wiki.openwrt.org/doc/howto/obtai ... e.generateVocê precisa baixar o Gerador de Imagens "ar7xxx" (o usado no exemplo).
Após baixar e extrair o Gerador de Imagens, execute este comando para compilar o firmware personalizado:
Código:Selecionar tudo
make image PROFILE="TLWR703" PACKAGES="-dnsmasq -firewall -ip6tables -iptables -kmod-cfg80211 -kmod-ip6tables -kmod-ipt-conntrack -kmod-ipt-nat -kmod-ipv6 -kmod-mac80211 -kmod-nf-conntrack -kmod-nf-conntrack6 -kmod-nf-ipt -kmod-nf-ipt6 -kmod-nf-nat -kmod-nf-nathelper -kmod-ppp -kmod-pppoe -libip6tc -odhcp6c -odhcpd -ppp -ppp-mod-pppoe -sysntpd -wpad-mini kmod-usb-core kmod-usb2 kmod-usb-storage kmod-usb-storage-extras block-mount kmod-usb-uhci kmod-usb-ohci kmod-nls-cp437 kmod-nls-iso8859-1 samba36-server kmod-fs-ext4 kmod-fs-exfat kmod-fs-vfat kmod-fs-ntfs ntfs-3g kmod-fuse libpthread"i) Se estiver atualizando a partir do firmware de fábrica do seu roteador:
Código:Selecionar tudo
openwrt-15.05-ar71xx-generic-tl-wr703n-v1-squashfs-factory.binii) Se você estiver atualizando sobre um firmware OpenWRT existente:
Código:Selecionar tudo
openwrt-15.05-ar71xx-generic-tl-wr703n-v1-squashfs-sysupgrade.binOBSERVAÇÃO : se o seu roteador tiver outro firmware personalizado instalado (por exemplo, DD-WRT), você deverá revertê-lo para o firmware de fábrica antes de atualizar o firmware OpenWRT personalizado.
OBSERVAÇÃO 2 : isso não inclui uma interface web, portanto, toda a configuração deve ser feita via telnet e ssh.
2) Configure o OpenWRT
a) Conecte-se ao seu roteador e defina a senha de root.
Ao efetuar login no seu roteador pela primeira vez, você só terá acesso via telnet. Você precisa fazer isso para definir sua senha, após o qual você só poderá efetuar login usando ssh.
i) Defina o endereço IP do seu PC para este endereço estático: 192.168.1.2
ii) Conecte-se ao roteador em 192.168.1.1 usando telnet
iii) Digite "passwd" e escolha uma senha para o usuário root
b) Configure os arquivos de configuração do OpenWRT
i) Como no item 2a acima, defina seu PC para 192.168.1.2 e conecte-se a 192.168.1.1, mas usando ssh desta vez. Use "root" como usuário e a senha que você criou em 2a.
Para as etapas a seguir, você precisará usar o editor de texto vi. É um pouco confuso se você nunca o usou antes, então aqui estão os comandos básicos que você precisará:
Código:Selecionar tudo
vi textfile command line to launch vi to edit textfile
i enter edit mode (where you can type and modify text)
esc exit edit mode
dd delete a whole line
:x save and exit
:q! exit without savingEm "config interface 'lan'", defina o proto e o ipaddr como o seguinte:
Código:Selecionar tudo
option proto 'static'
option ipaddr '192.168.1.1'Código:Selecionar tudo
config 'mount'
option target '/mnt/usb'
option device '/dev/sda1'
option enabled '1'
option options 'rw,nosuid,nodev,noatime,nodiratime'
Código:Selecionar tudo
mkdir /mnt/usbiv) Edite /etc/config/samba e insira isto no final do arquivo:
Código:Selecionar tudo
config 'sambashare'
option 'name' 'PS2SMB'
option 'path' '/mnt/usb'
option 'guest_ok' 'yes'
option 'create_mask' '0777'
option 'dir_mask' '0777'
option 'read_only' 'no'
vi) Edite /etc/init.d/samba e comente os últimos 4 comandos usando "#", assim:
Código:Selecionar tudo
# procd_open_instance
# procd_set_param command /usr/sbin/nmbd -F
# procd_set_param respawn
# procd_close_instance
OBSERVAÇÃO : para ver seu compartilhamento Samba no Windows, agora você precisa especificar 192.168.1.1 (você não poderá "navegar" por ele).
vii) Edite /etc/init.d/network e:
Código:Selecionar tudo
change the third line from "START=20" to "START=65"
insert "sleep 1" after the "start_service() {" line
Código:Selecionar tudo
/etc/init/d/network enableviii) Crie um novo arquivo de texto usando vi /etc/init.d/mountntfs e copie-o em:
Código:Selecionar tudo
#!/bin/sh /etc/rc.common
START=41
start() {
ntfs-3g /dev/sda1 /mnt/usb -o rw,sync
}Código:Selecionar tudo
chmod 777 /etc/init.d/ntfsmountCódigo:Selecionar tudo
/etc/init.d/ntfsmount enable3) Configurar o OPL:
Abra o OPL no seu PS2 e pressione Iniciar para acessar os menus de configurações.
Configurações:
Modo de inicialização do dispositivo ETH: Automático
Configuração de rede:
Código:Selecionar tudo
Advanced options: 100Mbit full-duplex
-PS2-
IP address: static,
192.168.1.2,
Mask: 255.255.255.0,
Gateway: 192.168.1.1,
DNS Server 192.168.1.1
-SMB Server- Address type: IP, Address: 192.168.1.1, Port: 445
Share: PS2SMB
Leave user and password blank4) Estrutura de arquivos da unidade USB
Coloque as pastas OPL padrão no diretório raiz (CD, DVD, ART, etc.)
5) Conecte e ligue seu PS2!
Se tudo correr bem, o OPL inicializará a lista de jogos em cerca de 30 segundos.
Se você receber o erro "SMB: 300" no OPL ou uma lista de jogos em branco, tente primeiro entrar na página de configuração de rede e selecionar "reconectar" (caso seja um problema de tempo). Assim que o OpenWRT estiver instalado e funcionando, uma reinicialização suave carregará mais rápido, pois a energia das portas USB será mantida.
OBSERVAÇÕES:
Compressão NTFS.
Isso é muito útil se você tiver espaço limitado no seu pendrive. O NTFS possui a capacidade integrada de compactar arquivos, compactando-os de forma transparente e eficaz. É fácil de usar: basta clicar com o botão direito do mouse em um arquivo em Windows > Propriedades > Avançado e marcar a opção "Compactar conteúdo para economizar espaço em disco". Há duas desvantagens nisso: 1) os dados serão descompactados pelo roteador, consumindo tempo do processador e reduzindo a taxa de transferência (veja o benchmark abaixo) e 2) usar a compactação NTFS causa fragmentação severa, então você pode querer desfragmentar (embora não seja necessário).
Benchmarking:
Usei o Ghostbusters para testar a velocidade de carregamento em tempo real, pois demora uma eternidade para iniciar! Também notei que ele compacta particularmente bem, com o arquivo de 4 GB ocupando apenas 1,7 GB de espaço em um pendrive NTFS compactado (deve haver alguns dados fictícios lá). Eu meço o tempo entre iniciar o OPL e o primeiro vídeo de introdução aparecer:
Para meu pendrive USB2 Sandisk Cruiser Fit:
FAT32, OPL no modo USB:1m57s
NTFS compactado, OPL no modo SMB:1m30s
ext4, OPL no modo SMB:1m15s
Quando conectado ao meu PC, a taxa de transferência é de pouco mais de 10MB/s, caindo para cerca de 6MB/s para um drive compactado NTFS.
Por que você ainda pode usar FAT32?
FMCB e OPL suportam esse formato nativamente, então você pode usar o mesmo pendrive no roteador ou conectado diretamente ao PS2!
Podemos acelerar isso?
Sim - para reduzir em cerca de 5 segundos o tempo de inicialização, você pode instalar o mod U-Boot do pepe2k (https://github.com/pepe2k/u-boot_mod)
Já experimentei várias outras configurações de samba e rede, mas não encontrei nada que fizesse uma diferença mensurável.
Tentei configurar isso em um Nexx WT3020H, que é mais rápido, mais barato e tem mais memória, mas consegui danificar o conector USB antes de, de alguma forma, bloqueá-lo!
Posso habilitar o Wi-Fi para conectar meu PS2 à internet?
Provavelmente há espaço para isso, mas reduzi o firmware e a configuração ao básico aqui, então você precisaria adicionar pacotes reconstruindo o firmware ou usando o opkg com pacotes de instalação offline.
Para fazer:
Ao configurar isso, frequentemente me deparei com problemas em que o OPL parecia se conectar ao roteador antes que o samba fosse totalmente inicializado. Acho que isso pode ser resolvido combinando a configuração dos scripts init.d para serem executados na ordem correta e a inserção de comandos sleep. É realmente necessário que alguém com um melhor entendimento do processo de inicialização otimize isso.
Você poderia compartilhar uma imagem de firmware pré-configurada com todos os itens acima?
Eu provavelmente conseguiria fazer isso, mas haveria um risco maior de bloquear os roteadores de outras pessoas.


0 Comentario:
Postar um comentário