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/02/12 15:27] – cyrille | installfreebsd [2019/06/05 13:46] – [Mises à jour] 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 | + | Testé avec un schéma de partition UFS et ZFS, en mode UEFI et LEGACY. |
- | bsdinstall netconfig | + | |
- | $ pkg | ||
- | Installation / initialisation de l' | ||
- | $ pkg install nano | + | ===== Installation ===== |
- | Editeur plus simple que VI | + | |
- | pkg bash bash-completion | + | Récupérer l' |
- | Installation | + | Suivre |
- | pkg install sudo | + | | {{ : |
+ | Faire attention au stade de configuration réseau de choisir pour ETSI / FR | ||
+ | " | ||
- | Editer | + | <WRAP center round important 60%> |
+ | " | ||
+ | </WRAP> | ||
- | | ||
- | your_user ALL=(ALL) ALL | + | Voici les options que j'ai choisies lors de **System Configuration** |
+ | {{ : | ||
- | nano / | + | Rebooter sur freeBSD |
- | Ajouter | + | |
- | dbus_enable=" | + | |
- | hald_enable=" | + | |
- | Rebooter pour prise en charge de dbus | ||
- | pkg install xorg | + | =====Francisation===== |
- | Installation du serveur X | + | Editer le fichier **/ |
- | Système en français | ||
- | nano / | ||
- | french|French Users Accounts:\ | + | < |
- | : | + | : |
- | : | + | : |
- | :tc=default: | + | : |
- | Commenter la section " | + | : |
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | : | ||
+ | | ||
+ | |||
+ | Ajouter pour que les locales soient prises en compte | ||
+ | <code bash> | ||
+ | : | ||
- | prise en compte | + | Le recharger |
+ | <code bash> | ||
- | # cap_mkdb /etc/login.conf | + | =====Initialisation de pkg===== |
+ | | {{ :img_3213.jpg? | ||
- | Puis éditer le fichier de mot de passe par la commande vipw. , Et rechercher votre login : | + | =====AJOUTER un user===== |
+ | <code bash># adduser</ | ||
+ | L’inclure dans les groupes : **wheel operator video** | ||
- | # vipw | + | Editer .login_conf |
- | olivier:$1$00edYNK2$heBNRz65txD0j7bGtB40r.:1001:1001::0:0:Olivier Cochard-Labbe:/home/ | + | <code bash> |
+ | [ragnarok@asgard-freebsd:~] $ cat .login_conf | ||
+ | # $FreeBSD: releng/12.0/ | ||
+ | # | ||
+ | # see login.conf(5) | ||
+ | # | ||
+ | me:\ | ||
+ | :charset=UTF-8:\ | ||
+ | :lang=fr_FR.UTF-8:</code> | ||
- | Il faut ajouter «french» entre les ::, ce qui va donner : | ||
- | | + | |
+ | =====Gestion du son===== | ||
+ | |||
+ | <code bash># kldload snd_driver</ | ||
+ | <code bash>cat / | ||
+ | Installed devices: | ||
+ | pcm0: <IDT 92HD93BXX (Analog 2.0+HP/ | ||
+ | pcm1: <IDT 92HD93BXX (Analog)> | ||
+ | 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 bash># sysrc kld_list+=snd_hda</ | ||
+ | |||
+ | |||
+ | =====Affichage | ||
+ | Installer le paquet | ||
+ | <code bash>pkg install drm-kmod</ | ||
+ | |||
+ | Initialisation au boot | ||
+ | <code bash> | ||
+ | |||
+ | Le charger | ||
+ | <code bash> | ||
+ | |||
+ | Vérifier | ||
+ | <code bash> | ||
+ | |||
+ | |||
+ | |||
+ | ===== Network Manager ===== | ||
+ | |||
+ | |||
+ | ==== Network Manager ==== | ||
+ | |||
+ | |||
+ | <code bash>pkg show networkmgr | ||
+ | WWW : https:// | ||
+ | Comment | ||
+ | Annotations | ||
+ | repo_type | ||
+ | repository | ||
+ | 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. | ||
+ | </ | ||
+ | |||
+ | Il faudra ensuite configurer DOA pour que ça fonctionne | ||
+ | |||
+ | <code bash>cat / | ||
+ | |||
+ | permit nopass keepenv root | ||
+ | permit | ||
+ | permit nopass keepenv | ||
+ | permit nopass keepenv :wheel cmd ifconfig | ||
+ | permit nopass keepenv :wheel cmd service</ | ||
+ | |||
+ | Se delogguer, l' | ||
+ | |||
+ | |||
+ | Gestion de la connexion par ce fichier | ||
+ | |||
+ | <code bash> cat / | ||
+ | |||
+ | {{ ::wifi-network.png? | ||
+ | |||
+ | ==== CLI graphique de gestion ==== | ||
+ | |||
+ | <code bash> pkg install | ||
+ | |||
+ | {{ ::wifi-mng.png? | ||
+ | ===== Devices | ||
+ | Permettra en autres l' | ||
+ | |||
+ | <code bash> | ||
+ | |||
+ | # Allow all users to access optical media | ||
+ | perm | ||
+ | perm / | ||
+ | perm / | ||
+ | perm / | ||
+ | |||
+ | # Allow all USB Devices to be mounted | ||
+ | perm / | ||
+ | perm / | ||
+ | perm / | ||
+ | perm / | ||
+ | perm / | ||
+ | perm / | ||
+ | |||
+ | # Misc other devices | ||
+ | perm / | ||
+ | perm / | ||
+ | perm / | ||
+ | perm / | ||
+ | perm / | ||
+ | perm / | ||
+ | perm / | ||
+ | perm / | ||
+ | </ | ||
+ | |||
+ | <code bash>cat / | ||
+ | |||
+ | [devfsrules_common=7] | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
+ | add path ' | ||
| | ||
+ | Mettre à jour le **/ | ||
+ | |||
+ | <code bash> | ||
+ | |||
+ | Prendre en compte les modifications sans rebooter | ||
+ | <code bash>/ | ||
+ | |||
+ | ===== Powerd++ ===== | ||
+ | Gestion des processeurs multicores. | ||
+ | |||
+ | Desinstaller **powerd** | ||
+ | |||
+ | <code bash># service powerd stop | ||
+ | Stopping powerd. | ||
+ | Waiting for PIDS: 50127. | ||
+ | # service powerd disable | ||
+ | powerd disabled in / | ||
+ | |||
+ | Ensuite on peut installer et lancer **powerd++** : | ||
+ | <code bash># service powerdxx enable | ||
+ | powerdxx enabled in / | ||
+ | # service powerdxx start | ||
+ | Starting powerdxx.</ | ||
+ | =====X11 / XFCE===== | ||
+ | |||
+ | <code bash>pkg install xorg xfce xfce4-goodies xfce4-mixer xfce4-volumed xf86-video-intel file-roller</ | ||
+ | |||
+ | |||
+ | |||
+ | ====Pour activer le suspend et resume ==== | ||
+ | Créer ces 2 fichiers | ||
+ | |||
+ | **/ | ||
+ | |||
+ | |||
+ | <code bash> | ||
+ | if ((action.id == " | ||
+ | action.id == " | ||
+ | && subject.isInGroup(" | ||
+ | return polkit.Result.YES; | ||
+ | } | ||
+ | }); | ||
+ | </ | ||
+ | |||
+ | **/ | ||
+ | |||
+ | <code bash> | ||
+ | if (action.id == " | ||
+ | && subject.isInGroup(" | ||
+ | return polkit.Result.YES; | ||
+ | } | ||
+ | });</ | ||
+ | |||
+ | puis | ||
+ | |||
+ | <code bash> | ||
+ | |||
+ | |||
+ | ====Démarrer xfce==== | ||
+ | |||
+ | |||
+ | |||
+ | On aura besoin de dbus | ||
+ | <code bash>Pkg install dbus | ||
+ | service dbus onestart</ | ||
+ | |||
+ | Démarrage auttomatique, | ||
+ | <code bash>cat / | ||
+ | dbus_enable=" | ||
+ | |||
+ | On utilisera xinit pour le lacement de XFCE | ||
+ | Créer dans le Home un **.xinitrc** | ||
+ | |||
+ | <code bash># SET PROPER locale | ||
+ | export LANG=" | ||
+ | export LC_ALL=" | ||
+ | export LC_MESSAGES=" | ||
+ | |||
+ | # Clavier français | ||
+ | setxkbmap fr & | ||
+ | # Lancer xfce | ||
+ | / | ||
+ | |||
+ | Lier xinitrc et xsession | ||
+ | <code bash> ln -s ~/.xinitrc ~/ | ||
+ | |||
+ | Enfin lancer la session X | ||
+ | <code bash> | ||
+ | |||
+ | 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:// | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ====anti-aliasing avec la police Helvetica===== | ||
+ | Editer ce fichier ainsi : **/ | ||
+ | <code bash><? | ||
+ | < | ||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | <match target=" | ||
+ | <edit name=" | ||
+ | < | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | < | ||
+ | < | ||
+ | <match target=" | ||
+ | <edit name=" | ||
+ | < | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | <patelt name=" | ||
+ | < | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | < | ||
+ | < | ||
+ | <patelt name=" | ||
+ | < | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | ====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===== | ||
+ | ====Carte video==== | ||
+ | Créer ces 2 fichiers | ||
+ | <code bash># cat / | ||
+ | Section " | ||
+ | Identifier " | ||
+ | Driver " | ||
+ | Option " | ||
+ | Option | ||
+ | EndSection</ | ||
+ | |||
+ | ====Le clavier==== | ||
+ | <code bash># cat / | ||
+ | Section " | ||
+ | Identifier " | ||
+ | Driver " | ||
+ | Option " | ||
+ | Option " | ||
+ | EndSection</ | ||
+ | |||
+ | |||
+ | |||
+ | =====Configuration spécifique===== | ||
+ | ====timeout boot==== | ||
+ | Diminuer le timeout du menu du boot loader à 2 secondes | ||
+ | <code bash> | ||
+ | |||
+ | ====Acc. chiffr.==== | ||
+ | Accélération de chiffrement des processeurs modernes | ||
+ | <code bash># | ||
+ | Module à charger dans /boot et non / | ||
+ | |||
+ | ====Scheduler==== | ||
+ | Configuration pour une utilisation pour desktop/ | ||
+ | <code bash> | ||
+ | |||
+ | Pour activer la réponse «yes» aux questions de fsck au démarrage: | ||
+ | <code bash> | ||
+ | ====Micro codes CPU==== | ||
+ | Utiliser micro codes CPU | ||
+ | <code bash>pkg install devcpu-data | ||
+ | service microcode_update enable | ||
+ | service microcode_update start</ | ||
+ | |||
+ | ==== ACPI ==== | ||
+ | === CPU et TEMP === | ||
+ | |||
+ | | ||
+ | | ||
+ | |||
+ | < | ||
+ | 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===== | ||
+ | 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:// | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | ====Initialisation des ports==== | ||
+ | (nécessaires pour compiler exfat-utils/ | ||
+ | |||
+ | <code bash># portsnap fetch | ||
+ | # portsnap extract | ||
+ | </ | ||
+ | |||
+ | Compilation de fusefs-exfat | ||
+ | <code bash># cd / | ||
+ | # make install clean</ | ||
+ | Accepter la licence et toutes les options par défaut | ||
+ | |||
+ | Compilation de exfat-utils | ||
+ | <code bash># cd / | ||
+ | # make install clean</ | ||
+ | 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 | ||
+ | |||
+ | |||
+ | 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 / | ||
+ | USERUMOUNT=YES | ||
+ | ATIME=NO | ||
+ | REMOVEDIRS=YES | ||
+ | FM=" | ||
+ | USER=ragnarok | ||
+ | ENCODING=fr_FR.UTF-8 | ||
+ | CODEPAGE=cp850</ | ||
+ | |||
+ | Installation manuelle d' | ||
+ | <code bash># cp automount.conf | ||
+ | # cp automount_devd.conf / | ||
+ | # cp automount | ||
+ | # chmod +x / | ||
+ | # / | ||
+ | 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</ | ||
+ | |||
+ | Accepter tout ce qu'il propose de télécharger et installer. | ||
+ | |||
+ | |||
+ | Fonctionne nickel, mais les polices sont vraiment bizarres. | ||
+ | |||
+ | Éditer **~/ | ||
+ | <code bash><? | ||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | <!-- antialias all fonts --> | ||
+ | <match target=" | ||
+ | <edit name=" | ||
+ | <edit name=" | ||
+ | <edit name=" | ||
+ | <edit name=" | ||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | ===== XFCE / Archives ===== | ||
+ | Si vous avez le message d' | ||
+ | |||
+ | <code bash>pkg install xarchiver</ | ||
+ | |||
+ | =====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) | ||
+ | </ | ||
+ | |||
+ | {{ :: | ||
+ | |||
+ | |||
+ | ===== Bash ===== | ||
+ | |||
+ | ==== bash comme shell par défaut ==== | ||
+ | |||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | Attention ne pas changer le shell du root | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | <code bash># chsh -s / | ||
+ | |||
+ | |||
+ | <code bash> | ||
+ | |||
+ | |||
+ | |||
+ | __Cas d'un système UFS__ | ||
+ | <code bash>cat /etc/fstab | ||
+ | ## append the following to /etc/fstab file ## | ||
+ | fdesc / | ||
+ | |||
+ | __Cas d'un système ZFS__ (**fdescfs** doit être monté après la racine zfs) | ||
+ | <code bash>cat /etc/fstab | ||
+ | ## append the following to /etc/fstab file ## | ||
+ | fdesc / | ||
+ | |||
+ | ==== Autocomplétion ==== | ||
+ | <code bash>add the following to your ~/.bashrc or ~/ | ||
+ | [[ $PS1 && -f / | ||
+ | . / | ||
+ | |||
+ | |||
+ | <code bash># pkg install bash-completion</ | ||
+ | |||
+ | ==== Alias ==== | ||
+ | Créer un fichier **.bash_aliases** | ||
+ | touch .bash_aliases | ||
+ | Et y mettre ses alias. Si non fait, insérer cette section dans le .bashrc | ||
+ | <code bash># Alias definitions. | ||
+ | # You may want to put all your additions into a separate file like | ||
+ | # ~/ | ||
+ | # See / | ||
+ | if [ -f ~/ | ||
+ | . ~/ | ||
+ | fi | ||
+ | </ | ||
+ | |||
+ | ===== VirtualBox ===== | ||
+ | Jeter un oeil : [[freebsdvirtualbox|VirtualBox sous freeBSD]] | ||
+ | |||
+ | |||
+ | =====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 la nouvelle entrée est fonctionnelle dans le grub. | ||
+ | |||
+ | ===== SSD Config [UFS] ===== | ||
+ | Rien d' | ||
+ | Chez moi ada0p2 (**/**) et ada0p4 (**/home**) | ||
+ | |||
+ | Rebooter et démarrer en mode :** Boot Single User** (le n°2). (Il ne faut pas que les partitions soient montées) | ||
+ | <code bash> | ||
+ | tunefs -t enable ada0p2 | ||
+ | tunefs -t enable ada0p4</ | ||
+ | |||
+ | Rebooter | ||
+ | |||
+ | Vérfier que ce soit pris en compte | ||
+ | < | ||
+ | tunefs: POSIX.1e ACLs: (-a) disabled | ||
+ | tunefs: NFSv4 ACLs: (-N) | ||
+ | tunefs: MAC multilabel: (-l) | ||
+ | tunefs: soft updates: (-n) | ||
+ | tunefs: soft update journaling: (-j) | ||
+ | tunefs: gjournal: (-J) | ||
+ | tunefs: trim: (-t) | ||
+ | tunefs: maximum blocks per file in a cylinder group: (-e) 4096 | ||
+ | tunefs: average file size: (-f) 16384 | ||
+ | tunefs: average number of files in a directory: (-s) 64 | ||
+ | tunefs: minimum percentage of free space: (-m) 8% | ||
+ | tunefs: space to hold for metadata blocks: (-k) 6408 | ||
+ | tunefs: optimization preference: (-o) time | ||
+ | tunefs: volume label: (-L) | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | ===== Problème de boot UFS ===== | ||
+ | Pour schéma de disque **UFS** | ||
+ | Au boot du système, j' | ||
+ | " | ||
+ | Une pression sur ENTER lançait cependant le système. | ||
+ | Voici la marche suivit par régler le problème (déclarer // | ||
+ | |||
+ | |||
+ | <code bash> | ||
+ | |||
+ | => | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | 440401960 | ||
+ | | ||
+ | Dans un premier temps, régénérer le secteur de boot | ||
+ | <code bash>cd /boot | ||
+ | gpart bootcode -b pmbr -p gptboot -i1 ada0</ | ||
+ | |||
+ | Si ne fonctionne touojours pas après un redémarrage, | ||
+ | <code bash> | ||
+ | ******* Working on device /dev/ada0 ******* | ||
+ | parameters extracted from in-core disklabel are: | ||
+ | cylinders=465141 heads=16 sectors/ | ||
+ | Figures below won't work with BIOS for partitions not in cyl 1 | ||
+ | parameters to be used for BIOS calculations are: | ||
+ | cylinders=465141 heads=16 sectors/ | ||
+ | Media sector size is 512 | ||
+ | Warning: BIOS sector numbering starts with sector 1 | ||
+ | Information from DOS bootblock is: | ||
+ | The data for partition 1 is: | ||
+ | sysid 238 (0xee),(EFI GPT) | ||
+ | start 1, size 468862127 (228936 Meg), flag 0 | ||
+ | beg: cyl 0/ head 0/ sector 2; | ||
+ | end: cyl 1023/ head 255/ sector 63 | ||
+ | |||
+ | The data for partition 2 is: | ||
+ | < | ||
+ | The data for partition 3 is: | ||
+ | < | ||
+ | The data for partition 4 is: | ||
+ | < | ||
+ | Do you want to change the active partition? [n] y | ||
+ | Supply a decimal value for " | ||
+ | |||
+ | On précise le numéro de la partition où booter et valide le reste. | ||
+ | |||
+ | On reboote et ça devrait passer | ||
+ | |||
+ | ===== ZFS Configuration ===== | ||
+ | Si vous avez choisi cette option, vous devriez avoir cette sortie. | ||
+ | |||
+ | |||
+ | <code bash> | ||
+ | [ragnarok@asgard-freeBSD: | ||
+ | NAME | ||
+ | zroot | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | </ | ||
+ | |||
+ | <code bash> | ||
+ | NAME PROPERTY | ||
+ | zroot | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | zroot/ | ||
+ | </ | ||
+ | |||
+ | Si problème de montage au boot, vérifier que **/ | ||
+ | <code bash> | ||
+ | |||
+ | |||
+ | Normalement le TRIM est pris en compte par défaut | ||
+ | <code bash> | ||
+ | vfs.zfs.trim.max_interval: | ||
+ | vfs.zfs.trim.timeout: | ||
+ | vfs.zfs.trim.txg_delay: | ||
+ | vfs.zfs.trim.enabled: | ||
+ | <code bash> | ||
+ | kstat.zfs.misc.zio_trim: | ||
+ | kstat.zfs.misc.zio_trim.failed: | ||
+ | kstat.zfs.misc.zio_trim.unsupported: | ||
+ | kstat.zfs.misc.zio_trim.success: | ||
+ | kstat.zfs.misc.zio_trim.bytes: | ||
+ | <code bash> | ||
+ | kern.cam.nda.max_trim: | ||
+ | kstat.zfs.misc.zio_trim.failed: | ||
+ | kstat.zfs.misc.zio_trim.unsupported: | ||
+ | kstat.zfs.misc.zio_trim.success: | ||
+ | kstat.zfs.misc.zio_trim.bytes: | ||
+ | </ | ||
+ | |||
+ | |||
+ | OPtimisation en lecture / écriture | ||
+ | (mais tout dépend de l' | ||
+ | <code bash> | ||
+ | zpool add ' | ||
+ | |||
+ | |||
+ | ===== Gestion des fichiers core ===== | ||
+ | ==== core générés par le kernel ==== | ||
+ | Dans **__/ | ||
+ | Ajouter cette option | ||
+ | <code bash> kern.coredump=0</ | ||
+ | Ou celle-ci : Reroutage des fichiers core | ||
+ | <code bash> | ||
+ | |||
+ | OU | ||
+ | | ||
+ | |||
+ | |||
+ | ==== core générés par les applications ==== | ||
+ | |||
+ | |||
+ | |||
+ | CSH | ||
+ | limit coredumpsize 0 dans **/ | ||
+ | |||
+ | BASH | ||
+ | |||
+ | |||
+ | ulimit -c 0 dans **.bash_profile** | ||
+ | |||
+ | ===== Gestion des paquets PKG ===== | ||
+ | Récupérer la liste des mises à jour | ||
+ | <code bash># pkg update</ | ||
+ | |||
+ | |||
+ | La déployer | ||
+ | <code bash># pkg upgrade</ | ||
+ | |||
+ | |||
+ | ==== Gestion des paquets via pkg ==== | ||
+ | ===Lister les paquets gelés=== | ||
+ | <code bash># pkg lock -l</ | ||
+ | ===Geler un paquet === | ||
+ | <code bash># pkg lock -y LePaquet</ | ||
+ | Dégeler un paquet | ||
+ | <code bash># pkg unlock LePaquet</ | ||
+ | ===Installer la dernière version des paquets de pkg=== | ||
+ | |||
+ | Créer ce dossier | ||
+ | <code bash> | ||
+ | |||
+ | et ce fichier | ||
+ | <code bash>cat / | ||
+ | FreeBSD: { | ||
+ | url: " | ||
+ | }</ | ||
- | Drivers vidéo KRM-DMS (Intel i915, AMD GPU, Radeon) | + | Mettre à jour |
+ | === Vérfier quel dépôt est utilisé=== | ||
+ | <code bash> | ||
+ | === Informations sur pkg=== | ||
+ | <code bash>pkg info pkg</ | ||
+ | ===== Patchs de sécurité ===== | ||
+ | <code bash> | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
- | À partir de FreeBSD 11.2 uniquement, vous pouvez installer le meta-package drm-kmod qui va selectionner la meilleure | + | -r Print the version |
+ | | ||
- | pkg install drm-kmod | + | -u Print the version and patch level of the installed userland. |
+ | These are hardcoded into freebsd-version during the build.</ | ||
- | Et demander leur chargement automatique, | ||
- | sysrc kld_list+="/ | ||
- | kldload / | ||
- | Après un reboot, vérifier que le module du package (/ | ||
- | olivier@x220:~ % kldstat | + | <code bash> |
- | 6 1 0xffffffff8293d000 120ca8 | + | src component not installed, skipped |
+ | Looking up update.FreeBSD.org mirrors... 3 mirrors found. | ||
+ | Fetching public key from update4.freebsd.org... done. | ||
+ | Fetching metadata signature for 12.0-RELEASE from update4.freebsd.org... done. | ||
+ | Fetching metadata index... done. | ||
+ | Fetching 2 metadata files... done. | ||
+ | Inspecting system... done. | ||
+ | Preparing to download files... done. | ||
+ | </ | ||
+ | <code bash> | ||
+ | src component not installed, skipped | ||
+ | Installing updates... done.</ | ||
+ | <code bash> | ||
+ | root@asgard-freeBSD: | ||
+ | FreeBSD asgard-freeBSD 12.0-RELEASE FreeBSD 12.0-RELEASE r341666 GENERIC | ||
+ | <code bash> | ||
+ | 12.0-RELEASE-p5</ | ||
+ | <code bash> | ||
+ | 12.0-RELEASE-p4</ | ||
- | networkmanager | ||
- | pkg install networkmgr | ||
- | $ cat / | ||
- | permit nopass keepenv :wheel cmd netcardmgr | ||
- | permit nopass keepenv :wheel cmd detect-nics | ||
- | permit nopass keepenv :wheel cmd detect-wifi | ||
- | permit nopass keepenv :wheel cmd ifconfig | ||
- | permit nopass keepenv :wheel cmd service | ||
- | permit nopass keepenv :wheel cmd wpa_supplicant | ||
+ | ===== 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:// | ||
+ | *[[https:// | ||
+ | *[[https:// | ||
+ | Et surtout | ||
+ | *[[https:// | ||
+ | *[[https:// | ||
+ | *[[https:// | ||
+ | *[[https:// | ||
+ | *[[http:// |