j'habite dans une residence universitaire ou il y a plus de 400 chambres reliées entre elles par un reseau local puis a internet a travers un proxy (celui de l'université..)
Comme notre proxy ne nous permet pas l'utilisation de aMule et compagnie (pour telecharger une distro ou des ebooks voire meme des abandonwares :p..) il serait donc trés interessant de pouvoir squater des fichiers parmi ces 400 ordinateurs potentiellement connectés. Or voila le probleme, sous Linux le seul moyen de prendre un fichier chez quelqu'un est d'utiliser Samba et ses interminables commandes ou ptete meme Linneighborhood qui facilite la tache en tapant les commandes a notre place mai le Hic dans tout ça est que si je cherche quelque chose de particulier, je devrais m'amuser a monter tous les repertoires de tous les ordinateurs du reseau puis de chercher mon fichier (aprés avoir fait un updatedb ou si chuis mazo chercher dans chaque dossier..)..ce qui est trés penible..
Sous Windows (helas oui!) il existe un utilitaire malheureusement non libre et payant et sourtout SOUS WINDOWS, c'est "File Lan search ou Lan fileSearch ...ou un truc du genre." bref, comme vous l'avez sans doute remarqué , ce programme sert a chercher un fichier precis dans tout le reseau local et ce en un clin d'oeil(ou du moins en quelques secondes..).
Ma question est Pourquoi n'y a t-il pas d'utilitaire semblable sous Linux (j'ose esperer recevoir un "Mais siiiii!! ça existe t'as juste mal cherché!") ce qui ferait en sorte que jme sente un peu con d'ecrire un premier journal (eh wé c mon 1er) qui n'aura servi a rien ou du moins qu'a moi ou encore casser mes projets.(vous comprendrez).. mais en attendant j'aimerai dire qu'il n'est pas si compliqué de faire un programme pareil sous Linux (une boucle qui monte tous les pc du rezo dans un repertoire, une routine qui fait des fichiers de ce repertoire une base de donnée et Hop le travail est fait)
d'ailleur pourquoi ne pas en faire un projet ?
Le LinFileSearch! ou LinFS , ou ptete LiLan ! bref, libre a son programmeur d'en choisir le nom...
# p2p ?
Posté par Nico C. . Évalué à 2.
ou alors s'equiper de clients bittorrent et publier ses torrents sur un petit serveur web interne disposant d'un moteur de recherche...
ca irait tres vite (surtout sur un reseau interne), serait aussi pratique et permettrait de laisser les utilisateurs decider des fichiers qu'ils souhaitent partager sans craindre de grosses et betes failles de secu dues a leur ignorance (style "oups, j'ai partage tout mon DD sans restrictions et un petit malin m'a plante mon dossier systeme ")
quoique, les p2p n'arreteraient pas un gars qui s'y connait un peu... quoique y'aurait plein d'autres failles a tenter avant de s'embeter avec ca... enfin bref quoi :D
# Peer to peer
Posté par Gilles Mocellin . Évalué à 5.
C'est quand même fait pour, il faudrait arrêter de voir que l'aspect piratage de musique/film sur le net !
[^] # Re: Peer to peer
Posté par Corwin (site web personnel) . Évalué à 5.
D'ailleurs, on avait un interface web qui nous permettait de faire des recherches sur tous les samba et les serveurs ftp internes. C'était fait à partir d'une base de donnée qui était mise à jour tous les soirs mais je ne sais pas quel logiciel était utilisé.
[^] # Re: Peer to peer: Waste
Posté par Bruce Le Nain (site web personnel) . Évalué à 2.
http://waste.sourceforge.net/(...)
la page sur framasoft.net :
http://www.framasoft.net/article1893.html(...)
une page avec des screenshots (non mise à jour depuis début 2004) :
http://www.irixbox.com/?s=waste(...)
Un article sur linuxfr.org :
http://linuxfr.org/2003/06/02/12690.html(...)
cependant je n'ai pas testé le produit, et serait interressé par des retours ;)
# Direct connect
Posté par Vincent . Évalué à 7.
Tu peux y faire des recherches sur l'ensembles des personnes connectés (c'est ce que tu souhaites non ?), partager ce que tu souhaites, régler la vitesse d'up et de dl, sa gère les files d'attentes, etc . Il existe des clients et des serveurs pour windows et linux répondant à peu près à tous les besoins possibles.
Voici ceux dispo dans mes packages :
* net-p2p/opendchub
Homepage: http://opendchub.sf.net(...)
Description: hub software for Direct Connect
* net-p2p/dc-gui
Homepage: http://brainz.servebeer.com/dctc/(...)
Description: GUI for dctc
* net-p2p/dchub
Homepage: http://brainz.servebeer.com/dctc/#dchub(...)
Description: dchub (Direct Connect Hub), a linux hub for the p2p 'direct connect'
* net-p2p/dc-qt
Homepage: http://dc-qt.sourceforge.net/(...)
Description: Direct Connect Text Client, QT Gui
* net-p2p/ldcc
Homepage: http://www.softservice.com.pl/ldcc/(...)
Description: linux console, text-based client for DIRECT CONNECT
* net-p2p/dctc
Homepage: http://brainz.servebeer.com/dctc/(...)
Description: Direct Connect Text Client, almost famous file share program
[^] # Re: Direct connect
Posté par lukeg . Évalué à 3.
Sinon, si c pas ici, oublie mon intervention :-)
[^] # Re: Direct connect
Posté par chl (site web personnel) . Évalué à 2.
[^] # Re: Direct connect
Posté par lukeg . Évalué à 1.
[^] # Re: Direct connect
Posté par chl (site web personnel) . Évalué à 2.
[^] # Re: Direct connect
Posté par Fayçal GUENNAR . Évalué à 1.
# Et la marmotte.
Posté par farib . Évalué à 7.
Mais oui, bien sur. Surtout pour prendre HL² & le dernier xvid des studios Centropy.
Je pouffe de rire quand j'entend un mec qui me dit qu'on télécharge une distribution sur edonkey. Sur bt, pourquoi pas, et c'est sans doute le réseau qui a la plus grande utilisation légale, mais aller télécharger à 5Ko/s sur edonkey une distribution qu'on peut chopper à 500ko/s ou 5Mo/s sur un mirroir proxad ou lip6...
A part ça, "fast file search" permet d'indexer un réseau mixte samba/ftp.
konqueror en utilisation jointe avec lisa permet de naviguer de façon très souple dans un réseau samba, montant dans le fs de kde automatiquement les partages.
[^] # Re: Et la marmotte.
Posté par Johann Ollivier-Lapeyre (site web personnel) . Évalué à 0.
Mais en general, t'as raison, le ftp c'est mieux, voire bittorent si on download en meme temps que plein de monde (release d'une distrib)
[^] # Re: Et la marmotte.
Posté par farib . Évalué à 1.
[^] # Re: Et la marmotte.
Posté par Aurélien Bompard (site web personnel) . Évalué à 3.
C'est une interface en php et un crawler en perl qui parcourt ton réseau à heures fixes et qui remplit la base de données. Y'a pas mal de trucs sympas, genre les url qui sont en \\machine\fichier si le lecteur est un windows et en smb:// si c'est un linux.
# Tu peux le créer toi même ....
Posté par Colin Pitrat (site web personnel) . Évalué à 6.
[^] # Re: Tu peux le créer toi même ....
Posté par Colin Pitrat (site web personnel) . Évalué à 1.
[^] # Re: Tu peux le créer toi même ....
Posté par Colin Pitrat (site web personnel) . Évalué à 9.
C'est basé sur la commande smbclient
Bonne chance !
#!/usr/bin/perl -w
# Script de recherche de partages sur le rézo
# Largement inspiré du script de gluck pour windows.
# (C) Nicolas Deslandes Octobre 2002
use DBI;
use locale;
sub AnaMachine;
sub AddPartage;
$mainserver = "JABBA"; # Nom du controleur de domaine
$cptlog = "-U kekya\%[ldWemvldS\\!] -N";
my $dbh = DBI->connect("DBI:mysql:rezo:yoda", "user", "mdp")
or die "Impossible de se connecter à la base de données";
open MACHINES,"smbclient -L $mainserver $cptlog|";
my $started = 0; # On ne commence pas tout de suite à lire les lignes
my $firstemptyline = 1;
while()
{
# On saute les premières lignes inutiles
next unless ($started or /Server.*Comment/);
if (!$started)
{
$started = 1;
next;
}
next if /-{9}\s+-{7}/; # On saute la ligne de soulignement
# Si la ligne est vide, on arrête
last if (/^$/);
if(/\W+(.+?)\ {4,}/) {AnaMachine($1);}
}
close MACHINES;
exit;
sub AnaMachine
{
my $machine = shift;
# On regarde si la mise à jour de la machine est nécessaire
# remplacement des apostrophes pour SQL
(my $machineSQL = $machine) =~ s/'/''/g;
my $dateMAJ = $dbh->selectrow_array("SELECT date FROM PartagesMAJ WHERE machine='$machineSQL'");
#construction de la date courante
my @temp = localtime();
my $date = $temp[5] + 1900;
$date .= '-'.($temp[4]+1).'-'.($temp[3]);
$date =~ s/-(\d)-/-0$1-/;
$date =~ s/-(\d)$/-0$1/;
# Si la dateMAJ est définie, on la compare à la date courante,
# sinon, on poursuit l'analyse de la machine
if( defined $dateMAJ)
{
$dateMAJ =~ s/ 00:00:00$//;
if($dateMAJ eq $date)
{
# Cas où on n'a rien à faire : on n'affiche rien à l'écran
return;
}
}
print "Mise à jour de $machine...";
# On commence par regarder si la machine est online
my $machineSH = $machine;
$machineSH =~ s/!/\\!/g;
$machineSH =~ s/'/\\'/g; # Ne semble pas marcher
if(`smbclient -L $machineSH $cptlog | grep Connection` =~ /failed/)
{
#mettre à jour '$partageMAJ'
print " offline; on essaiera plus tard\n";
$dbh->do("UPDATE PartagesMAJ SET upState='0' WHERE machine='$machineSQL'");
return;
}
else
{
#mettre à jour 'partageMAJ'
print "\n";
# On commence par effacer les entrées de la base liées à cette machine
unless($dbh->do("DELETE FROM Partages WHERE machine='$machineSQL'"))
{
print "Impossible de supprimer les entrées de la base de données pour $machine\n";
return;
}
open(LIST,"smbclient -L \"$machine\" $cptlog|");
my $started = 0;
my $ip = 0;
while()
{
#print "Ligne : $_";
if (/Got a positive name query response from (.*?)\s/) {
$ip = $1;
# IP incorrecte : loopback; on passe à la machine suivante
next if $ip eq "127.0.0.1";
}
# On atteint d'abord les "----"
next unless $started or /-{9}\s+-/;
if (!$started)
{
$started = 1;
next;
}
# Si on rencontre une ligne vide, on sort
last if /^$/;
if(/\s+(.+?)\s+Disk/)
{
# Si le nom du partage finit par '$', on passe au suivant
next if $1 =~ /\$$/;
# Sinon, on ajoute le partage à la base de données
AddPartage($machine,$1);
}
}
close(LIST);
# $machine a été analysée; on met à jour PartagesMAJ;
# Modification de la date : on supprime tous les caractères non numériques
$date =~ s/\D//g;
unless(($dbh->do("UPDATE PartagesMAJ SET date=$date, upState='1', ip='$ip' WHERE machine='$machineSQL'") eq 1)
or ($dbh->do("INSERT INTO PartagesMAJ VALUES ('$machineSQL', '$date', '$ip', '1')") eq 1) )
{
print "Erreur recontrée durant la mise à jour de la date de $machine\n";
return;
}
}
sub AddPartage
{
my $machine = shift;
my $partage = shift;
(my $machineSQL = $machine) =~ s/'/''/g;
(my $partageSQL = $partage) =~ s/'/''/g;
my $currep = "\\\\";
open(LISTFICH, "(echo recurse && echo ls) | smbclient \"//$machine/$partage\" $cptlog|");
while()
{
next unless (/^\ {2}(.+?)\s+([DAHRS]*)\s+(\d+)\s*[a-zA-Z]{3}\s[a-zA-Z]{3}/ or /^(\\.+)$/);
next if((defined $2) and ($2 =~ /[DH]/) ); # si on détecte un attribut répertoire ou caché, on passe à la ligne suivante
# (les réperoires sont détectés grâce à $3)
if(!defined $3)
{
# Répertoire détecté : On met à jour le répertoire courant
next if $1 =~ /^\.{1,2}/; # On saute les répertoire '.' et '..'
$currep = $1;
# On modifie un peu ce qu'on a obtenu
$currep .= '\\';
$currep =~ s/\\/\\\\/g;
$currep =~ s/'/''/g;
}
else
{
# Fichier
my $nomfichcomplet = $1;
my $taille = $3;
my $nomf;
my $extf; if ($nomfichcomplet =~ /(.+)\.(.+)/)
{
$nomf=$1;
$extf=$2;
}
else
{
$nomf=$nomfichcomplet;
$extf="";
}
$nomf =~ s/'/''/g;
$extf =~ s/'/''/g;
unless($dbh->do("INSERT INTO Partages VALUES "
."('$machineSQL','$partageSQL','$currep','$nomf','$extf',$taille)"))
{
print "Impossible d'insérer le fichier \\\\$machine\\$partage$currep\\$nomf.$extf : $taille;\n";
}
}
}
close LISTFICH;
}
}
[^] # Re: Tu peux le créer toi même ....
Posté par astafyr . Évalué à 0.
En tout cas c'est gentil de le partager ^^
Enfin s'il n'est pas libre tu risque quand meme le lynchage en règle ^^
[^] # Re: Tu peux le créer toi même ....
Posté par Laurent Go . Évalué à 1.
[^] # Re: Tu peux le créer toi même ....
Posté par Laurent Go . Évalué à 1.
Désolé
[^] # Re: Tu peux le créer toi même ....
Posté par Fayçal GUENNAR . Évalué à 1.
[^] # Re: Tu peux le créer toi même ....
Posté par Laurent Go . Évalué à 2.
Ayant fait partie de la même communauté que Skippy380, je me rappelle qu'on avait aussi jeté un coup d'oeil à UntzUntzLan http://untzuntzlan.sourceforge.net/(...) mais à l'époque (2-3 ans), nous n'avions pas réussi à le faire marcher comme nous le souhaitions... Peut-être auras-tu plus de chance ?
# Wai! Kde RuLeZ :)
Posté par gnumdk (site web personnel) . Évalué à 5.
Théoriquement ca doit fonctionner, mais je n'ai jamais testé :)
# Fast File Search
Posté par sherlokk . Évalué à 2.
De souvenir, c'est un script qui scanne périodiquement les ressources réseau (samba et ftp) et met à jou une base de données. On peut faire des recherches dans cette base via une page web.
En installant ça sur une machine, toute la résidence pourra y avoir accès sans changer son propre systèmes (et oui, faut toujours penser en tant qu'utilisateur paresseux).
Peut être que ça peut aussi éviter de surcharger le réseau par des recherches incessantes de toutes les machines ?
[^] # Re: Fast File Search
Posté par CoCoZ (site web personnel) . Évalué à 2.
Il faut juste ensuite inciter les gens a partager leurs fichiers en FTP plutot qu'en samba pour ne pas trop se faire chier pour les télécharger.
[^] # Re: Fast File Search
Posté par Fayçal GUENNAR . Évalué à 2.
# Altaviron
Posté par Antoine . Évalué à 1.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.