Добрый день.
Хочу поделиться с вами решением для игры с сервера(домашнего NAS).
Давно назревала идея запилить что то подобное,так как дома есть сервак Freebsd работающий 24/7. И всегда ломало перекачивать только что скачанные игры на PS3 через ftp. В принципе ps3netsrv можно установить на любой linux или BSD. Всевозможные роутеры,хранилища(NAS) итд. Так вот если для Linux есть готовое решение на всевозможных западных форумах,то для freebsd инфу пришлось собирать самому и додумывать некоторые моменты.
1455 for (;;)
1456 {
1457 struct sockaddr_in addr;
1458 unsigned int size;
1459 int cs;
1460 int i; 1461 int value;
1462
1463 size = sizeof(addr);
1464 cs = accept(s, (struct sockaddr *)&addr, (socklen_t *)&size);
1465
1466 if (cs < 0)
1467 {
1468 DPRINTF("Accept error: %d\n", get_network_error());
1469 printf("Network error.\n");
1470 break;
1471 }
1472 1473 value = 1;
1474 size = sizeof(value);
1475 if (setsockopt(s, IPPROTO_TCP, TCP_NODELAY, &value, size) < 0)
1476 {
1477 DPRINTF("Error setting socket option: %d\n", get_network_error());
1478 printf("Network error.\n");
1479 break;
1480 }
1481
1482 // Check for same client
В фаилах VIsioFile.cpp и VIsioFile.h меняем все off64_t на off_t
В папке с Makefile делаем gmake
На выходе мы получаем ps3netsrv для FREEBSD.(он появляется в этой же папке)
Использование
Usage: ./ps3netsrv rootdirectory [port] [whitelist]
Default port: 38008
Whitelist: x.x.x.x, where x is 0-255 or * (e.g 192.168.1.* to allow only connections from 192.168.1.0-192.168.1.255)
Например ps3netsrv /ps3/ 38008 172.16.0.* - значит что папка с играми /ps3/ порт 38008 разрешенно подключение только с 172.16.0.0-172.16.0.254
Необязательно
Так как у меня работает transmission-daemon(торрент качалка) права на все скачанные файлы у пользователя transmission.
Следовательно целесообразно организовать запуск ps3netsrv от имени transmission.
Можно сделать и от root и не забивать голову,но это не правильно.
Задать владельца chown transmission:transmission ps3netsrv
Задать права chmod 750 ps3netsrv
Cкопировать фаил ps3netsrv в /usr/local/bin (cp ps3netsrv /usr/local/bin), чтобы он виделся как команда из любого места в системе.
/usr/local/etc/rc.d/ps3netsrv скрипт для start stop status
Исправьте под себя user folder access
С этим скриптом ps3netsrv будет запускаться как демон (/usr/sbin/daemon)
man daemon - для справки.
Запуск /usr/local/etc/rc.d/ps3netsrv start
Для автозапуска при загрузке пишем в rc.conf ps3netsrv_enable="YES"
Управление
/usr/local/etc/rc.d/ps3netsrv start
/usr/local/etc/rc.d/ps3netsrv stop
/usr/local/etc/rc.d/ps3netsrv status
Вот и все.
Подключаемся через Multiman>net_host
Сам потестил на некоторых играх,все нормально грузиться,работает итд. Достаточно быстро.
В папке которую расшариваем, дожна быть папка GAMES и в ней уже игры.
Странная "фигня" запустилось несколько раз, сейчас при монтировании, перед выходом в "волны" плойка зависает..
при этом такая реакция только на игры с наса..
перезалили игру
ЗАПУСТИЛАСЬ
вышел, зашел - опять не работает....
Странная "фигня" запустилось несколько раз, сейчас при монтировании, перед выходом в "волны" плойка зависает..
при этом такая реакция только на игры с наса..
перезалили игру
ЗАПУСТИЛАСЬ
вышел, зашел - опять не работает....
Даже не знаю что сказать, у меня все четко работает по сей день,вообще не притрагивался к этому всему.
Напишите на чем вы делаете ps3netsrv, а так же прощивка Ps3 версия MM
Hatab000 добавил 02.03.2016 в 21:45
Сообщение от cyril-power
Привет всем! Я откомпилировал ps3netsrv для dns-323 и хотел бы поделиться исполняемым файликом. Может кому пригодится.
Запуск: ./ps3netsrv-original rootdirectory [port] [whitelist]
Default port: 38008
Whitelist: x.x.x.x, where x is 0-255 or * (e.g 192.168.1.* to allow only connections from 192.168.1.0-192.168.1.255)
Например: ./ps3netsrv-original /mnt/HD_a2/GAME 38008
Как демон: ./ps3netsrv-original /mnt/HD_a2/GAME 38008 &
Работает под ffp 0.5
Я использовал оригинальные исходники из темы Hatab000 про ps3netsrv для FreeBSD
Про автозапуск если кому надо спрашивайте, расскажу.
По сути это для Linux ?
Я просто не знаком с dns-323
Последний раз редактировалось Hatab000; 02.03.2016 в 21:45.
Причина: добавил, подумав
ps3netsrv для dns-323, dns-313, CH3SNAS Conceptronics и других однотипных NAS
Привет всем! Я откомпилировал ps3netsrv для dns-323 и хотел бы поделиться исполняемым файликом. Может кому пригодится.
Запуск: ./ps3netsrv-original rootdirectory [port] [whitelist]
Default port: 38008
Whitelist: x.x.x.x, where x is 0-255 or * (e.g 192.168.1.* to allow only connections from 192.168.1.0-192.168.1.255)
Например: ./ps3netsrv-original /mnt/HD_a2/GAME 38008
Как демон: ./ps3netsrv-original /mnt/HD_a2/GAME 38008 &
Работает под ffp 0.5
Я использовал оригинальные исходники из темы Hatab000 про ps3netsrv для FreeBSD
Про автозапуск если кому надо спрашивайте, расскажу.