deneb a écrit 37 commentaires

  • [^] # Re: pas dans la PATH

    Posté par  . En réponse au message Problème avec un piti script. Évalué à 2.

    En fait, il vaut mieux mettre un espace pour le shebang (je ne sais plus vraiment pourquoi, mais j'ai déjà eu un problème d'un script qui ne se lançait pas si j'oubliais l'espace). Si le script ne se lance pas, essai de placer son chemin absolu dans le fichier du crontab, par exemple :

    30 0 * * * /bin/sh /home/user/scripts/sauvegarde

    Le "/bin/sh" est là pour forcer l'utilisation de l'interpréteur, dans le cas où tu aurais oublier de fixer les permissions d'execution sur le script avec chmod +x.
  • # MSG_NOSIGNAL (man send)

    Posté par  . En réponse au message write() quitte mon programme et retourne le code 141. Évalué à 2.

    Tu peux remplacer la fonction write() en utilisant send(newsock, buf, nRead, MSG_NOSIGNAL) à la place. Ceci permettra à la fonction d'ignorer le SIGPIPE qui termine ton programme en signal 13 (141 - 128).

    Je pense aussi qu'il serait utile de rajouter un if (nRead < 1) break après l'appel de la fonction read().

    Autre petit détail, dans ton code, le perror() n'affichera pas d'erreur dans le cas ou write() retourne 0.
  • # Choisir une bonne distribution

    Posté par  . En réponse au message Réinstallation système. Évalué à 2.

    Quelle distribution as tu ? Je ne vois pas le problème, tu n'as pas besoin de réinstaller le système pour mettre à jour. Cela se fait en général avec l'outil qui gère les paquets. Donc la solution que je propose, c'est d'installer une distribution qui conviendra parfaitement pour ce que tu veux faire, et là je pense à Debian. Elle se met à jour très facilement avec apt-get. Il y a d'autres distributions qui peuvent également remplir ce rôle, comme Gentoo (la contrainte est qu'il faudra davantage de puissance processeur pour tout compiler lors des mises à jour).

    Tu peux également faire un partitionnement plus fin de ton système, afin de ne réinstaller que les programmes qui se trouvent dans /usr. Tu conserveras ainsi ton noyau si tu fais une partition /boot, tes fichiers de configuration et tes utilisateurs si tu fais une /etc, les fichiers du crontab et les logs si tu fais une /var... De cette façon, si tu dois réinstaller ton système, tu conserveras tes données. Mais bien sur, il n'y a plus d'intérêt à changer de version de ta distribution si tu conserves tout. Le mieux est donc d'installer une vrai distribution qui ne devra pas être réinstallée, comme Debian ou Gentoo.
  • # Voir "man uptime"

    Posté par  . En réponse au message charge systeme c'est quoi??. Évalué à 1.

    C'est une moyenne de la charge processeur.

    Le premier nombre indique la moyenne pour la minute en cours, le second pour les 5 dernières minutes et le troisième pour les 15 dernières minutes.
  • [^] # Re: Quelques explications pour la route

    Posté par  . En réponse au message Généralités sur Linux. Évalué à 1.

    Pour l'utilisation du shell, on peut de plus en plus s'en passer je trouve... Mais personnelement, j'utilise enormement la console car c'est super puissant !

    C'est clair, et même sans maitriser le shell, il devient vite une habitude. Il n'y a que pour certains cas que j'utilise un file manager, comme pour regarder des photos en miniatures dans un répertoire. D'une façon général, j'utilise le shell ou un outil graphique suivant que c'est le plus simple.

    Il vaut mieux en effet s'abstenir de graver si le md5 ne colle pas, le CD ne sera pas utilisable ou il sera altérer d'une façon ou d'une autre...

    Pour le système de fichier, le reseirfs peut être une meilleur alternative que l'ext3 si tu possèdes sur ta partition beaucoup de petits fichiers (inférieur à 4 ko je crois).

    sous certaines distributions, "cd.." marche

    C'est sans doute un alias, je pense, comme "dir" qui fait un "ls -l". En fait la question ne se pose plus quand on comprend la syntaxe du shell. L'espace entre "cd" et ".." est avant tout là pour séparer la commande des options/fichiers/répertoires. Je ne trouve pas le DOS très logique à ce niveau, ou alors je n'ai pas encore compris la subtilité... et de toute façon sous DOS je n'ai jamais réussi à faire quoique ce soit :)
  • [^] # Re: quelques réponses

    Posté par  . En réponse au message Généralités sur Linux. Évalué à 1.

    J'ai essayé, comme ça, pour rigoler, d'installer dans /usr/bin.

    Fais quand même attention à n'installer que des executables dans bin, pas de fichiers de config ni autre...

    Alors là, Ubuntu m'a drôlement enguirlandé, parce que je n'etais pas root. C'est un peu embêtant mais bon.

    Sous Ubuntu c'est assez différent d'après ce que j'ai cru comprendre. Pour le root, c'est toujours l'utilisateur mais en faisant précéder chaque commande par sudo (celle qui nécessite les droits root).
    Du genre : ./configure ; make ; sudo make install

    J'attends un cd Ubuntu par la Poste, bientôt je réinstallerai tout ça vaudra mieux ^^

    Et comme ça tu profites un max de ton install "brouillon" pour voir un peu comment ça fonctionne sans craindre de tout casser :)
  • # Quelques explications pour la route

    Posté par  . En réponse au message Généralités sur Linux. Évalué à 2.

    Si je peux t'apporter quelques explications :

    Le ./configure lance un script qui généralement va créer un Makefile (fichier texte contenant les instructions qui vont construire/compiler le programe, ainsi que d'autres paramètres, par exemple l'emplacement où ce programme va s'installer) qui sera utilisé par la commande "make".

    Le make va construire le programme dans le répertoire où tu as décompressé l'archive.

    Le make install copie les binaires et autres fichiers nécessaires au programme à l'endroit spécifié. Par défaut, cela se fait dans /usr/local/ mais tu peux choisir l'emplacement de l'installation en lançant le script de configure avec --prefix (par exemple si tu veux installer le soft dans /usr et non dans /usr/local).

    Comme cela a été dit, il est vivement recommandé d'utiliser apt-get (pour ta distro). Déjà parce que c'est l'un des meilleurs qui existe et parce que, débutant ou confirmé, c'est toujours mieux : on ne perd pas de temps pour installer, et on ne perd pas de temps pour mettre à jour (ce qui est le plus ennuyeux en fait). Ensuite parce que l'installation à la main peut parfois prendre plus de temps que prévu : il faut parfois rechercher les dépendances manquantes à tel ou tel programme qui en a besoin pour se construire (exemple : difficile de compiler un programme utilisant les lib KDE sans avoir déjà installé les lib KDE), ce qui n'arrive pas avec apt-get : il gère les dépendances.

    1/ N'existe-t-il pas de dossier d'installation pour les logiciels, comme Program Files sous Windows ? Jusqu'ici j'ai tout installé dans /home/monnom/

    L'inconvénient d'installer les programmes dans /home/monnom est que tu devras utiliser le chemin absolu du programme pour le lancer, c'est à dire pour lancer xmms que tu auras compilé dans /home/monnom/xmms-version/ tu devras lancer la commande /home/monnom/xmms-version/xmms, ce qui est plutôt chiant... Alors que si le binaire "xmms" se trouve dans l'un des répertoires "bin" du système, c'est à dire /usr/bin ou /usr/local/bin, une simple commande du style xmms suffira (en passant, un echo $PATH te montrera ces chemins).

    2/ Comment choisir le répertoire d'installation s'il n'y a pas de Setup.exe (sauf pour mozilla firefox) ?

    Il est plutôt rare de rencontrer des Setup.exe ou des Install.exe sous Linux. Si tu installes à partir des sources, un ./configure --prefix=/chemin/du/programme suffira pour dire au make install de placer les fichiers du programme à l'endroit spécifié. S'il n'y a pas de configure, il y a probablement un fichier README qui t'apportera sans doute des indices pour l'installation. Pour ce qui est des packages, mieux vaut laisser faire le système que de le faire soit même et de tout saloper (d'ailleurs je ne sais pas vraiment si on peut modifier les emplacements d'install avec apt-get).

    Autre chose : j'ai tenté d'installer XMMS, lecteur multimédia du genre Winamp, mais pour Linux ^^. ./configure s'arrête et me demande gLib. Après vérification dans Synaptic, gLib 2.0.0 est déjà installé. Pourtant, je n'arrive pas à le réinstaller, une autre erreur arrête tout : configure: error: C++ preprocessor "/lib/cpp" fails sanity check

    Pourquoi ne pas installer xmms avec apt-get install xmms ?
    Sinon je dis surement une bétise mais peut être faudrait il le compilateur g++ pour compiler xmms...

    Je crois que j'ai encore pas mal de reflexes Windows... j'espère m'en débarrasser sous Linux ;)

    Je pense que le plus difficile n'est pas d'apprendre Linux, mais d'oublier les concepts propres à Windows. C'est comme ceux qui savent faire du ski et qui veulent se mettre au snowboard, c'est toujours casse gueule au début (et je sais de quoi je parle).
  • # Pas grand chose à faire

    Posté par  . En réponse au message comment configurer un modemrouteur. Évalué à 1.

    Tu dois te connecter par l'interface web de ton routeur avec ton navigateur. Pour le NetGear il me semble que ça doit être une adresse IP du genre http://192.168.0.1 (vérifie dans la documentation). Normalement les paramètres de configuration par défaut du routeur ne sont pas à modifier. Il ne te restera donc qu'à ajouter ton login de connexion ainsi que ton mot de passe et le routeur établira de lui même la connexion à internet. Regarde dans la section Logs/Diagnostic pour vérifier que la connexion s'est correctement établie. Peut être faudra t-il aussi modifier la configuration de l'interface réseau eth0 de ta Mandrake mais le plus simple est de laisser le routeur t'attribuer une adresse IP par DHCP.
  • # Oui mais...

    Posté par  . En réponse au journal Un gestionnaire de fenêtres par mois... Fluxbox. Évalué à 3.

    Fluxbox est le premier wm que j'ai utilisé. Depuis, j'ai testé des wm comme WindowMaker, E16, Fvwm... afin d'y trouver quelque chose d'autre (de mieux ?) et c'est pour cela que je vais me permettre de faire un peu de hors sujet et de parler de 3 autres wm avant de parler de Fluxbox.

    WindowMaker est celui qui retient le plus mon attention parmis ces 3 wm. Le système de raccourcis clavier est très simple à mettre au point, le menu tolère d'avoir la maladie de parkinson puisqu'il faut cliquer sur le lien pour ouvrir le sous menu qui correspond (pas mal avec les touchpad des portables). Le système de dock est plutôt pratique et ne demande aucune configuration (il suffit de "docker" l'application lancée pour qu'elle fasse parti de votre environnement de travail). Il y a un panel de config qui permet de controler beaucoup de choses relatives au wm. De plus, l'absence de pager ne se fait pas trop ressentir sous WMaker. Rajoutons à cela la possibilité d'ajouter des dockapp utiles comme l'affichage des ressources, de la météo, etc...

    E16 est beau, ça ne fait aucun doute (après ça depend de la définition de beau) mais je n'ai pas réussi à m'y faire. Je ne le trouve pas pratique à utiliser, impossible de me faire à "l'iconbox" qui remplace une taskbar (on peut très bien en rajouter une avec gdesklets, mais je pars du principe que ce genre de gadget n'est pas là pour combler une lacune d'un wm, autant utiliser twm...). Cependant, la configuration est très simple (à l'image de fluxbox, voir même plus simple) et le pager est plutôt pas mal. Le menu clic droit quant à lui, à l'image de celui de Fluxbox (pas besoin de cliquer pour naviguer dans les sous menus).

    Fvwm est plutôt spécial. Je n'ai pas eu le courage d'y consacrer le temps nécessaire pour apprendre à le configurer vraiment. Sans doute interessant quand on rentre en profondeur dans les possibilités qu'il permet, mais au final (et si toutefois on réussi à faire ce qu'on veut) qu'avons nous ? Un wm qui fait la même chose qu'un autre wm à l'exception qu'on aura perdu une quantité d'heure non négligeables à le mettre au point. En fait, si Fvwm pouvait se doter d'un panel de config digne de ce nom (pas pour toutes les fonctionalités bien sur, mais pour une bonne partie, afin d'éviter au maximum de scripter sa config), ce serait une bonne chose - j'espère ne pas avoir heurter les puristes :)

    Ceci étant dit, parlons de Fluxbox. Très minimal certes, mais il cache une foule de fonctions interessantes et fait exactement ce dont j'ai besoin (ou presque), c'est à dire : une taskbar, un menu clic droit configurable à volonté (avec la touche Windows de mon clavier configuré pour lancer ce menu), le systeme de tab très utile qui permet de fusionner les fenêtres d'appli différentes. Je change de bureau virtuel facilement avec la molette de la souris, la slitbar me permet d'y insérer pratiquement un gkrellm (voir même des dockapp de WMaker). Il supporte également les applications qui se placent dans le systray. Question légereté, c'est sans doute l'un des plus leger. Mais surtout, sa configuration simpliste ma permit de la comprendre très vite, sans perdre de temps à le configurer à ma façon.

    En revanche, c'est surement le manque de pager potable qui me gêne le plus. J'ai bien essayé fbpager, fluxter, et compagnie, mais ils sont buggués et sont à des années-lumière d'un pager tel que celui d'un E16 ou d'un Fvwm (ou même de ceux de Gnome/XFCE). Certains diront qu'il n'y en a pas l'utilité, mais les utilisateurs de Flubox n'utilisent pas tous Fluxbox de la même façon. Je peux également dire qu'une petite toolbar aurait été la bienvenue, histoire de pouvoir ajouter quelques applications courantes. Quelques bugs (?) également : le focus ne me semble pas assez réactif, il ne semble pas toujours réagir comme je voudrais (ou alors j'ai mal compris sa subtilité). Le systray déconne lorsque je mets une taille particulière aux icones ou bien lorsque je redémarre Fluxbox.

    Mis à part ces petits détails, Fluxbox reste le wm que j'ai le plus utilisé jusqu'ici et celui sous lequel je me sens le plus à l'aise.
  • [^] # Re: Noyau 2.6 + acpi = disque lent

    Posté par  . En réponse au message Noyau 2.6 + acpi = disque lent. Évalué à 1.

    Si ce n'est pas le cas, aller voir du côté : Device Drivers -> ATA/ATAPI/MFM/RLL support (menuconfig du noyau) et recompiler avant de configurer avec hdparm.
  • [^] # Re: 2 méthodes possibles

    Posté par  . En réponse au message Exécuter un binaire dans un terminal en double-cliquant dessus. Évalué à 1.

    Normalement, avec getchar() le programme ne se terminera pas tant que tu n'auras pas frapper une touche. Si le terminal s'ouvre et se ferme aussitôt, c'est peut être à cause d'un chemin relatif/incomplet (no such file or directory).

    Pourtant , jai bien mis un truc en plus du "hello world !" afin que le programme se bloque ! il faut que j'appuis sur une touche pour qu'il se termine (getchar()) !

    Donc à priori le programme ne s'execute pas sinon le terminal resterait ouvert.

    Avec la méthode du script shell qui lance ton binaire, il faut mettre le chemin absolu pour lancer l'executable. C'est à dire "xterm -e /home/user/binaire" et non pas "xterm -e binaire". Essai en lançant le script en console pour voir sa réaction.

    Tu peux le vérifier dans ton script. Par exemple en mettant :

    #! /bin/sh
    BIN_PATH="/home/user/le_binaire"
    if [ -f $BIN_PATH ]
    then xterm -e $BIN_PATH
    else xmessage "Programme introuvable !"
    fi

    Ainsi tu seras prévenu par un xmessage que le script n'a pas pu lancer ton programme avec xterm.

    Il existe sans doute une solution adaptée à ton problème mais je n'ai pas très bien compris ce que tu recherches à faire. Pourrais tu expliquer davantage ?
  • # 2 méthodes possibles

    Posté par  . En réponse au message Exécuter un binaire dans un terminal en double-cliquant dessus. Évalué à 1.

    Je ne connais pas Nautilus. Mais s'il permet d'executer des binaires/scripts à la façon de rox-filer, tu peux utiliser deux méthodes en fonction de ses possibilités :

    S'il te permet de définir le logiciel à utiliser pour "ouvrir" tel ou tel type de fichier, tu pourras éventuellement lui dire d'utiliser xterm du genre xterm -e $1 qui lancera un xterm pour executer ton programme non graphique (c'est également valable pour les logiciels graphiques, mis à part le fait qu'un terminal s'ouvrira le temps de son execution).

    Si ce n'est pas possible, tu peux par exemple placer ceci dans un petit fichier texte :
    #! /bin/sh
    xterm -e /home/user/test

    puis d'ajouter la permission d'execution avec chmod +x.

    De cette façon, le double clic sur ce "script" permettra de lancer ton application avec une console. C'est pas terrible, certes, mais si tu comptes faire ça pour quelques binaires uniquement, ça peut être une solution...