Прослушивание mp3 с расшаренных в сети папок без (предварительного переписывания у себе на комп)

Разные проблемы звука, видео, обсуждение разных устройств и т.д.

Модератор: Модераторы разделов

Ivan1
Сообщения: 80

Прослушивание mp3 с расшаренных в сети папок без

Сообщение Ivan1 »

Дистр mandriva 2007 PP+.

Пробую прослушивать с расшареных виндовскими юзерами в сетку папок с помощью amarok (да и другие пробовал плееры) - пишет сообщение что не может воспроизвести или ещё что то в этом роде короче напрямую не играет. Чтобу проиграть надо сначала скопировать к себе на комп папку с музыкой а потом её можно слушать без проблем. В то же время винда XP нормально воспроизводит без копирования эти расшаренные папки своим WMP 11.

Как сделать чтобы amorok и др. плееры воспроизводили без копирования а сразу с расшаренной папки?
Спасибо сказали:
Envel
Сообщения: 44

Re: Прослушивание mp3 с расшаренных в сети папок без

Сообщение Envel »

smb - это чисто виндовый протокол. В linux идеология другая, там все используемые устройства и сетевые ресурсы нужно монтировать. Однако, в gnome многие приложения (использующие gnome-vfs) позволяют напрямую воспроизводить не только в smb-ресурсов, но и с ftp (чего в винде нету, разумеется).
Для большего удобства рекомендую использовать smbnetfs для "сетевого окружения", привычного из windows.
Спасибо сказали:
Ivan1
Сообщения: 80

Re: Прослушивание mp3 с расшаренных в сети папок без

Сообщение Ivan1 »

А как пкет называется этот в моём дистрибутиве (MAndriva 2007 PP+)? По названию smbnetfs я ненашол да и просто по запросу smb я не нашол ни одного пакета с буквами netfs или даже просто fs. Есть только xine-smb что вроде как относится к проигрывателю xine. Как пакет называется?
Спасибо сказали:
Envel
Сообщения: 44

Re: Прослушивание mp3 с расшаренных в сети папок без

Сообщение Envel »

В твоем дистрибутиве скорее всего нет такого пакета. Необходимо собрать и установить самому. Для этого тебе потребуются:
- набор средств для сборки (gcc, make и т.п.)
- заголовочные файлы нужных библиотек (libfuse, libsmbclient все с постфиксом devel или dev) и сами библиотеки
Исходники брать здесь: http://sourceforge.net/project/showfiles.php?group_id=171223

Собирается обычным способом (./configure, make, под рутом make install).
Использовать:
smbnetfs -o allow_other /smb/

где /smb - каталог, в который будет отображено сетевое окружение. В ~/.smb/ нужно скопировать конфиг smbnetfs.conf, который имеется в распакованных исходниках (пример) - поправьте при необходимости, подробности - в самом конфиге в комментариях.
Спасибо сказали:
Ivan1
Сообщения: 80

Re: Прослушивание mp3 с расшаренных в сети папок без

Сообщение Ivan1 »

Просьба к знающим людям пояснить подробней про эту программу.

Вот что написано в файле INSTALL этого пакета:

Код: Выделить всё

This file describe how to install and use smbnetfs (old name smbfs) program.
smbnetfs is a program that mount microsoft windows network.

1) install fuse-2.3 or later (see [url=http://fuse.sourceforge.net/)]http://fuse.sourceforge.net/)[/url]

2) load fuse module:

    modprobe fuse

3) compile smbnetfs and copy it somewhere (ex: /usr/local/bin)

    tar xjf ./smbnetfs-0.3.8.tar.bz2
    cd smbnetfs-0.3.8

    ./configure
    make
    make install

    mkdir -p ~/.smb
    cp /etc/samba/smb.conf ~/.smb
    cp doc/smbnetfs.conf ~/.smb/smbnetfs.conf
    touch ~/.smb/smbnetfs.auth
    touch ~/.smb/smbnetfs.host
    chmod 600 ~/.smb/smbnetfs.*

4) tune parameters in ~/.smb/smbnetfs.* files

5) mount filesystem

    mkdir mountpoint
    smbnetfs mountpoint

6) enjoy ....

    cd mountpoint

Я всё выполнил как написано команда в команду и вроде она заработала я через MC или командной строй вижу примонтированные рабочии группы и могу по ним лазить, а вот через KDE или любым плеяром я не вижу не директрории mountpoint ни рабочих груп в ней, ни компов ни файлов на них.

эту директорию я создал в директории /mnt где примонтированны DVD RW, floppy, флешка и виндовые разделы.

Где находится конфиг этой программы? я его нашол только в /usr/local/share/doc/smbnetfs/smbnetfs.conf и ни в каком каталоге etc его нет. Куда надо его положить?

что означают вот эти команды:

Код: Выделить всё

mkdir -p ~/.smb
    cp /etc/samba/smb.conf ~/.smb
    cp doc/smbnetfs.conf ~/.smb/smbnetfs.conf
    touch ~/.smb/smbnetfs.auth
    touch ~/.smb/smbnetfs.host
    chmod 600 ~/.smb/smbnetfs.*

Я ни где немогу найти ни файла ни каталогов ~/.smb ~/.smb/smbnetfs.auth ~/.smb/smbnetfs.host

Что это такие за файлы?

В какой каталог лучше монтировать? Если я что сделал не правильно то как надо сделать правильно?

вот вывод установки и всёх команд с консоли что я делал:

Код:

[root@Enigma ~]# rpm -qa | grep samba samba-client-3.0.23b-7mdv2007.0 samba-server-3.0.23b-7mdv2007.0 samba-common-3.0.23b-7mdv2007.0 [root@Enigma ~]# modprobe fuse [root@Enigma ~]# cd /usr/local/src [root@Enigma src]# ls smbnetfs-0.3.10.tar.bz2 squid-2.6.STABLE16/ squid-2.6.STABLE16.tar.gz [root@Enigma src]# tar xjf smbnetfs-0.3.10.tar.bz2 [root@Enigma src]# ls smbnetfs-0.3.10/ smbnetfs-0.3.10.tar.bz2 squid-2.6.STABLE16/ squid-2.6.STABLE16.tar.gz [root@Enigma src]# cd smbnetfs-0.3.10 [root@Enigma smbnetfs-0.3.10]# ./configure checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for style of include used by make... GNU checking dependency style of gcc... gcc3 checking for pkg-config... /usr/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking for FUSE... yes checking for struct fuse_operations.create... yes checking for iconv_open... yes checking for setlocale... yes checking for backtrace_symbols_fd... yes checking for smbc_new_context in -lsmbclient... yes checking for SMBCCTX.close_fn... yes checking for struct statfs.f_namelen... yes checking for struct statfs.f_namemax... no configure: creating ./config.status config.status: creating Makefile config.status: creating src/Makefile config.status: creating src/config.h config.status: executing depfiles commands Do not use libsmbclient version less then 3.0.21 as they have many memory leak affecting the SMBNetFS. [root@Enigma smbnetfs-0.3.10]# make Making all in src make[1]: Entering directory `/usr/local/src/smbnetfs-0.3.10/src' make all-am make[2]: Entering directory `/usr/local/src/smbnetfs-0.3.10/src' if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wall -W -D_REENTRANT -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -DFUSE_USE_VERSION=25 -MT common.o -MD -MP -MF ".deps/common.Tpo" -c -o common.o common.c; \ then mv -f ".deps/common.Tpo" ".deps/common.Po"; else rm -f ".deps/common.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wall -W -D_REENTRANT -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -DFUSE_USE_VERSION=25 -MT buffer.o -MD -MP -MF ".deps/buffer.Tpo" -c -o buffer.o buffer.c; \ then mv -f ".deps/buffer.Tpo" ".deps/buffer.Po"; else rm -f ".deps/buffer.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wall -W -D_REENTRANT -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -DFUSE_USE_VERSION=25 -MT array.o -MD -MP -MF ".deps/array.Tpo" -c -o array.o array.c; \ then mv -f ".deps/array.Tpo" ".deps/array.Po"; else rm -f ".deps/array.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wall -W -D_REENTRANT -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -DFUSE_USE_VERSION=25 -MT charset.o -MD -MP -MF ".deps/charset.Tpo" -c -o charset.o charset.c; \ then mv -f ".deps/charset.Tpo" ".deps/charset.Po"; else rm -f ".deps/charset.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wall -W -D_REENTRANT -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -DFUSE_USE_VERSION=25 -MT auth.o -MD -MP -MF ".deps/auth.Tpo" -c -o auth.o auth.c; \ then mv -f ".deps/auth.Tpo" ".deps/auth.Po"; else rm -f ".deps/auth.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wall -W -D_REENTRANT -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -DFUSE_USE_VERSION=25 -MT smbctx.o -MD -MP -MF ".deps/smbctx.Tpo" -c -o smbctx.o smbctx.c; \ then mv -f ".deps/smbctx.Tpo" ".deps/smbctx.Po"; else rm -f ".deps/smbctx.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wall -W -D_REENTRANT -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -DFUSE_USE_VERSION=25 -MT smbitem.o -MD -MP -MF ".deps/smbitem.Tpo" -c -o smbitem.o smbitem.c; \ then mv -f ".deps/smbitem.Tpo" ".deps/smbitem.Po"; else rm -f ".deps/smbitem.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wall -W -D_REENTRANT -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -DFUSE_USE_VERSION=25 -MT reconfigure.o -MD -MP -MF ".deps/reconfigure.Tpo" -c -o reconfigure.o reconfigure.c; \ then mv -f ".deps/reconfigure.Tpo" ".deps/reconfigure.Po"; else rm -f ".deps/reconfigure.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wall -W -D_REENTRANT -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -DFUSE_USE_VERSION=25 -MT function.o -MD -MP -MF ".deps/function.Tpo" -c -o function.o function.c; \ then mv -f ".deps/function.Tpo" ".deps/function.Po"; else rm -f ".deps/function.Tpo"; exit 1; fi if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wall -W -D_REENTRANT -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -DFUSE_USE_VERSION=25 -MT main.o -MD -MP -MF ".deps/main.Tpo" -c -o main.o main.c; \ then mv -f ".deps/main.Tpo" ".deps/main.Po"; else rm -f ".deps/main.Tpo"; exit 1; fi gcc -g -O2 -Wall -W -D_REENTRANT -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -DFUSE_USE_VERSION=25 -rdynamic -o smbnetfs common.o buffer.o array.o charset.o auth.o smbctx.o smbitem.o reconfigure.o function.o main.o -lsmbclient -lfuse -lpthread make[2]: Leaving directory `/usr/local/src/smbnetfs-0.3.10/src' make[1]: Leaving directory `/usr/local/src/smbnetfs-0.3.10/src' make[1]: Entering directory `/usr/local/src/smbnetfs-0.3.10' make[1]: Цель `all-am' не требует выполнения команд. make[1]: Leaving directory `/usr/local/src/smbnetfs-0.3.10' [root@Enigma smbnetfs-0.3.10]# make install Making install in src make[1]: Entering directory `/usr/local/src/smbnetfs-0.3.10/src' make[2]: Entering directory `/usr/local/src/smbnetfs-0.3.10/src' test -z "/usr/local/bin" || mkdir -p -- "/usr/local/bin" /usr/bin/install -c 'smbnetfs' '/usr/local/bin/smbnetfs' make[2]: Цель `install-data-am' не требует выполнения команд. make[2]: Leaving directory `/usr/local/src/smbnetfs-0.3.10/src' make[1]: Leaving directory `/usr/local/src/smbnetfs-0.3.10/src' make[1]: Entering directory `/usr/local/src/smbnetfs-0.3.10' make[2]: Entering directory `/usr/local/src/smbnetfs-0.3.10' make[2]: Цель `install-exec-am' не требует выполнения команд. test -z "/usr/local/share/doc/smbnetfs" || mkdir -p -- "/usr/local/share/doc/smbnetfs" /usr/bin/install -c -m 644 'doc/smbnetfs.conf' '/usr/local/share/doc/smbnetfs/smbnetfs.conf' /usr/bin/install -c -m 644 'doc/RUSSIAN.FAQ' '/usr/local/share/doc/smbnetfs/RUSSIAN.FAQ' /usr/bin/install -c -m 644 'doc/INSTALL' '/usr/local/share/doc/smbnetfs/INSTALL' make[2]: Leaving directory `/usr/local/src/smbnetfs-0.3.10' make[1]: Leaving directory `/usr/local/src/smbnetfs-0.3.10' [root@Enigma smbnetfs-0.3.10]# mkdir -p ~/.smb [root@Enigma smbnetfs-0.3.10]# cp /etc/samba/smb.conf ~/.smb [root@Enigma smbnetfs-0.3.10]# cp doc/smbnetfs.conf ~/.smb/smbnetfs.conf [root@Enigma smbnetfs-0.3.10]# chmod 600 ~/.smb/smbnetfs.* [root@Enigma smbnetfs-0.3.10]# modprobe fuse [root@Enigma smbnetfs-0.3.10]# mkdir mountpoint [root@Enigma smbnetfs-0.3.10]# touch ~/.smb/smbnetfs.auth [root@Enigma smbnetfs-0.3.10]# touch ~/.smb/smbnetfs.host [root@Enigma smbnetfs-0.3.10]# chmod 600 ~/.smb/smbnetfs.* [root@Enigma smbnetfs-0.3.10]# cd /mnt [root@Enigma mnt]# mkdir mountpoint [root@Enigma mnt]# smbnetfs mountpoint [root@Enigma mnt]# ls cdrom/ floppy/ mountpoint/ removable/ win_c/ win_d/ [root@Enigma mnt]#
Спасибо сказали:
Envel
Сообщения: 44

Re: Прослушивание mp3 с расшаренных в сети папок без

Сообщение Envel »

Отвечу на часть вопросов. Вы создали точку монтирования под root и, соответственно, только root имеет к ней доступ. Измените владельца и права и добавьте опцию -o allow_other, если не поможет.
P.S. похвально, что вы читаете инструкции.
Спасибо сказали: