Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteProchaine révisionLes deux révisions suivantes | ||
installfreebsd [2019/03/10 11:18] – cyrille | installfreebsd [2019/03/10 15:10] – [Sources] cyrille | ||
---|---|---|---|
Ligne 8: | Ligne 8: | ||
Suivre l' | Suivre l' | ||
- | {{ : | + | | {{ : |
- | {{ : | + | |
Faire attention au stade de configuration réseau de choisir pour ETSI / FR | Faire attention au stade de configuration réseau de choisir pour ETSI / FR | ||
" | " | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | " | ||
+ | </ | ||
+ | |||
+ | |||
+ | Voici les options que j'ai choisies lors de **System Configuration** | ||
{{ : | {{ : | ||
Ligne 58: | Ligne 64: | ||
=====Initialisation de pkg===== | =====Initialisation de pkg===== | ||
- | {{ :img_3211.jpg? | + | | {{ :img_3213.jpg? |
Ligne 82: | Ligne 88: | ||
- | =====Affichage drm-kmod===== | + | =====Affichage |
Installer le paquet | Installer le paquet | ||
<code bash>pkg install drm-kmod</ | <code bash>pkg install drm-kmod</ | ||
Ligne 103: | Ligne 109: | ||
- | ======Pour activer le suspend et resume | + | ====Pour activer le suspend et resume ==== |
Créer ces 2 fichiers | Créer ces 2 fichiers | ||
<code bash>pkg info -D xfce4-session | <code bash>pkg info -D xfce4-session | ||
Ligne 132: | Ligne 138: | ||
- | ======Démarrer xfce====== | + | ====Démarrer xfce==== |
Ligne 141: | Ligne 147: | ||
On utilisera xinit pour le lacement de XFCE | On utilisera xinit pour le lacement de XFCE | ||
- | Créer dans le Home un .xinitrc | + | Créer dans le Home un **.xinitrc** |
<code bash># SET PROPER locale | <code bash># SET PROPER locale | ||
Ligne 159: | Ligne 165: | ||
Lier xinitrc et xsession | Lier xinitrc et xsession | ||
<code bash> ln -s ~/.xinitrc ~/ | <code bash> ln -s ~/.xinitrc ~/ | ||
+ | |||
+ | 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> | ||
+ | et la commande **x** suffit au démarrage de XFCE | ||
+ | |||
+ | Sinon : jeter un oeil à SLIM : [[https:// | ||
+ | |||
Ligne 211: | Ligne 225: | ||
</ | </ | ||
+ | ====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</ | ||
+ | Sinon la(es) connexion(s) se gère(nt) via : | ||
+ | <code bash> cat / | ||
+ | |||
+ | ====Barre de Menu pour XFCE==== | ||
+ | |||
+ | J' | ||
+ | |||
+ | <code bash># pkg install plank</ | ||
+ | |||
+ | Ajouter cette commande au démarrage de XFCE | ||
=====Paramétrage de Xorg===== | =====Paramétrage de Xorg===== | ||
- | ======Carte video====== | + | ====Carte video==== |
Créer ces 2 fichiers | Créer ces 2 fichiers | ||
<code bash># cat / | <code bash># cat / | ||
Ligne 223: | Ligne 250: | ||
EndSection</ | EndSection</ | ||
- | ======Le clavier====== | + | ====Le clavier==== |
<code bash># cat / | <code bash># cat / | ||
Section " | Section " | ||
Ligne 234: | Ligne 261: | ||
- | + | =====Configuration spécifique===== | |
+ | ====timeout boot==== | ||
Diminuer le timeout du menu du boot loader à 2 secondes | Diminuer le timeout du menu du boot loader à 2 secondes | ||
<code bash> | <code bash> | ||
+ | |||
+ | ====Acc. chiffr.==== | ||
Accélération de chiffrement des processeurs modernes | Accélération de chiffrement des processeurs modernes | ||
<code bash># | <code bash># | ||
- | Module à charger dans /boot et non etcrc.conf pour un chargement plus rapide | + | Module à charger dans /boot et non /etc/rc.conf pour un chargement plus rapide |
- | + | ||
- | + | ||
- | On commence par optimiser le scheduler pour un usage desktop: | + | |
+ | ====Scheduler==== | ||
+ | Configuration pour une utilisation pour desktop/ | ||
<code bash> | <code bash> | ||
Pour activer la réponse «yes» aux questions de fsck au démarrage: | Pour activer la réponse «yes» aux questions de fsck au démarrage: | ||
- | |||
<code bash> | <code bash> | ||
+ | ====Micro codes CPU==== | ||
Utiliser micro codes CPU | Utiliser micro codes CPU | ||
<code bash>pkg install devcpu-data | <code bash>pkg install devcpu-data | ||
service microcode_update enable | service microcode_update enable | ||
service microcode_update start</ | service microcode_update start</ | ||
+ | |||
+ | ==== ACPI ==== | ||
+ | === CPU et TEMP === | ||
| | ||
Ligne 262: | Ligne 292: | ||
sysrc kld_list+=cpuctl</ | sysrc kld_list+=cpuctl</ | ||
+ | ==== 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' | ||
+ | |||
+ | Solution adoptée. | ||
+ | |||
+ | Installer : | ||
+ | <code bash>pkg install xbindkeys intel-backlight</ | ||
+ | |||
+ | |||
+ | Fichier de configuration : | ||
+ | <code bash>cat .xbindkeysrc | ||
+ | # PERSONNAL XBINDKEYS | ||
+ | " | ||
+ | Alt + Down | ||
+ | |||
+ | " | ||
+ | Alt + Up | ||
+ | </ | ||
+ | |||
+ | Lancer xbindkeys au démarrage de la session **~/ | ||
+ | |||
+ | Ajouter cette section avant le démarrage de XFCE dans | ||
+ | <code bash># Démarrer xbindkeys | ||
+ | / | ||
+ | |||
+ | ==== 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 | ||
+ | |||
+ | Modifier le fichier **~/ | ||
+ | |||
+ | <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 | ||
+ | </ | ||
+ | Dans votre shell, créer l' | ||
+ | <code bash> | ||
+ | A la connexion, un **x** lancer xfce, **x o** openbox **x b** blackbox.... | ||
- | Monter les périphériques amovibles | + | =====Monter les périphériques amovibles===== |
Attention la version d’automount des repos ne permet pas de monter du FAT32. Utiliser cette procédure. | Attention la version d’automount des repos ne permet pas de monter du FAT32. Utiliser cette procédure. | ||
- | Installer git | + | ====Installer git==== |
<code bash># pkg install git | <code bash># pkg install git | ||
# git clone https:// | # git clone https:// | ||
Ligne 274: | Ligne 368: | ||
- | Initialisation des ports | + | ====Initialisation des ports==== |
(nécessaires pour compiler exfat-utils/ | (nécessaires pour compiler exfat-utils/ | ||
Ligne 314: | Ligne 408: | ||
# / | # / | ||
Et hop, ça fonctionne…... | 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:// | ||
+ | |||
+ | En alternative, | ||
+ | |||
+ | < | ||
+ | rclone-1.43 | ||
+ | Name : rclone | ||
+ | Version | ||
+ | Installed on : Sat Feb 23 19:02:31 2019 CET | ||
+ | Origin | ||
+ | Architecture | ||
+ | Prefix | ||
+ | Categories | ||
+ | Licenses | ||
+ | Maintainer | ||
+ | WWW : https:// | ||
+ | Comment | ||
+ | Annotations | ||
+ | FreeBSD_version: | ||
+ | repo_type | ||
+ | repository | ||
+ | Flat size : 26.1MiB | ||
+ | Description | ||
+ | Sync files to and from Google Drive, S3, Swift, Cloudfiles, Dropbox and | ||
+ | Google Cloud Storage | ||
+ | |||
+ | WWW: https:// | ||
+ | |||
+ | On l' | ||
+ | <code bash># pkg install rclone</ | ||
+ | |||
+ | Puis on le configure | ||
+ | <code bash>$ rclone config</ | ||
+ | |||
+ | Toute la doc est là [[https:// | ||
+ | |||
+ | L' | ||
+ | |||
+ | Sur mon système mon répertoire **dropbox** et dans mon** / | ||
+ | |||
+ | 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 1 alias : | ||
+ | <code bash> | ||
+ | |||
+ | Pour mettre à jour le répertoire DIR depuis la Dropbox vers mon PC | ||
+ | <code bash> | ||
+ | |||
+ | Pour simuler une synchroniation du répertoire COURS de mon PC vers la Dropbox | ||
+ | <code bash> | ||
+ | |||
+ | Et c'est tout ! Le script ci-dessous : | ||
+ | |||
+ | |||
+ | <code bash># | ||
+ | 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 " | ||
+ | 1) echo "Il manque un paramètre !" | ||
+ | echo " | ||
+ | 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 " | ||
+ | esac | ||
+ | |||
+ | # ========================================= | ||
+ | if [ $1 == " | ||
+ | then | ||
+ | echo " | ||
+ | source=" | ||
+ | dest="/ | ||
+ | |||
+ | elif [ $1 == " | ||
+ | then | ||
+ | echo "Vers la dropbox" | ||
+ | source="/ | ||
+ | dest=" | ||
+ | |||
+ | else | ||
+ | echo " | ||
+ | exit; | ||
+ | fi | ||
+ | # ========================================= | ||
+ | if [ $2 == " | ||
+ | then | ||
+ | echo " | ||
+ | dir=" | ||
+ | elif [ $2 == " | ||
+ | then | ||
+ | echo " | ||
+ | dir=" | ||
+ | elif [ $2 == " | ||
+ | then | ||
+ | echo " | ||
+ | dir=" | ||
+ | else | ||
+ | echo " | ||
+ | exit; | ||
+ | fi | ||
+ | # ========================================= | ||
+ | |||
+ | if [ $3 == " | ||
+ | then | ||
+ | echo " | ||
+ | option=" | ||
+ | elif [ $3 == " | ||
+ | then | ||
+ | echo " | ||
+ | option=""; | ||
+ | else | ||
+ | echo " | ||
+ | exit; | ||
+ | fi | ||
+ | # ========================================= | ||
+ | |||
+ | echo " | ||
+ | rclone sync $source$dir $dest$dir $option --progress | ||
+ | |||
+ | echo " --------------- Done."; | ||
+ | </ | ||
+ | ===== 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</ | ||
+ | |||
+ | Puis peaufinage via | ||
+ | <code bash>$ winecfg</ | ||
+ | |||
+ | Fonctionne nickel, mais les polices sont vraiment bizarres. | ||
+ | |||
+ | Éditer **~/ | ||
+ | <code bash><? | ||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | <!-- antialias all fonts --> | ||
+ | <match target=" | ||
+ | <edit name=" | ||
+ | <edit name=" | ||
+ | <edit name=" | ||
+ | <edit name=" | ||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | =====Arduino===== | ||
+ | Surtout ne pas installer la version depuis les ports, elle ne passe pas (l'iDE d' | ||
+ | <code bash>pkg install arduino</ | ||
+ | |||
+ | Si nécessaire, | ||
+ | <code bash> | ||
+ | # sudo pw groupmod operator -m $USER | ||
+ | # sudo pw groupmod dialer -m $USER</ | ||
+ | |||
+ | Donner l' | ||
+ | # cat / | ||
+ | # | ||
+ | # Allow operators access to usb devices. | ||
+ | # | ||
+ | [operator_usb=5] | ||
+ | add path usbctl mode 0660 group operator | ||
+ | add path ' | ||
+ | add path ' | ||
+ | |||
+ | Prise en compte des changements | ||
+ | <code bash># sudo sysrc devfs_system_ruleset=operator_usb</ | ||
+ | Relance du service devfs | ||
+ | <code bash># sudo service devfs restart</ | ||
+ | |||
+ | On branche sa carte et on vérifie sa détection | ||
+ | <code bash>$ usbconfig | ||
+ | ... | ||
+ | ugen0.2: <Arduino (www.arduino.cc) product 0x0043> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA) | ||
+ | </ | ||
+ | |||
+ | {{ :: | ||
+ | |||
+ | |||
+ | =====DUAL BOOT freeBSD / Linux===== | ||
+ | J' | ||
+ | |||
+ | <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' | ||
+ | Identifiant de disque : 0x0c3bb11c | ||
+ | |||
+ | Périphérique Amorçage | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | |||
+ | 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 : **/ | ||
+ | |||
+ | 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># | ||
+ | exec tail -n +3 $0 | ||
+ | # This file provides an easy way to add custom menu entries. | ||
+ | # menu entries you want to add after this comment. | ||
+ | # the 'exec tail' line above. | ||
+ | menuentry " | ||
+ | set root=' | ||
+ | kfreebsd / | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | 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 : / | ||
+ | Image mémoire initiale trouvée : / | ||
+ | Found memtest86+ image: / | ||
+ | Found memtest86+ image: / | ||
+ | unknown Linux distribution trouvé sur /dev/sda3 | ||
+ | </ | ||
+ | |||
+ | Rebooter et vous verrez la nouvelle entrée fonctionnelle dans le grub. | ||
+ | |||
+ | =====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:// | ||
+ | *[[https:// | ||
+ | *[[https:// | ||
+ | *[[https:// | ||
+ | *[[https:// | ||
+ | |||
+ | |||
+ | Et surtout | ||
+ | *[[https:// | ||
+ | *[[https:// | ||
+ | *[[https:// |