Aller au contenu

Richard

Members
  • Compteur de contenus

    2 008
  • Inscription

  • Dernière visite

Messages posté(e)s par Richard

  1. Les séries que j'ai apprécié :

     

    - Stargate

    - Stargate Atlantis

    - Desperate Housewifes

    - 24 (où on se prend à aimer détester des personnages)

    - Lost

    - Babylon 5

    - X-files

    - Mc Gyver

    - Sliders

     

    Dernièrement, j'ai a-d-o-r-é Firefly, une série de SF en VO qui n'a pas eu l'audience mérité aux USA, et qui a donc du s'arrêter prématurément (les glands de la fox ont passé les épisodes dans le désordre, et à des heures indues). Il n'existe donc que la 1ère saison. Cependant, vu l'engouement des fans et les ventes de DVD, Joss Whedon a tourné le film Serenity, qui fait suite à la série TV (d'ailleurs, vaut mieux avoir vu la série avant de voir le film). Cette série nous propose un mix entre sci-fi et western, dans lequel on suit une équipe de contrebandiers au comportement... typé. J'ai même acheté le jeu de rôle.

     

    Sinon, j'ai hâte de voir Battlestar Gallactica.

     

    Et... vive la SF!

    :biere:

  2. Le problème,

     

    ce n'est ni le temps (enfin, bientôt), ni les compétences, ni l'envie.

     

    Il nous manque simplement un *vrai* développeur orienté web (à la limite, peu importe le langage, tant qu'il est adapté), sérieux, responsable, capable de tenir ses engagements. Bref, une denrée rare. A coder, c'est clair que ça peut être un sacré morceau pour un débutant, mais un développeur web aguerri se le bouffe au petit dèj'.

     

    Ensuite, la gueule du site, on pourra la refaire sans trop de problèmes. On a les mêmes vues sur l'emballage final, qui pourrait tenir en 3 mots : sobriété, légèreté, clarté.

     

    Mais sans un nouveau développement pour la mécanique, ce serait comme mettre une carosserie de Porsche© sur un moteur de 2CV. Un cache-misère, quoi.

    :ooo: :D

  3. Oui,

     

    Ben j'ai toujours voté, et ça ne change pas grand chose. Alors je comprend que certaines personnes n'y aillent pas. J'accomplis mon geste de citoyenneté par égard à mes aïlleux, parceque je ne peux plus parler de conviction dans mon cas.

     

    J'ignorais que l'UDF prennait ses racines dans les courants chrétiens (ou alors je l'avais totalement oublié). A voir par la suite si le courant politique évolue ou pas. Sinon, effectivement, étant assez méfiant face aux "idées" religieuses de tout ordre, je voterais encore CONTRE quelqu'un. Pour changer. Quoique pour la présidence, c'est moins grave, je vote plus pour un homme (ou une femme) que pour un parti.

     

    A moins qu'un battant avec quelques idées révolutionnaires et un tempérament emprunt de courage ne sorte du lot, ce dont je doute...

  4. Sinon, Richard, il y a le vote blanc, non?

     

    Arf !

    C'est comme si tu n'allais pas voté, ce n'est pas prit en compte. Sauf par les instituts de sondage. Je préfère largement voter contre les personnes que je n'apprécie pas et leur couper l'herbe sous le pied, tant qu'à faire (pour les législatives, remplacer "personnes" par "partis").

     

    De toute façon, je vais prédire le vote pour les présidentielles :

    -> je vais voter Bayrou (s'il continue sur sa lancée)

    -> les moutons vont suivre les infos : sarko ou ségo (kif-kif bourricot)

    -> 2nd tour : en espérant qu'ils ne se retrouvent pas l'un contre l'autre, je voterais pour l'autre candidat. Sauf si c'est un extrême (enfin, je veux dire... plus extrême...)

    -> au fond à droite pour la France, comme d'hab'.

     

    Voilà.

    Pas d'illusions à avoir.

  5. Même avis.

     

    Sachant que :

    - google est utilisé par plus de 80% des gens au niveau mondial

    - google engine se base presque entièrement sur le nombres de liens externes

    - les robots google se foutent un peu des mots-clefs (s'ils ne sont pas pertinents)

     

    Il en résulte qu'un site sera mieux référencé en fonction de 3 critères principaux :

    - le nombre de liens externes menant au site

    - son ancienneté sur la toile

    - le nombre de visiteurs, le traffic généré

     

    Conclusion :

    Les sociétés de référencement sont inutiles (si ce n'est pour de l'évènementiel, mais on tombe plus dans le domaine de l'agence de communication). On trifouille soi-même les metatags, en renseignant les champs de manière pertinente *sans en rajouter* (les bots n'aiment pas, et -zap-). On se concentre sur le principal moteur de recherche, à savoir google. Puis finalement, au lancement, on peut faire de la communication, lancer de la publicité et du bouche-à-oreille, de l'évènementil, un passage TV, radio, presse, etc...

  6. Perso,

     

    Je commence à en avoir sérieusement marre des mêmes têtes au pouvoir depuis des lustres. Nous sommes toujours gourvernés par des vieux de 2, voire 3 générations nos ainés. Ils ne sont pas forcément en phase avec leur époque, les moeurs et la technologie. Ce qui me gonfle d'autant plus, c'est de devoir voter non pas POUR quelqu'un, mais CONTRE quelqu'un (ou un parti).

     

    J'ai vu (subi) ce qu'on donné les années Miterrand, j'ai vu (subi) les années Chirac, résultat : je fais comme François Bayrou, je les renvoi dos à dos. Pour le prochain vote, j'ai décidé de donner ma voix à celui qui me semblait reflèter le plus mes pensées, en faisant abstraction de la méfiance (voire la dfiance) que j'ai envers nos politiques. Parceque si je commence à me dire que c'est (encore) une manoeuvre démagogique (même si je ne suis pas duppe), je vais encore voter CONTRE quelqu'un. Et là, pour changer, j'aimerais voter POUR quelqu'un.

     

    Et sûrement pas Ségolène "la Kommandantur" Royale.

     

    D'ailleurs, on devrait brûler les journaleux. Le pays respirerait un peu mieux. Et qu'on ne se méprenne pas : j'ai dit *journaleux*, pas *journalistes* !

     

     

    Tiens, c'est le premier thread politique auquel je participe depuis un moment, en exprimant clairement mes sentiments sur ce monde de squales... Heu... au fait, selon le disclaimer, on ne parle pas de politique sur BH. Si ce thread part en sucette à un moment ou à un autre, je verrouille. Merci de votre compréhension.

  7. C'est génial , je ne suis pas pret à refaire de la programation

     

    J'ai dernièrement discuter avec des développeurs, parceque ça aussi, dans le milieu informatique, ça m'intérresse (aprés l'infographie, les réseaux, j'envisage des cours du soir en dev. en faisant de l'interim'). Et il me disait que la programmation à papa, le mec spécialisé sur un language travaillant jusqu'à plus d'heures seul dans son garage, c'était fini. Je lui demandais sur quel language commencer (j'avais Java en tête). Il m'a répondu que le plus important de nos jours, c'est de comprendre les concepts de l'orienté objet, d'avoir une méthodologie de travail pour effectuer un travail donné, et de créer le travail préalable pour atteindre les objectifs fixés, peu importait le language. Il m'a donc conseillé de lire tout ce que je pouvais sur l'UML, avant d'attaquer le code proprement dit.

     

    En gros, c'est la différence entre "programmer" et "développer" (hyper spécialisé ou au contraire généraliste). J'ai trouvé son point de vue intérressant. Là aussi, on se rend bien compte que le domaine évolue. On tend vers les languages de 5ème génération (L5G), plus "naturels" (plus proche du raisonnement humain que machine).

  8. Bref pour ces "chiants" vous êtes un SOS Dépannage et ils appellent uniquement quand ils ont besoin de vous.

     

    Si, j'en connais. Au moins 2 dans mon entourage.

     

    Je suis parfois obligé de composer, puisqu'on fréquente un club commun. Mais il m'arrive de les envoyer chier. La dernière fois, le mec (gère un parc informatique pour une association) m'appelle chez moi, de son boulot, pour résoudre un problème liés du dit travail. J'hallucinais total. Suis-je payé en conséquence ? est-ce que je me tappe sa paie ?

     

    Et il n'appelle que quand il a besoin, avec une large propension à s'inviter, un... sans-gêne. C'est bien pour arrondir les angles, mais parfois, j'ai envie de ruer dans les brancards !

  9. Re,

     

    Personnellement, je trouve cela au contraire trés utile pour automatiser les tâches sous Linux. C'est là que tu te rends compte que tu n'as aucun contrôle sous win (cmd pauvres, et si tu veux te démerder, faut apprendre le vb et... payer), et tout pouvoir sous nux. Je pense que Linux est difficile à comprendre dés qu'on se plonge dans l'administration, la configuration, mais quelle souplesse, quelle puissance... qu'il faut apprendre à maîtriser (et va me falloir du temps... quand est-ce qu'on invente les journées de 35 heures, lol ?).

     

    Voici un autre script pour fainéants, un ping "automatisé" avec log, testant différentes tailles de paquet (pour provoquer la fragmentation) et un test sur le champ tos pour la qualité de service :

    #!/bin/bash
    # bash script - Fedora Core 5
    clear
    
    # Localisation Fr
    export LC_ALL="fr_FR.utf8"
    export LESSCHARSET="latin1"
    
    # Déclaration de variables 
    ip=$1
    
    # Message d'indication si aucun paramètre
    if [ $# != 1 ];
    then
    clear
    echo "Veuillez entrer un paramètre."
    echo "Utilisation : $(basename $0) [IP du serveur]"
    echo "---------------------------------------------------------------"
    exit 0
    fi
    
    # Utilise le retour de la fonction testant la validité de l'IP
    function wrong {
    echo "Notation décimale IPv4 requise."
    exit 0
    }
    
    # Test de validité IPv4 de l'adresse entrée (expression régulière)
    function isIPv4 {
    if [ $# = 1 ]
    then
    	printf $1 | grep -Eq '^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-4]|2[0-4][0-9]|[01]?[1-9][0-9]?)$'
    	return $?
    else
    	return 2
    fi
    }
    isIPv4 $ip && echo "IP validée." || wrong
    
    # Récupération de l'ip, du masque de sous-réseau et de l'adresse de broadcast de l'hôte
    function hostip {
    way=$1 #chemin de ifconfig ('sbin/ifconfig')
    eth=$2 #numéro d'interface ('eth0')
    
    for i in $(seq 4)
      do
    	  mask[$i]="$($way $eth|grep Masque|cut -d ':' -f4|cut -d '.' -f$i)"
    	octet[$i]="$($way $eth|grep Masque|cut -d ':' -f2|cut -d '.' -f$i|cut -d ' ' -f1)"
    done
    
    # Variable donnant l'IP de l'hôte
    adress=${octet[1]}"."${octet[2]}"."${octet[3]}"."${octet[4]}
    #echo "$adress"
    
    # Variable donnant le masque de sous-réseau
    subnet=${mask[1]}"."${mask[2]}"."${mask[3]}"."${mask[4]}
    #echo "$subnet"
    
    # Variable donnant l'adresse du réseau
    network=$[${mask[1]} & ${octet[1]}]"."$[${mask[2]} & ${octet[2]}]"."$[${mask[3]} & ${octet[3]}]"."$[${mask[4]} & ${octet[4]}]
    #echo "$network"
    
    echo "IP de l'hôte : $adress"
    echo "Sous-réseau : $subnet"
    echo "Réseau : $network"
    }
    
    # Création du log et aiguillage vers le type de mesure adéquat.
    function mesure () {
    # Indication à l'écran pour patienter
    echo "Veuillez patienter svp..."
    
    # Création du nom de fichier log
    log=$1
    
    # Liste la date et l'heure
    echo "---------------------------------------------------------------" > $log
    echo $(date) >> $log
    echo "---------------------------------------------------------------" >> $log
    echo "" >> $log
    
    # Ajoute le nom d'hôte et l'adresse IP de l'interface 0
    echo "Nom de l'hôte : $(hostname)" >> $log
    hostip '/sbin/ifconfig' 'eth0' >> $log
    echo "" >> $log
    
    # Ligne de séparation avant mesures
    echo "---------------------------------------------------------------" >> $log
    echo "" >> $log
    
    # Mesures ping - différentes tailles de paquets
    function Mping(){
    	ping -n -c 10 -s$(expr $1 - 8) $ip >> $log
    	echo "" >> $log
    }		
    
    # Mesures ping - Quality of Service
    function Mqos(){
    	ping -c 1 $ip > /dev/null #pour ne pas mesurer le premier délai (faussé)
    	function loop(){
    		case $1 in
    			1) arg="-Q 0x02" type="QoS coût minimal";;
    			2) arg="-Q 0x04" type="QoS fiabilité";;
    			3) arg="-Q 0x08" type="QoS débit";;
    			4) arg="-Q 0x10" type="QoS bas délai";;
    		esac
    
    		echo "Ping '$type' 'champ tos : $(echo $arg|cut -d' ' -f2)'" >> $log
    		echo "---------------------------------------------------------------" >> $log
    		ping -n -c10 -pff $arg $ip >> $log
    		echo "" >> $log
    		echo "" >> $log
    	}
    	for l in $(seq 4)
    	do
    		loop $l
    		echo "" >> $log
    	done
    }
    
    # Mesures complètes, une à une.
    function Mall(){
    	function boucle(){
    		case $1 in
    			1) nom="Ping (64)" mesure="Mping 64";;
    			2) nom="Ping (512)" mesure="Mping 512";;
    			3) nom="Ping (1024)" mesure="Mping 1024";;
    			4) nom="Ping (2048)" mesure="Mping 2048";;
    			5) nom="Ping QoS" mesure="Mqos";;
    		esac
    
    		echo "" >> $log
    		echo "Mesure $1 : $nom"
    		echo "---------------------------------------------------------------" >> $log
    		echo "Mesure $1 : $nom" >> $log
    		echo "---------------------------------------------------------------" >> $log
    		$mesure
    	}
    	for k in $(seq 5)
    	do
    		boucle $k
    		echo "" >> $log
    	done
    }
    
    # Test sur la partie significative de '$log' pour lancer les instructions appropriées
    valeur=${log:7}
    case $valeur in
    	64|512|1024|2048) Mping $valeur;;
    	qos) Mqos;;
    	all) Mall;;
    esac
    
    # Instructions pour indiquer la fin des mesures dans le log
    echo "---------------------------------------------------------------" >> $log
    echo "Fin du script $(basename $0)" >> $log
    echo "---------------------------------------------------------------" >> $log		
    }
    
    # Libre choix : visualisation immédiate du log (ou non) 
    function lire(){
    echo ""
    while test "$input" != [yYnN]
    do
    	echo "Souhaitez-vous visualiser le fichier $log ? [y/n]"
    	read input
    	case "$input" in
    		[yY])
    		less $log
    		echo "---------------------------------------------------------------"
    		echo "Les résultats sont dans le fichier '$(pwd)/$log'"
    		echo "---------------------------------------------------------------"
    		exit 0;;
    
    		[nN])
    		echo "---------------------------------------------------------------"
    		echo "Les résultats sont dans le fichier '$(pwd)/$log'"
    		echo "---------------------------------------------------------------"
    		exit 0;;
    	esac
    done
    }
    
    # Gestion du menu de choix pour le type de mesures à effectuer
    function menu(){
    clear
    echo "---------------------------------------------------------------"
    echo "|					 Choix du type de ping				   |"
    echo "---------------------------------------------------------------"
    echo "Appuyez sur une touche, puis validez. Touche [8] pour quitter."
    echo ""
    select j in  'Ping64' 'Ping512' 'Ping1024' 'Ping2048' 'PingQoS' 'PingALL' 'QUIT'
    	do
    		case $j in
    			'Ping64'|'Ping512'|'Ping1024'|'Ping2048'|'PingQoS'|'PingALL')
    			mesure log$(echo $j|tr '[A-Z]' '[a-z]')
    			echo "Mesures terminées. Bonne journée !"
    			lire
    			exit 0;;
    
    			QUIT)
    			clear
    			echo "Script terminé. Bonne journée."
    			exit 0;;
    
    			*)
    			echo "Veuillez entrer un chiffre entre 1 et 7. Merci."
    			echo "Touche '8' pour quitter, 'ctrl+d' pour interrompre";;
    		esac
    done 
    }
    menu

     

    Comme d'habitude, "chmod u+x <nom du script>" et pour le lancer "./<nom du script>"

    :biere:

  10. J'ai amplement modifié le script, je l'ai pas mal optimisé en comprenant comment fonctionnait le Bash au fur et à mesure. Du coup, le message d'origine ne sert plus. Vu que je n'ai pas eu de retours ici, je peux donc affirmer qu'il n'y a pas des masses d'utilisateurs Linux avertis sur le forum BH.

    ;-)

     

    Je poste le résultat d'un log, histoire que vous ayez un aperçu. J'espère que le script pourra au moins aider les 'google|nautes' à récupérer des bouts de ce script pour faire du test réseau (par exemple l'expression régulière pour tester une adresse IPv4).

     

    ---------------------------------------------------------------

    09 juin 2006 15:39:21

    ---------------------------------------------------------------

     

    Nom de l'hôte : atelier

    IP de l'hôte : 10.1.x.x

    Sous-réseau : 255.255.0.0

    Réseau : 10.1.0.0

     

    ---------------------------------------------------------------

     

     

    ---------------------------------------------------------------

    Mesure : wget http

    ---------------------------------------------------------------

    82854 Kbits/s

    82 Mbits/s

     

     

    ---------------------------------------------------------------

    Mesure : wget http avec proxy

    ---------------------------------------------------------------

    42920 Kbits/s

    42 Mbits/s

     

     

    ---------------------------------------------------------------

    Mesure : wget ftp

    ---------------------------------------------------------------

    88678 Kbits/s

    88 Mbits/s

     

     

    ---------------------------------------------------------------

    Mesure : partage smb

    ---------------------------------------------------------------

    80770 Kbits/s

    80 Mbits/s

     

     

    ---------------------------------------------------------------

    Mesure : partage ncp sur 10.1.x.x

    ---------------------------------------------------------------

    16330 Kbits/s

    16 Mbits/s

     

     

    ---------------------------------------------------------------

    Mesure : iperf

    ---------------------------------------------------------------

    ------------------------------------------------------------

    Client connecting to 10.1.x.x, TCP port 5001

    TCP window size: 0.02 MByte (default)

    ------------------------------------------------------------

    [ 3] local 10.1.160.148 port 55275 connected with 10.1.x.x port 5001

    [ 3] 0.0-10.0 sec 108 MBytes 90.3 Mbits/sec

    [ 3] 10.0-20.0 sec 107 MBytes 90.1 Mbits/sec

    [ 3] 20.0-30.0 sec 107 MBytes 89.4 Mbits/sec

    [ 3] 30.0-40.0 sec 106 MBytes 89.0 Mbits/sec

    [ 3] 40.0-50.0 sec 106 MBytes 89.0 Mbits/sec

    [ 3] 50.0-60.0 sec 107 MBytes 89.9 Mbits/sec

    [ 3] 0.0-60.0 sec 641 MBytes 89.6 Mbits/sec

     

     

    ---------------------------------------------------------------

    Fin du script à 15:42:33

    ---------------------------------------------------------------

     

    :biere:

  11. Sur Lille il y en a un super sympas, assez calé et avec d'assez bon prix, c'est Alternatif Micro dans la rue d'Arras

     

    Ou point micro prés de la gare, si mes souvenirs sont bons. TSB à wazemes ne vaut plus ce qu'il était, ils sont devenus trop chers (mais ils soignent toujours aussi bien le client, jamais eu de problèmes avec eux).

     

    Personnellement, je dirais que, comme partout ailleurs, ça dépend surtout du gars aux commandes. Il y a 50% d'incompétents (et parfois, prenant les gens pour des cons), et ils restent bon an mal an dans leur infâme boui-boui jusqu'au dépôt de bilan, invariablement.

     

    Ensuite, tu as les vrais assembleurs, sachant :

    - écouter le client, s'occuper d'un SAV efficace

    - conseiller du matériel en fonction de ses besoins (et non pas "vendre du matériel à tout prix")

    - proposer des solutions à son (ses) problème(s)

    - être franc, faire preuve de transparence

     

    J'ai des potes (anciens de chez TSB) sur Douai, qui travaillent chez un assembleur à l'origine tourné vers les professionnels. Leur compétence et la valeur de leur conseil s'est fait sentir dés qu'ils se sont ouverts aux particuliers. C'est dingue le nombre de clients mécontents d'autres boites du Douaisis qui maintenant ne jurent plus que par RIS.

     

    Vous en connaissez beaucoup, des boites qui vous envoie chez un concurrent lorsqu'ils ne peuvent s'aligner ? avec cette attitude de pleine transparence (ils montent aussi les bécanes dans un atelier ouvert, à la vue du client) ? Ce qu'ils perdent en argent l'instant T, ils le récupèrent en image par la suite, en se créant des clients fidéles assurés de ne pas être enflés. De plus, ils génèreront du bouche-à-oreille (la preuve).

     

    De toute manière, à Douai, il n'y a que des branquignolles de l'informatique. Sauf :

    - Blue Fox (galerie de la Madeleine) pour les prix

    - RIS (le long du canal, à côté de la FAC de droit) pour la compétence et le conseil

    Le reste sur Douai, à éviter *fortement*. A moins d'aimer les incompétents notoires, ou les personnes entendant "pigeon" lorsqu'on leur dit "client" (voire les 2 réunis).

  12. Salut,

     

    Je n'avais simplement pas vu le message.

    Je visite 36 forums en diagonal, et je n'ai plus le temps de m'attarder.

     

    Autre hypothèse peut être que le nu intégral ne peut se voir que brièvement à la sortie de la douche ou du bain ce qui serait dommage de ne pas pouvoir le voir évoluer partout dans toute sa belle nudité.

     

    Bonne hypothèse.

     

    Les nudistes n'ont jamais été ma tasse de thé. Où est le plaisir de la découverte quand tout est déjà "déballé" ?

     

    Techniquement, ça doit être possible, en créant une skin invisible avec bodyshop par exemple (alpha 0%), ou par un autre moyen, mais je n'ai pas cherché, car je n'en ai pas trouvé la nécessité. Le but était de faire "sexy" (d'où le nom) sans tomber dans le graveleux/vulgaire (ni s'en approcher).

     

    Le fait de mettre les Sims nus n'apportait rien, et je dirais même qu'au contraire, cela enlève tout le côté "sexy" de la chose. La nudité pour la nudité, ça a l'effet inverse : ça gave. Les gens sont saturés. Tu t'en bouffes à longueur de journée sur les encarts publicitaires, dans les spots TV, dans la presse, sur internet, etc... et ça n'a plus rien de glamour ou de sexy, c'est... de la viande marketing ! (même pour des produits qui n'ont à prioris rien à voir).

     

    Ensuite, d'un point de vu logique / cohérence du jeu, tu vois beaucoup de gens se promener à poil dans les rues, toi ? bon, ok, j'en vois aussi trés peu draguer à coup de "blaliougoubop - tululuifou" et se dandinner comme des pantins en voyant leur progéniture revenir de l'école avec une bonne note, mais bon...

  13. Salut,

     

    Bien. Voici mon premier script shell d'une taille conséquente, réalisé pour mon stage en réseau. L'objectif est d'améliorer la qualité du réseau, dispersé sur plusieurs sites, concernant quelques points précis (voir ci-aprés). Il est donc crée d'aprés mes quelques bases, des sources internet et un peu d'aide extérieur. Mon but est de tester les performances (bande passante) d'un réseau pour en détecter les faiblesses concernant :

    - le D/L FTP

    - le D/L HTML

    - le D/L HTML avec proxy

    - le D/L via SMB (partage linux/windows)

    - le D/L via NCP (netware core protocol)

     

    J'ai donc réalisé 2 scripts :

    - une liste de "ping(s)" simples avec un log complet (différentes tailles de paquets)

    - celui que vous trouverez ci-dessous, testant le reste (ftp, http, http+proxy, smb, ncp)

     

    Si vous voulez tester, il vous faut d'abord créer une machine qui fera serveur, avec un dossier nommé "FTP", en partage simple (autorisations : tout le monde), dans lequel vous déposerez un fichier nommé "fake" (130 Mo pour le mien). Vous installez le composant IIS (serveur HTTP et FTP), vous les paramétrez pour prendre ce même répertoire ("FTP") comme dossier source. Finalement, vous y installez Kperf 2.0 (Version la plus récente de Iperf sous windows, en java). La configuration linux est indiquée dans le script (fedora 5 + update + package 'ncpfs' et 'iperf').

     

    Pour les mesures de référence, lancer le script sur le client linux, elle aussi proche du coeur de réseau. Ensuite, déplacer le client linux en divers endroits du réseau et lancer le script, comparer les logs une fois les tests achevés, afin d'en tirer les conclusions.

     

    #!/bin/bash
    # bash script - Fedora Core 5
    # nécessite les packages 'ncpfs' et 'iperf'
    # -----------------------------------------------------------------------------
    # /!\ Doit être lancé en root pour le montage du partage NCP (netware)
    # -----------------------------------------------------------------------------
    clear
    
    # Localisation Fr
    export LC_ALL="fr_FR.utf8"
    export LESSCHARSET="latin1"
    
    # Ajout du chemin "/sbin" à la variable "$PATH" (pour 'ifconfig')
    export PATH="$PATH:/sbin"
    
    # Exportation de l'adresse IP du proxy (variable d'environnement)
    export http_proxy="http://10.1.x.x:8080"
    
    # Déclaration de variables (utilisés souvent par la suite)
    ip=$1
    logname=$2
    fichier="fake"
    
    # Message d'indication si aucun paramètre
    if [ $# != 2 ]
    then
    clear
    echo "---------------------------------------------------------------"
    echo "Veuillez entrer le(s) paramètre(s) manquant(s)."
    echo "Utilisation : $(basename $0) <server ip> <log name>"
    echo "---------------------------------------------------------------"
    exit 0
    fi
    
    # Utilise le retour de la fonction testant la validité de l'IP
    function wrong(){
    echo "Notation décimale IPv4 requise."
    exit 0
    }
    
    # Test de validité IPv4 de l'adresse entrée (expression régulière)
    function isIPv4(){
    if [ $# = 1 ]
    then
    	printf $1 | grep -Eq '^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-4]|2[0-4][0-9]|[01]?[1-9][0-9]?)$'
    	return $?
    else
    	return 2
    fi
    }
    isIPv4 $ip && echo "IP validée." || wrong
    
    # Récupération de l'ip, du masque de sous-réseau et de l'adresse de broadcast de l'hôte
    function hostip(){
    for i in $(seq 4)
      do
    	  mask[$i]="$(ifconfig $1|grep Masque|cut -d ':' -f4|cut -d '.' -f$i)"
    	octet[$i]="$(ifconfig $1|grep Masque|cut -d ':' -f2|cut -d '.' -f$i|cut -d ' ' -f1)"
    done
    
    # Variable donnant l'IP de l'hôte
    adress=${octet[1]}"."${octet[2]}"."${octet[3]}"."${octet[4]}
    
    # Variable donnant le masque de sous-réseau
    subnet=${mask[1]}"."${mask[2]}"."${mask[3]}"."${mask[4]}
    
    # Variable donnant l'adresse du réseau
    network=$[${mask[1]} & ${octet[1]}]"."$[${mask[2]} & ${octet[2]}]"."$[${mask[3]} & ${octet[3]}]"."$[${mask[4]} & ${octet[4]}]
    
    echo "IP de l'hôte : $adress"
    echo "Sous-réseau : $subnet"
    echo "Réseau : $network"
    }
    
    # Création du log et aiguillage vers le type de mesure adéquat.
    function mesure(){
    # Indication à l'écran pour patienter
    echo "Veuillez patienter svp..."
    
    # Récupération des paramètres
    log="$logname.log" # variable temporaire pour le nom du log
    
    # Liste la date et l'heure
    echo "---------------------------------------------------------------" > $log
    echo $(date '+%d %B %Y %T') >> $log
    echo "---------------------------------------------------------------" >> $log
    echo "" >> $log
    
    # Ajoute le nom d'hôte et l'adresse IP de l'interface 0
    echo "Nom de l'hôte : $(hostname)" >> $log
    hostip 'eth0' >> $log
    echo "" >> $log
    echo "---------------------------------------------------------------" >> $log
    echo "" >> $log
    
    # Appel avant chaque mesure pour que le log soit lisible
    function header(){
    	echo "" >> $log
    	echo "Mesure : $1"
    	echo "---------------------------------------------------------------" >> $log
    	echo "Mesure : $1" >> $log
    	echo "---------------------------------------------------------------" >> $log
    }
    
    function calcul(){
    	# /!\ L'emplacement de la cmd '/usr/bin/time' diffère d'un linux à l'autre
    	secondes=$(/usr/bin/time -f "%e" $commande 2>&1 |tail -1) # Temps de copie
    
    	Koctets=$(ls -s $fichier |cut -d' ' -f1) # Nombre de Ko (KBytes)
    	Kbits=$(echo "$Koctets*8"|bc) # Conversion en Kilobits
    	Mbits=$(echo "$Kbits/1000"|bc) # Conversion en Megabits
    
    	Kbs=$(echo "$Kbits/$secondes"|bc) # Résultat en Kbits/sec
    	Mbs=$(echo "$Mbits/$secondes"|bc) # Résultat en Mbits/sec
    	echo "$Kbs Kbits/s" >> $log
    	echo "$Mbs Mbits/s" >> $log
    
    	rm fake > /dev/null
    	rm -rf /tmp/* # Pour laisser un répertoire temporaire propre
    }
    
    # Fonction permettant de monter le NCP et d'envoyer le calcul
    function monter(){
    	header "partage ncp sur $1"
    
    	# Emplacement du point de montage temporaire
    	point="/mnt/ncp"
    	chemin="$point/userdisk/cdc/gip1/"
    
    	# /!\ montage en root uniquement
    	mkdir $point > /dev/null
    	ncpmount -S $1 -A $1 -U gip1 -P gip $point
    
    	# Instructions de calcul sur la commande "cp" (copy)
    	commande="cp $chemin$fichier $fichier"
    	calcul
    
    	# Enlever le point de montage
    	ncpumount $point
    	rm -rf $point > /dev/null
    }
    
    # Choix entre les 2 réseaux NCP : 10.1 ou 10.2
    function Mncp(){
    	while [ "$input" != 1-2 ]
    	do
    		echo "NCP (netware) sur quel réseau : 10.1.x.x (1) ou 10.2.x.x (2) ? [1/2]"
    		read input
    		case $input in
    			"1")
    			monter 10.1.x.x
    			break;;
    			"2")
    			monter 10.2.x.x
    			break;;
    		esac
    	done
    }
    
    # Mesures d'un téléchargement FTP
    function Mftp(){
    	header "wget ftp"
    	commande="wget -nH -4 -O $fichier --progress=dot:mega --proxy=off --cache=off --no-passive-ftp --user anonymous --password anonymous@test.com ftp://$ip/$fichier"
    	calcul
    }
    
    # Mesures d'un téléchargement HTTP
    function Mhttp(){
    	header "wget http"
    	commande="wget -nH -4 -O $fichier --progress=dot:mega --proxy=off --cache=off --no-dns-cache http://$ip/$fichier"
    	calcul
    }
    
    # Mesures d'un téléchargement HTTP via un proxy
    function Mhttpp(){
    	header "wget http avec proxy"
    	commande="wget -nH -4 -O $fichier --progress=dot:mega --proxy=on --cache=off --no-dns-cache http://$ip/$fichier"
    	calcul
    }
    
    function Msmb(){
    	header "partage smb"
    	commande="smbget -u partage -p partage -w workgroup smb://$ip/FTP/$fichier"
    	calcul
    }
    
    # Mesures en client/serveur iperf
    function Miperf(){
    	header "iperf"
    	iperf -c $ip -P 0 -i 10 -f m -t 60 >> $log # sur 60 sec en TCP, 1 mesure/10sec.
    	echo "" >> $log
    }
    
    # Les mesures complètes dans un seul log
    function Mall(){
    	# Choix entre les 2 réseaux NCP : 10.1 ou 10.2
    	while [ "$input" != 1-2 ]
    	do
    		echo "NCP (netware) sur quel réseau : 10.1.x.x (1) ou 10.2.x.x (2) ? [1/2]"
    		read input
    		case $input in
    			"1")
    			ipncp=10.1.x.x
    			break;;
    			"2")
    			ipncp=10.2.x.x
    			break;;
    		esac
    	done
    
    	# Mesures effectuées une à une
    	function boucle(){
    		case $k in
    			1) nom="wget HTTP" mesure="Mhttp";;
    			2) nom="wget HTTP avec le proxy" mesure="Mhttpp";;
    			3) nom="wget FTP" mesure="Mftp";;
    			4) nom="partage SMB" mesure="Msmb";;
    			5) nom="partage NCP" mesure="monter $ipncp";;
    			6) nom="client iperf" mesure="Miperf";;
    		esac
    		$mesure
    	}
    	for k in $(seq 6)
    	do
    		boucle $k
    		echo "" >> $log
    	done
    }
    
    # Test suivant le retour du menu pour lancer les instructions appropriées
    M$1
    
    # Instructions pour indiquer la fin des mesures dans le log
    echo "---------------------------------------------------------------" >> $log
    echo "Fin du script à $(date '+%T')" >> $log
    echo "---------------------------------------------------------------" >> $log		
    }
    
    # Libre choix : visualisation immédiate du log (ou non) 
    function lire(){
    echo "Mesures terminées. Bonne journée !"
    echo ""
    function indicateur(){
    	echo "---------------------------------------------------------------"
    	echo "Les résultats sont dans le fichier '$(pwd)/$log'"
    	echo "---------------------------------------------------------------"
    	exit 0
    }
    
    while [ "$input" != yYnN ]
    do
    	echo "Souhaitez-vous visualiser le fichier $log ? [y/n]"
    	read input
    	case "$input" in
    		[yY])
    		less $log
    		indicateur;;
    
    		[nN])
    		indicateur;;
    	esac
    done
    }
    
    # Gestion du menu de choix pour le type de mesures à effectuer
    function menu(){
    clear
    echo "---------------------------------------------------------------"
    echo "|				   Choix du protocole de test				|"
    echo "---------------------------------------------------------------"
    echo "Appuyez sur une touche, puis validez. Touche [8] pour quitter."
    echo ""
    select j in 'HTTP' 'HTTP proxy' 'FTP' 'SMB' 'NCP' 'IPERF' 'ALL' 'QUIT'
    	do
    		case $j in
    			FTP|HTTP|IPERF|SMB|NCP|ALL)
    			mesure $(echo $j|tr '[A-Z]' '[a-z]')
    			lire
    			exit 0;;
    
    			'HTTP proxy')
    			mesure httpp
    			lire
    			exit 0;;
    
    			QUIT)
    			clear
    			echo "Script terminé. Bonne journée."
    			exit 0;;
    
    			*)
    			echo "Veuillez entrer un chiffre entre 1 et 7. Merci."
    			echo "Touche '8' pour quitter, 'ctrl+d' pour interrompre";;
    		esac
    done 
    }
    menu

     

    [edit : code modifié]

  14. Je viens de m'installer Fedora Core 5, que du bonheur !

     

    C'est la distribution que je préfère, y'a pas à chier. Ne serait-ce que pour les RPM, Yum/Yumex, les dépôts qui ne me prennent pas la tête à installer, etc. Bref, souplesse et efficacité sans trop en faire.

     

    Par contre, pas moyen de l'installer sur mon AMD64 x2.

    - kubuntu / ubuntu passe pas

    - fedora passe pas

    Seul OpenSuse est passée, ça me gonfle.

     

    Et je ne sais pas d'où ça vient, un freeze à la détection du matériel, et j'ai une erreur, qui une fois entré dans google, à de quoi faire peur...

     

    Juste aprés "Decompressing Linux... done." et "Booting the kernel" :

    powernow-k8 : MP systems not supported by PSB BIOS structure

    Puis le chargement des services s'effectue, avant de geler sur "détection matériel" (à l'affichage graphique).

     

    Visiblement, c'est en rapport avec une partie du BIOS conçu avec les pieds. Et oui, j'ai mis à jour avec la dernière version.

  15. Sans schéma, j'ai du mal.

     

    Tu as 4 PC...

    Tu as un routeur, et un switch connecté dessus.

     

    Première chose : mets tout en fixe, bye le DHCP.

     

    Routeur : 192.168.0.1

    PC1 : 192.168.0.2

    PC2 : 192.168.0.3

    PC3 : 192.168.0.4

    PC4 : 192.168.0.5

    Le tout en masque de sous-réseaux : 255.255.255.0

    Comme passerelle pour les 4 PC : 192.168.0.1

     

    Donnes un noms de machine différent pour chaque PC, et le même non de groupe (workgroup ou mshome par défaut). Si tu n'as pas un switch vlan, il doit travailler en couche 2, donc pas de problème, il fera son boulot.

     

    Ensuite, pour voir si la pile TCP/IP de chaque PC fonctionne, tu fais un "ping localhost" (ou ping 127.0.0.1), s'il passe, c'est bon au niveau du protocole. Là, tu dois déjà pouvoir pinguer toutes tes machines. Sinon, il y a déjà un problème (type de câble, connecteur défectueux, carte réseau non-reconnue, etc.). Dans ce cas, essayes un "ipconfig /all" sur toutes tes bécanes, histoire de voir ce qu'elles renvoient, et si toutes les adresses MAC comme IP sont différentes.

     

    Sinon (tu peux essayer ça sur le PC t'affichant 2 adresses) :

    Dans Windows XP, une commande de réinitialisation est disponible dans le contexte IP de l'utilitaire NetShell. Lors de l'exécution de la commande de réinitialisation, elle réécrit des clés de Registre pertinentes qui sont utilisées par la pile TCP/IP. Cette opération correspond à supprimer et réinstaller le protocole.

    netsh int ip reset c:\resetlog.txt

     

    Sous Windows XP, la recherche réseau est lente à mourir, et le rafraîchissement est à l'avenant. Si tu utilises le partage avancé (onglet sécurité actif), sans avoir utilisé au préalable au moins une fois sur la bécane le partage simple, il arrive que XP bug, et ne veuille pas partager le dossier sur le réseau, il ne prend pas en compte les droits, etc. je ne sais pas s'où ça vient, mais le fait de faire un partage simple, puis de créer *ensuite* un partage avancé, suffit à corriger l'erreur.

     

    En espérant que ces pistes te servent...

    :biere:

  16. Houlà...

     

    Premiere prise en main :

    Je ne me souviens plus comment s'appelait la bête. Par contre, je me souviens du MO5 du grand plan national visant à informatiser les écoles, une belle connerie. Mon premier vrai ordinateur, pour moi, reste mon Atari 520 STf, que j'ai modifié et gardé trés longtemps. Il est mort de sa belle mort, grillé à force d'utilisation.

     

    Premier Pc :

    Un pentium II 233 mhz, un moniteur 15" Sony, une ATI rage pro 8 Mo

     

    Premier logiciel :

    Sur atari STf : des tonnes de jeux, dont Ikari Warriors, International Karaté +, le manoir de mortvielle, xenon, populous, sim city, dungeon master, captive, bloodwitch, etc. En logiciels, deluxe paint, 3d construction kit, fastcopytrack, etc.

    Sur PC : mes premiers jeux en réseau, Duke Nukem en BNC, puis rapidement des logiciels comme 3d studio max, photoshop, quarkxpress.

     

    Utilisation du PC :

    - produits Adobe (photoshop, indesign et flash en particulier)

    - internet (gros consommateur de news et de forums)

    - jeux (Oblivion pour le dernier), mais cela prend moins de place

    - maintenant, je m'adonne à quelques langages scriptés Actionscript et Shell (bash)

     

    Niveau de connaissance :

    - assemblage PC

    - administration NT5

    - veille technologique (pour moi)

    - formation utilisateurs (pour rendre service)

    - infographie (photoshop, indesign, flash pour mes préférés)

    - réseaux (en fin de formation tech. sup. actuellement)

     

    Je suis en plein auto-formation Linux + Shell et code Actionscript (Flash), et je me demande si je ne vais pas faire de l'interim en prenant des cours du soir pour apprendre à coder. Je touche à tout ce qui concerne l'informatique, de prés comme de loin.

     

    Ce que j'aime :

    Résoudre un problème épineux, travailler sa matière grise, rechercher l'information (et la recouper), trouver des solutions alternatives, optimiser une solution, conduire un projet (même personnel, comme le sexy pack), le re|design, la création graphique, et je lorgne maintenant vers la programmation. La formation utilisateur, ça peut être intérressant, si on a pas face à nous des rétrogrades acariâtres. Rendre service quand c'est dans mon domaine de compétences.

     

    Temps d'utilisation :

    Trop. Beaucoup trop. Un peu comme le café.

     

    Materiel :

    Heu... le meilleur rapport qualité/prix au moment d'acheter.

    -> AMD 64 x2 3800+, 1 Go DDR, ATI X800 GTO, SATA, Alim' Enermax, HP 5.1, CRT iiyama 19".

    -> Linksys BEFVP41 v2, Linksys ADSL2 MUE pour le réseau

    -> Deux anciennes bécanes, l'une me servant de "backup / archive" et l'autre de plateforme test

    Voilà.

    Si ça ne coûtait pas si cher, je m'acheterais bien un camescope pour faire du montage, ça fait longtemps que je n'ai plus pratiqué premiere et after effects.

  17. Tu as essayé OpenSuse 10.1 ?

     

    Tout ce que tu as cité, la distribution le gère parfaitement :

    - tout préinstallé

    - flash player, firefox, realplayer, etc. préinstallés

    - grub (forcément)

    - choix de la résolution / type d'écran à l'installation

    - yast pour les mises à jour (possibilité faire les upd à l'install)

    - choix : Gnome, KDE, autre (je préfère KDE personnellement)

    - pas de sudo. Vive le root pour configuration, ou le simple "su -" dans une console

    - si la configuration matos (par yast) nécessite un mot de passe root, il ouvre une fenêtre et le demande, je trouve ça moins casse-burne que le sudo.

    - open office 2

     

    Seul le partitionnement au départ peu éventuellement poser problème, même s'il n'est pas plus compliqué que celui d'Ubuntu. La suse vaut le détour, ne serait-ce que pour ce formidable outils qu'est YAST : panneau de configuration total, avec gestion de grub, des fichiers *.conf, des packages, des updates, du matos, des réglages divers...

    :biere:

  18. Je précise mon vote (reste avec WinXP) :

     

    Je pense que je vais conserver Windows XP, multi-boot avec une OpenSuse dans un premier temps. J'entends déjà les dents grincer à cause des restrictions sécuritaires, alors je préfère prendre les devants et me faire progressivement à Linux. Je veux être maître de ma bécane, et ne pas me poser de questions pour savoir si tel CD, DVD, logiciel, etc. fonctionnera ou pas en fonction d'un changement de matériel, de licence, d'utilisateur, etc.

     

    Ensuite, suivant le feedback en utilisation pro comme gd publique, et suivant les restrictions d'utilisation imposées par Microsoft, je verrais.

  19. Salut,

     

    Je viens de tester Kubuntu 5.10, et autant je trouve certaines choses appréciables, notament "adept", que l'ensemble me laisse un goût d'amateurisme. D'abord, l'utilisation des "sudoers" en lieu et place du "root", les restrictions diverses à ce niveau, les réglages peu commodes (écran, par exemple), et le fait que cela foire à un moment où à un autre si on utilise la ligne de commande *et* l'interface graphique (genre : "problème avec su").

     

    Ensuite, j'ai tenté de l'installer (y compris la version 64) sur mon AMD 64 3800+ x2, et hop, pas de reconnaissance, au mieux une console en ligne de cmd, au pire pas de boot. Dernièrement, j'ai écrit un script shell (bash), il passe sur un red hat en vmware, mais pas sur la kubuntu. Bref, pleins de détails gênants de ce genre.

     

    Du coup, je suis repassé sous la OpenSuse 10.1, et miracle : tout fonctionne sans bidouilles, et : vive le root !!! (sudoers caca, pas bien). Seul reproche de la Suse : usine à gaz.

     

    Franchement, je ne vois pas ce que l'on trouve à Ubuntu... mis à part peut-être l'aspect "assisté total", la facilité d'emploi. A côté de ça, je ne la trouve pas "carré" comme d'autres distributions.

×
×
  • Créer...