Outils pour utilisateurs

Outils du site


installfreebsd

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
Prochaine révisionLes deux révisions suivantes
installfreebsd [2019/02/12 10:21] – créée cyrilleinstallfreebsd [2019/03/24 11:07] – [Démarrer xfce] cyrille
Ligne 1: Ligne 1:
-Post-configuration +======Installation de freeBSD 12======
-Connaitre le matériel à configurer +
-dmesg | grep "no driver attached"+
  
 +Sur laptop, DELL Latitude E5430 et DELL Latitude E6410
  
-Reconfigurer le réseau +===== Installation =====
-bsdinstall netconfig+
  
 +Récupérer l'iso de freeBSD. La graver sur une clef USB et booter dessus.
 +Suivre l'installation pas à par pas.
  
-$ pkg  +| {{ :img_3209.jpg?direct&200 |}} | {{ :img_3210.jpg?direct&200 |}} | 
-Installation / initialisation de l'outil de paquet pkg+Faire attention au stade de configuration réseau de choisir pour ETSI / FR 
 +"country FR regdomain ETSI"
  
-$ pkg install nano +<WRAP center round important 60%> 
-Editeur plus simple que VI+"country FR regdomain ETSI" 
 +</WRAP>
  
-pkg bash bash-completion 
-Installation de bash et l'auto-completion 
  
-pkg install sudo+Voici les options que j'ai choisies lors de **System Configuration** 
 +{{ :img_3211.jpg?direct&200 |}}
  
-Editer /usr/local/etc/sudoers  
  
- visudo +Rebooter sur freeBSD
  
-your_user ALL=(ALL) ALL 
  
 +=====Francisation=====
 +Editer le fichier **/etc/login.conf**
  
-nano /etc/rc.config 
-Ajouter 
-dbus_enable=" YES"  
-hald_enable=" YES"  
  
-Rebooter pour prise en charge de dbus+ <code bash>default:
 +         :passwd_format=sha512:
 +         :copyright=/etc/COPYRIGHT:
 +         :welcome=/etc/motd:
 +         :setenv=MAIL=/var/mail/$,BLOCKSIZE=K:
 +         :path=/sbin /bin /usr/sbin /usr/bin /usr/local/sbin /usr/local/bin ~/bin:\ 
 +         :nologin=/var/run/nologin:
 +         :cputime=unlimited:
 +         :datasize=unlimited:
 +         :stacksize=unlimited:
 +         :memorylocked=64K:
 +         :memoryuse=unlimited:
 +         :filesize=unlimited:
 +         :coredumpsize=unlimited:
 +         :openfiles=unlimited:
 +         :maxproc=unlimited:
 +         :sbsize=unlimited:
 +         :vmemoryuse=unlimited:
 +         :swapuse=unlimited:
 +         :pseudoterminals=unlimited:
 +         :kqueues=unlimited:
 +         :umtxp=unlimited:
 +         :priority=0:
 +         :ignoretime@:
 + :charset=UTF-8:
 + :lang=fr-FR.UTF-8:
 +         :umask=022:</code> 
 +          
 +Ajouter pour que les locales soient prises en compte 
 +<code bash> :charset=UTF-8:
 + :lang=fr-FR.UTF-8:\</code>
  
-pkg install xorg +Le recharger  
-Installation du serveur X+<code bash>cap_mkdb /etc/login.conf</code>
  
-Système en français +=====Initialisation de pkg===== 
-nano /etc/login.conf +| {{ :img_3213.jpg?direct&400 |}} | {{ :img_3214.jpg?direct&400 |}} |
  
-    french|French Users Accounts:\ 
-        :charset=UTF-8:\ 
-        :lang=fr_FR.UTF-8:\ 
-        :tc=default: 
-Commenter la section "russe" 
  
-prise en compte+=====AJOUTER un user===== 
 +<code bash># adduser</code> 
 +L’inclure dans les groupes : **wheel operator video**
  
-# cap_mkdb /etc/login.conf 
  
  
-Puis éditer le fichier de mot de passe par la commande vipw. , Et rechercher votre login :+=====Gestion du son=====
  
-vipw+<code bash>kldload snd_driver</code> 
 +<code bash>cat /dev/sndstat 
 +Installed devices: 
 +pcm0: <IDT 92HD93BXX (Analog 2.0+HP/2.0)> (play/rec) default 
 +pcm1: <IDT 92HD93BXX (Analog)> (play/rec) 
 +pcm2: <Intel Panther Point (HDMI/DP 8ch)> (play) 
 +pcm3: <Intel Panther Point (HDMI/DP 8ch)> (play) 
 +pcm4: <Intel Panther Point (HDMI/DP 8ch)> (play) 
 +No devices installed from userspace.</code>
  
-    olivier:$1$00edYNK2$heBNRz65txD0j7bGtB40r.:1001:1001::0:0:Olivier Cochard-Labbe:/home/olivier:/bin/tcsh+<code bash># sysrc kld_list+=snd_hda</code>
  
-  Il faut ajouter «french» entre les ::, ce qui va donner : 
  
-    olivier:$1$00edYNK2$heBNRz65txD0j7bGtB40r.:1001:1001:**french**:0:0:Olivier Cochard-Labbe:/home/olivier:/bin/tcsh +=====Affichage  drm-kmod===== 
-    +Installer le paquet 
 +<code bash>pkg install drm-kmod</code>
  
-Drivers vidéo KRM-DMS (Intel i915, AMD GPU, Radeon)+Initialisation au boot 
 +<code bash>sysrc kld_list+="/boot/modules/i915kms.ko"</code>
  
-À partir de FreeBSD 11.2 uniquement, vous pouvez installer le meta-package drm-kmod qui va selectionner la meilleure version des drivers (legacy, stable, next, devel):+Le charger 
 +<code bash>kldload /boot/modules/i915kms.ko</code>
  
-pkg install drm-kmod+Vérifier 
 +<code bash>kldstat -v | grep i915</code>
  
-Et demander leur chargement automatique, ici un exemple pour un module i915: 
  
-sysrc kld_list+="/boot/modules/i915kms.ko" 
  
-kldload /boot/modules/i915kms.ko+===== Network Manager =====
  
-Après un reboot, vérifier que le module du package (/boot/modules) et non de la base (/boot/kernel) est bien pris en compte: 
  
-olivier@x220:~ % kldstat -grep i915 +==== Network Manager ==== 
-    1 0xffffffff8293d000 120ca8   i915kms.ko (/boot/modules/i915kms.ko)+ 
 + 
 +<code bash>pkg show  networkmgr 
 +WWW            https://github.com/GhostBSD/networkmgr 
 +Comment        : FreeBSD/GhostBSD network conection manager 
 +Annotations    : 
 + repo_type      : binary 
 + repository     : FreeBSD 
 +Flat size      : 1.71MiB 
 +Description    : 
 +NetworkMgr is an open source, Network Manager based on the look of the Linux 
 +Network Manager user interface. It use ifconfig and netif if make all work. 
 +</code> 
 + 
 +Il faudra ensuite configurer DOA pour que ça fonctionne 
 + 
 +<code bash>cat /usr/local/etc/doas.conf 
 + 
 +    permit nopass keepenv root 
 +    permit :wheel  
 +    permit nopass keepenv :wheel cmd netcardmgr 
 +    permit nopass keepenv :wheel cmd ifconfig 
 +    permit nopass keepenv :wheel cmd service</code> 
 + 
 +Se delogguer, l'utilisateur doit faire partie du groupe **wheel**. 
 + 
 + 
 +Gestion de la connexion par ce fichier 
 + 
 +<code bash> cat /etc/wpa_supplicant.conf</code> 
 + 
 + 
 +==== CLI graphique de gestion ==== 
 + 
 +<code bash> pkg install  wifimgr</code> 
 +=====X11 / XFCE===== 
 + 
 +<code bash>pkg install xorg xfce xfce4-goodies xfce4-mixer xfce4-volumed xf86-video-intel file-roller</code> 
 + 
 + 
 + 
 +====Pour activer le suspend et resume ==== 
 +Créer ces 2 fichiers 
 + 
 +**/usr/local/etc/polkit-1/rules.d/51.shutdown.rules** 
 + 
 + 
 +<code bash>polkit.addRule(function (action, subject) { 
 +  if ((action.id == "org.freedesktop.consolekit.system.restart" || 
 +      action.id == "org.freedesktop.consolekit.system.stop"
 +      && subject.isInGroup("PUTYOURGROUPHERE")) { 
 +    return polkit.Result.YES; 
 +  } 
 +}); 
 +</code> 
 + 
 +**/usr/local/etc/polkit-1/rules.d/52.resume.rules**  
 + 
 +<code bash>polkit.addRule(function (action, subject) { 
 +  if (action.id == "org.freedesktop.consolekit.system.suspend" 
 +      && subject.isInGroup("PUTYOURGROUPHERE")) { 
 +    return polkit.Result.YES; 
 +  } 
 +});</code> 
 + 
 +puis  
 + 
 +<code bash>chown -R polkitd /usr/local/etc/polkit-1/</code> 
 + 
 + 
 +====Démarrer xfce==== 
 + 
 + 
 + 
 +On aura besoin de dbus 
 +<code bash>Pkg install dbus 
 +service dbus onestart</code> 
 + 
 +Démarrage auttomatique, ajouter 
 +<code bash>cat /etc/rc.conf 
 +dbus_enable="YES"</code> 
 + 
 +On utilisera xinit pour le lacement de XFCE 
 +Créer dans le Home un **.xinitrc** 
 + 
 +<code bash># SET PROPER locale 
 +export LANG="fr_FR.UTF-8" 
 +export LC_ALL="fr_FR.UTF-8" 
 +export LC_MESSAGES="fr_FR.UTF-8" 
 + 
 +# Clavier français 
 +setxkbmap fr & 
 +# Lancer xfce 
 +/usr/local/bin/startxfce4</code> 
 + 
 +Lier xinitrc et xsession 
 +<code bash> ln -s ~/.xinitrc ~/.xsession</code> 
 + 
 +Enfin lancer la session X 
 +<code bash>xinit .xinitrc</code> 
 + 
 +Pour démarrer la session de XFCE, j'ai choisi la façon manuelle sinon on peut passer, entre autre par SLIM. 
 +J'ai donc créer cet alias  
 +<code bash>alias x='xinit ~/.xinitrc'</code> 
 +et la commande **x** suffit au démarrage de XFCE 
 + 
 +Sinon : jeter un oeil à SLIM : [[https://www.freebsd.org/cgi/man.cgi?query=slim&sektion=1&manpath=freebsd-release-ports|Slim]] 
 + 
 + 
 + 
 + 
 +====anti-aliasing avec la police Helvetica===== 
 +Editer ce fichier ainsi : **/usr/local/etc/fonts/local.conf**  
 +<code bash><?xml version='1.0'?> 
 +<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'> 
 +<fontconfig> 
 + 
 +    <dir>~/.fonts</dir> 
 + 
 +    <!--    do not use the embedded bitmap instead of the outline 
 +        <https://www.freebsd.org/cgi/man.cgi?query=fonts-conf&sektion=5&manpath=FreeBSD+and+Ports> 
 +        <https://bbs.archlinux.org/viewtopic.php?id=161609> post 2 (2013) 
 +        <https://redd.it/7kqr5l> (2017) --> 
 +    <match target="font"> 
 +        <edit name="embeddedbitmap" mode="assign"> 
 +            <bool>false</bool> 
 +        </edit> 
 +    </match> 
 + 
 +    <!--    prefer outline e.g. TrueType instead of bitmap fonts 
 +        <https://bbs.archlinux.org/viewtopic.php?id=161609> post 2 (2013) 
 +        <https://redd.it/4tb2dt> (2016) --> 
 +    <match target="font"> 
 +        <edit name="prefer_outline"> 
 +            <bool>true</bool> 
 +        </edit> 
 +    </match> 
 + 
 +    <!--    reject bitmap fonts, except Ohsnapu - prefer PostScript, TrueType et cetera 
 +        <https://forums.freebsd.org/threads/howto-nice-fonts.2021/> (2009) 
 +        <https://redd.it/4tb2dt> (2016) --> 
 +    <selectfont> 
 +        <acceptfont> 
 +            <pattern> 
 +                <patelt name="family"> 
 +                    <string>Ohsnapu</string> 
 +                </patelt> 
 +            </pattern> 
 +        </acceptfont> 
 +        <rejectfont> 
 +            <pattern> 
 +                <patelt name="scalable"> 
 +                    <bool>false</bool> 
 +                </patelt> 
 +            </pattern> 
 +        </rejectfont> 
 +    </selectfont> 
 + 
 +</fontconfig></code> 
 + 
 +====Gestionnaire WIFI==== 
 +Bien que par défaut, on n'en a pas besoin. On peut vouloir utiliser un outil style Gestionnaire Wifi 
 +<code bash>pkg install wifimgr</code> 
 + 
 +Sinon la(es) connexion(s) se gère(nt) via : 
 +<code bash> cat /etc/wpa_supplicant.conf</code> 
 + 
 +====Barre de Menu pour XFCE==== 
 + 
 +J'utilise Plank, simple et convivial. 
 + 
 +<code bash># pkg install plank</code> 
 + 
 +Ajouter cette commande au démarrage de XFCE 
 +=====Paramétrage de Xorg===== 
 +====Carte video==== 
 +Créer ces 2 fichiers 
 +<code bash># cat /usr/local/etc/X11/xorg.conf.d/card.conf 
 +Section "Device" 
 +  Identifier "Card0" 
 +  Driver "intel" 
 +  Option "DPMS" 
 +  Option      "Backlight"  "intel_backlight" 
 +EndSection</code> 
 + 
 +====Le clavier==== 
 +<code bash># cat /usr/local/etc/X11/xorg.conf.d/keyboard.conf 
 +Section "InputDevice" 
 +  Identifier "Keyboard0" 
 +  Driver "kbd" 
 +  Option "XkbLayout" "fr" 
 +  Option "XkbOptions" "terminate:ctrl_alt_bksp,ctrl:nocaps" 
 +EndSection</code> 
 + 
 + 
 + 
 +=====Configuration spécifique===== 
 +====timeout boot==== 
 +Diminuer le timeout du menu du boot loader à 2 secondes 
 +<code bash>sysrc -f /boot/loader.conf autoboot_delay=2</code> 
 + 
 +====Acc. chiffr.==== 
 +Accélération de chiffrement des processeurs modernes 
 +<code bash>#echo 'aesni_load="YES"' >> /boot/loader.conf</code> 
 +Module à charger dans /boot et non /etc/rc.conf pour un chargement plus rapide  
 + 
 +====Scheduler==== 
 +Configuration pour une utilisation pour desktop/laptop 
 +<code bash>sysrc -f /etc/sysctl.conf kern.sched.preempt_thresh=224</code> 
 + 
 +Pour activer la réponse «yes» aux questions de fsck au démarrage: 
 +<code bash>sysrc fsck_y_enable=YES</code> 
 +====Micro codes CPU==== 
 +Utiliser micro codes CPU 
 +<code bash>pkg install devcpu-data 
 +service microcode_update enable 
 +service microcode_update start</code> 
 + 
 +==== ACPI ==== 
 +=== CPU et TEMP === 
 + 
 + device driver for Intel Core on-die digital thermal sensor 
 + cpuctl pseudo device 
 + 
 + <code bash>sysrc kld_list+=coretemp 
 + sysrc kld_list+=cpuctl</code> 
 + 
 +==== Fn Keys : DELL latitude E5430 ==== 
 + 
 +Ai rencontré un soucis avec les touches **Fn + brightness** seulement sur le Latitude E5430. Avec le Latitude E6410 pas de soucis. 
 + 
 +Les touches** FN et luminosité -up/down** ne fonctionnent pas. De plus **xbindkeys** ne retourne aucun code avec l'association **Fn + Brightness UP / Down** (Pas de Mod 2 + quelque chose) 
 + 
 +Solution adoptée.  
 + 
 +Installer :  
 +<code bash>pkg install xbindkeys intel-backlight</code> 
 + 
 + 
 +Fichier de configuration : 
 +<code bash>cat .xbindkeysrc  
 +# PERSONNAL XBINDKEYS 
 + "intel_backlight decr 10" 
 + Alt + Down 
 + 
 + "intel_backlight incr 10" 
 + Alt + Up 
 +</code> 
 + 
 +Lancer xbindkeys au démarrage de la session **~/.xinitrc**  
 + 
 +Ajouter cette section avant le démarrage de XFCE dans  
 +<code bash># Démarrer xbindkeys 
 +/usr/local/bin/xbindkeys  &</code> 
 + 
 +==== XFCE / FLUXBOX / OPENBOX ==== 
 +Pour avoir le choix entre plus Windows Manager : ici fluxbox, openbox 
 + 
 +<code bash>pkg install openbox openbox-themes obconf fluxbox fluxbox-tenr-styles-pack icewm wmakerconf windowmaker blackbox  </code> 
 + 
 +Modifier le fichier **~/.xinitrc** de cette façon 
 + 
 +<code bash># GESTIONNAIRE X 
 +  DEFAULT_SESSION=startxfce4 
 + 
 +case $1 in 
 +o) 
 +    exec openbox 
 +    ;; 
 +f) 
 +    exec fluxbox 
 +    ;; 
 +i) 
 +    icewmbg & 
 +    icewmtray & 
 +    exec icewm 
 +    ;; 
 +w) 
 +    exec wmaker 
 +    ;; 
 +b) 
 +    exec blackbox 
 +    ;; 
 +*) 
 +    exec $DEFAULT_SESSION 
 +    ;; 
 +esac 
 +</code> 
 + 
 +Dans votre shell, créer l'alias suivant 
 +<code bash>alias x='xinit ~/.xinitrc'</code> 
 +A la connexion, un **x** lancer xfce, **x o** openbox **x b** blackbox.... 
 + 
 +=====Monter les périphériques amovibles===== 
 +Attention la version d’automount des repos ne permet pas de monter du FAT32. Utiliser cette procédure. 
 + 
 +====Installer git==== 
 +<code bash># pkg install git 
 +# git clone https://github.com/vermaden/automount.git 
 +</code> 
 + 
 + 
 + 
 +====Initialisation des ports==== 
 +(nécessaires pour compiler exfat-utils/exFAT et  sysutils/fusefs-exfat) 
 + 
 +<code bash># portsnap fetch 
 +# portsnap extract 
 +</code> 
 + 
 +Compilation de fusefs-exfat 
 +<code bash># cd /usr/ports/sysutils/fusefs-exfat/ 
 +# make install clean</code> 
 +Accepter la licence et toutes les options par défaut 
 + 
 +Compilation de exfat-utils 
 +<code bash># cd /usr/ports/sysutils/exfat-utils/ 
 +# make install clean</code> 
 +Même procédure 
 + 
 +Installer le reste des dépendances via pkg 
 +<code bash># pkg install fusefs-ntfs fusefs-ext4fuse fusefs-hfsfuse fusefs-lkl fusefs-simple-mtpfs zenity    </code>  
 + 
 + 
 +Détarer automount-1.6.1.tar.gz récupéré du git , entrez dans le dossier 
 + 
 +Editer ce fichier de cette façon 
 +<code bash>$ cat /usr/local/etc/automount.conf 
 +USERUMOUNT=YES 
 +ATIME=NO 
 +REMOVEDIRS=YES 
 +FM="thunar" 
 +USER=ragnarok 
 +ENCODING=fr_FR.UTF-8 
 +CODEPAGE=cp850</code> 
 + 
 +Installation manuelle d'automount 
 +<code bash># cp automount.conf      /usr/local/etc/automount.conf 
 +# cp automount_devd.conf /usr/local/etc/devd/automount_devd.conf 
 +# cp automount           /usr/local/sbin/automount 
 +# chmod +x               /usr/local/sbin/automount 
 +# /etc/rc.d/devd restart</code> 
 +Et hop, ça fonctionne…... 
 + 
 +=====Dropbox===== 
 +Pas de portage Dropbox sous freeBSD 
 +Le kernel de freeBSD ne prend pas en charge **inotify** donc pas de dropbox... En tout cas dropbox ne fournit pas de client freeBSD. Reste à trouver une alternative ou utiliser wine et le client windows (parait il)... Il y aussi [[https://www.freshports.org/devel/libinotify|libnotify]] mais pas trop cherché dans ce sens .... 
 + 
 +En alternative, il y a [[https://www.freshports.org/net/rclone|rclone]] qui fait très bien le travail mais en ligne de commande. Mais reste très gérable. 
 + 
 + <code bash>pkg info rclone 
 +rclone-1.43 
 +Name           : rclone 
 +Version        : 1.43 
 +Installed on   : Sat Feb 23 19:02:31 2019 CET 
 +Origin         : net/rclone 
 +Architecture   : FreeBSD:12:amd64 
 +Prefix         : /usr/local 
 +Categories     : net 
 +Licenses       : MIT 
 +Maintainer     : wg@FreeBSD.org 
 +WWW            : https://rclone.org/ 
 +Comment        : Sync files to and from various cloud services 
 +Annotations    
 + FreeBSD_version: 1200086 
 + repo_type      : binary 
 + repository     : FreeBSD 
 +Flat size      : 26.1MiB 
 +Description     
 +Sync files to and from Google Drive, S3, Swift, Cloudfiles, Dropbox and 
 +Google Cloud Storage 
 + 
 +WWW: https://rclone.org/</code> 
 + 
 +On l'installe  
 +<code bash># pkg install rclone</code> 
 + 
 +Puis on le configure 
 +<code bash>$ rclone config</code> 
 + 
 +Toute la doc est là [[https://rclone.org/dropbox/|Configurer rclone pour Dropbox]] 
 + 
 +L'option dropbox est la **7**, on valide le tout et on finit par être redirigé vers une page **d'association dropbox/rclone** qu'on renseigne et valide. 
 + 
 +Sur mon système mon répertoire **dropbox** et dans mon** /home/$USER/Dropbox** et contient 2 dossiers essentiels qui seront mis à jour soit de mon **PC vers la Dropbox** ou de la **Dropbox vers mon PC**. 
 + 
 +J'ai écrit ce script qui fonctionne sur 3 arguments 
 +* le premier : **IN** ou **OUT** : la synchronisation se fait vers la Dropbox ou depuis la Dropbox 
 +* le second : **répertoire à mettre à jour** : COURS ou DIR 
 +* le dernier : **dry** ou **write** : **dry** : on simule, **write** on met à jour 
 + 
 +Puis alias : 
 +<code bash>alias dropbox='/home/ragnarok/SCRIPTS/dropbox.sh'</code> 
 + 
 +Pour mettre à jour le répertoire DIR depuis la Dropbox vers mon PC 
 +<code bash>dropbox IN DIR write</code> 
 + 
 +Pour simuler une synchroniation du répertoire COURS de mon PC vers la Dropbox 
 +<code bash>dropbox OUT COURS dry</code> 
 + 
 +Et c'est tout ! Le script ci-dessous :  
 + 
 + 
 +<code bash>#!/bin/sh 
 +  echo == DEBUG == 
 +  echo "Nom du script : $0"; 
 +  echo argument 1 : $1 
 +  echo argument 2 : $2 
 +  echo "Tous les arguments : $* ($# arguments)" 
 +  echo == FIN DEBUG == 
 + 
 + 
 +# ========================================= 
 +case $# in 
 +  0) echo "Aucun parametre" 
 +     echo "Syntaxe :  $0 IN/OUT DIR/COURS";; 
 +  1) echo "Il manque un paramètre !" 
 +     echo "Syntaxe :  $0 IN/OUT DIR/COURS";; 
 +  2) echo "2 parametres passes au programme : $1 et $2";; 
 +  3) echo "Le 3eme argument ne peut être que --dry-run ou write";; 
 +  *) echo "TROP DE PARAMETRES !" 
 +     echo "Syntaxe :  $0 IN/OUT DIR/COURS";; 
 +esac 
 + 
 +# ========================================= 
 +    if [ $1 == "IN"
 +        then 
 +            echo "Depuis la dropbox"; 
 +     source="dropbox:/"    ; 
 +            dest="/home/ragnarok/Dropbox/"; 
 + 
 +    elif [ $1 == "OUT"
 +        then    
 +            echo "Vers la dropbox"
 +     source="/home/ragnarok/Dropbox/"    ;  
 +            dest="dropbox:/"; 
 + 
 +    else 
 +        echo "$1  : Soit IN soit OUT"; 
 + exit; 
 +    fi 
 +# ========================================= 
 +    if [ $2 == "DIR"
 +        then 
 +            echo "Repertoire de DIR"; 
 +            dir="DIR-2018-2019"; 
 +    elif [ $2 == "COURS"
 +        then    
 +            echo "Repertoire de COURS"  
 +     dir="COURS-2018-2019"; 
 +    elif [ $2 == "ecole"
 +        then    
 +     echo "Repertoire Ecole"  
 +     dir="ecole"; 
 +    else 
 +        echo "$2  : Soit DIR soit COURS soit ecole"; 
 + exit; 
 +    fi 
 +# ========================================= 
 + 
 +  if [ $3 == "dry"
 +        then 
 +            echo "Option --dry-run activée"; 
 +     option="--dry-run"; 
 +  elif [ $3 == "write"
 +        then 
 +            echo "Option: aucuneEn action"; 
 +     option=""; 
 +  else 
 +            echo "$3  : Ne peut être que dry ou write"; 
 + exit; 
 +    fi 
 +# ========================================= 
 + 
 +echo "rclone sync $source$dir $dest$dir $option --progress" 
 +rclone sync $source$dir $dest$dir $option --progress 
 + 
 +echo " --------------- Done."; 
 +</code> 
 +===== WINE ===== 
 +Attention il faut installer le paquet i386 même si on est en 64bit, sinon erreur de segmentation. 
 + 
 +Donc  
 +<code bash>pkg install i386-wine</code> 
 + 
 +Puis peaufinage via  
 +<code bash>$ winecfg</code> 
 + 
 +Accepter tout ce qu'il propose de télécharger et installer. 
 + 
 + 
 +Fonctionne nickel, mais les polices sont vraiment bizarres. 
 + 
 +Éditer **~/.config/fontconfig/fonts.conf** de cette manière :  
 +<code bash><?xml version="1.0"?> 
 +<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> 
 +  
 +<fontconfig> 
 +  
 +  <!-- antialias all fonts --> 
 +  <match target="font"> 
 +    <edit name="antialias" mode="assign"><bool>true</bool></edit> 
 +    <edit name="hinting"   mode="assign"><bool>true</bool></edit> 
 +    <edit name="hintstyle" mode="assign"><const>hintslight</const></edit> 
 +    <edit name="rgba"      mode="assign"><const>rgb</const> </edit> 
 +    </match> 
 +  
 +</fontconfig></code> 
 + 
 +=====Arduino===== 
 +Surtout ne pas installer la version depuis les ports, elle ne passe pas (l'iDE d'aruino ne sait pas compiler) et c'est hyper casse-pieds pour la desinstaller. Préférer la version précompilée (**pkg**). 
 +<code bash>pkg install arduino</code> 
 + 
 +Si nécessaire, inclure votre $USER aux groupes **operator** et **dialer** 
 +<code bash> 
 +# sudo pw groupmod operator -m $USER 
 +# sudo pw groupmod dialer -m $USER</code> 
 + 
 +Donner l'accès aux périphériques USB via /etc/devfs.rules 
 +# cat /etc/devfs.rules 
 +
 +# Allow operators access to usb devices. 
 +
 +[operator_usb=5] 
 +add path usbctl mode 0660 group operator 
 +add path 'usb/*' mode 0660 group operator 
 +add path 'ugen*' mode 0660 group operator 
 + 
 +Prise en compte des changements 
 +<code bash># sudo sysrc devfs_system_ruleset=operator_usb</code> 
 +Relance du service devfs 
 +<code bash># sudo service devfs restart</code> 
 + 
 +On branche sa carte et on vérifie sa détection 
 +<code bash>$ usbconfig  
 +... 
 +ugen0.2: <Arduino (www.arduino.ccproduct 0x0043> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA) 
 +</code> 
 + 
 +{{ ::capture_d_ecran_2019-03-10_14-53-21.png?direct&400 |}} 
 + 
 + 
 +=====DUAL BOOT freeBSD / Linux===== 
 +J'avais une Linux Debian SID d'installée sur mon PC.  
 + 
 +<code bash>$ sudo fdisk -l 
 +Disque /dev/sda : 111,8 GiB, 120034123776 octets, 234441648 secteurs 
 +Unités : secteur de 1 × 512 = 512 octets 
 +Taille de secteur (logique / physique) : 512 octets / 512 octets 
 +taille d'E/S (minimale / optimale) : 512 octets / 512 octets 
 +Type d'étiquette de disque : dos 
 +Identifiant de disque : 0x0c3bb11c 
 + 
 +Périphérique Amorçage    Début       Fin  Secteurs Taille Id Type 
 +/dev/sda1           2048 143362047 143360000  68,4G 83 Linux 
 +/dev/sda2             226338814 234440703   8101890   3,9G  5 Étendue 
 +/dev/sda3             143362048 226338813  82976766  39,6G a5 FreeBSD 
 +/dev/sda5             226338816 234440703   8101888   3,9G 82 partition d'échange</code> 
 + 
 +Donc on voit 
 +    * sda1 : Partition primaire : Racine linux / 
 +    * sda2 : Partition étendue 
 +    * sda 3 : FreeBSD 
 +    * sda5 : swap Linux 
 + 
 +**Configuration du grub sous LINUX** 
 +Sous LINUX, éditer le fichier suivant : **/etc/grub.d/40_custom** et créer l'entrée ci-dessous 
 + 
 +Attention hd0,3 car freeBSD est sur /dev/sda3, s'il était sur le 1, mettre hd0,1, sur le 2 hd0,2, sur la seconde partition d'un deuxième disque hd1,2... Donc à adapter à votre configuration 
 + 
 +<code bash>#!/bin/sh 
 +exec tail -n +3 $0 
 +# This file provides an easy way to add custom menu entries.  Simply type the 
 +# menu entries you want to add after this comment.  Be careful not to change 
 +# the 'exec tail' line above. 
 +menuentry "FreeBSD 12" { 
 +    set root='(hd0,3)' 
 +    kfreebsd /boot/loader 
 +
 +</code> 
 + 
 +Prendre en compte les modifications de la configuration du grub 
 + 
 +<code bash># update-grub 
 +Création du fichier de configuration GRUB… 
 +Image Linux trouvée : /boot/vmlinuz-4.10.0-38-generic 
 +Image mémoire initiale trouvée : /boot/initrd.img-4.10.0-38-generic 
 +Found memtest86+ image: /boot/memtest86+.elf 
 +Found memtest86+ image: /boot/memtest86+.bin 
 +unknown Linux distribution trouvé sur /dev/sda3 
 +</code> 
 + 
 +Rebooter et la nouvelle entrée est fonctionnelle dans le grub. 
 + 
 +===== Bash ===== 
 + 
 +<code bash># chsh -s /usr/local/bin/bash {username}</code> 
 + 
 + 
 +<code bash>grep ragnarok /etc/passwd</code> 
 + 
 + 
 + 
 + 
 +<code bash>cat /etc/fstab 
 +## append the following to /etc/fstab file ## 
 +fdesc  /dev/fd  fdescfs  rw 0 0</code> 
 + 
 +<code bash>add the following to your ~/.bashrc or ~/.bash_profile file: 
 +[[ $PS1 && -f /usr/local/share/bash-completion/bash_completion.sh ]] && \ 
 + . /usr/local/share/bash-completion/bash_completion.sh</code> 
 + 
 + 
 +<code bash># pkg install bash-completion</code> 
 + 
 + 
 +=====Sources===== 
 +Je n'ai pas pondu tout cela tout seul, j'ai lu pas mal de docs et les forums BSD. 
 +Voici les sources indispensables à mon avis : 
 +  *[[http://olivier.cochard.me/bidouillage/installation-et-configuration-de-freebsd-comme-poste-de-travail|O. Cochard FreeBSD]] 
 +  *[[https://vermaden.wordpress.com/|Mine d'or d'informations]] 
 +  *[[https://github.com/vermaden|GIT de Vermaden]] 
 +  *[[https://www.c0ffee.net/blog/freebsd-on-a-laptop/|FreeBSD on a laptop]] 
 +  *[[https://www.tecmint.com/things-to-do-after-installing-freebsd/|Post installation freeBSD laptop]] 
 +  *[[https://www.cyberciti.biz/faq/freebsd-bash-installation/|FreeBSD Install BASH Shell Using pkg command]] 
 + 
 + 
 +Et surtout 
 +  *[[https://www.freebsd.org/| Site FreeBSD]] 
 +  *[[https://forums.freebsd.org/|Forums FreeBSD]] 
 +  *[[https://www.freebsd.org/doc/fr/books/handbook/|HandBook Français de FreeBSD]]
installfreebsd.txt · Dernière modification : 2020/06/06 17:12 de cyrille