03_Claude et Ubuntu
01_Installation de Claude dans le Ubuntu
Contexte
Installation et configuration de Claude Code sur la machine Ubuntu 25.10 (utilisateur julien), avec synchronisation du dossier de travail via Syncthing.
1. Installation de Syncthing
Date : 2026-05-31
Système : Ubuntu 25.10 (questing)
Étapes
- Vérification : Syncthing absent des paquets installés
- Installation via les dépôts Ubuntu :
sudo apt install syncthing -y - Activation au démarrage :
systemctl --user enable --now syncthing - Interface web disponible sur :
http://127.0.0.1:8384
Résultat
Dossier synchronisé : /home/julien/Syncthing/
Contenu récupéré depuis le PC Windows (eliob) :
- Billets
- Jux_Obsidian
- Jux_univers (dont Claude-pcelio+jux/CLAUDE.md)
- Ouvrages
- PDF temps
- Suretés
- Tutoriels videos
2. Configuration de Claude Code
Le fichier CLAUDE.md de référence a été localisé dans le dossier synchronisé :
/home/julien/Syncthing/Jux_univers/Claude-pcelio+jux/CLAUDE.md
Ce fichier centralise toute la configuration : MCPs, credentials VPS, préférences, projets en cours. Il a été lu en début de session pour initialiser le contexte.
Mémoire Claude Code initialisée
Répertoire : /home/julien/.claude/projects/-home-julien/memory/
- user_profile.md — profil Julien/Jux/eliob
- project_vps.md — infrastructure VPS principal et Alteris
- reference_mcp.md — tous les services MCP et leurs credentials
- reference_syncthing.md — structure du dossier partagé
- feedback_preferences.md — style de réponse
3. Connexion BookStack depuis Ubuntu
Token API BookStack configuré manuellement pour permettre l écriture depuis Ubuntu (sans MCP npm disponible). Utilisation de l API REST directe via curl :
02_Diagnostic du Ubuntu par Claude
Diagnostic expert — Ubuntu julien-130430
Généré par Claude Code le 2026-05-31 à 19h57 — Ubuntu 25.10 questing — mis à jour 20h15
1. Système de base
| OS | Ubuntu 25.10 (questing) — version non-LTS, support jusqu'à juillet 2026 |
| Kernel | 6.17.0-19-generic (SMP PREEMPT_DYNAMIC — mars 2026) |
| Hostname | julien-130430 |
| Architecture | x86_64 |
| Uptime | 1h36 au moment du diagnostic |
| Langue | fr_FR.UTF-8 / shell bash |
2. Matériel
CPU
| Modèle | AMD Ryzen 5 2600X Six-Core Processor |
| Cœurs / Threads | 6 cœurs / 12 threads (1 socket) |
| Fréquence | 2200–3600 MHz (scaling à 99%) |
| Charge (1/5/15 min) | 2,44 / 1,98 / 1,17 — charge en train de baisser, acceptable |
RAM & Swap
| RAM totale | 15 Gi |
| RAM utilisée | 4,9 Gi utilisé + 9 Gi cache/tampon — 10 Gi disponibles |
| Swap | 4 Gi (fichier /swap.img), 5,5 Mi utilisés — quasi vide, bonne santé |
GPU
| Modèle | AMD Radeon RX 6400/6500 XT — Navi 24 (rev c1) |
| Driver | AMDGPU (open-source, intégré au kernel) |
| Monitoring | lm-sensors absent — pas de relevé de température possible |
3. Stockage
| Disque | Modèle | Taille | Partition | FS | Point de montage | Utilisé | Alerte |
|---|---|---|---|---|---|---|---|
| sda | SanDisk 3.2Gen1 (USB) | 57,3 G | sda2 | ext4 | / (racine) | 31G / 57G — 57% | |
| sdb | Patriot Burst (SSD) | 223,6 G | sdb3 | ntfs | /media/julien/CE1C8DC545 | 149G / 223G — 67% | |
| sdc | Seagate Backup Plus | 7,3 T | sdc2 | — | /media/julien/Seagate… | 3,1T / 7,3T — 42% | |
| sdd | — | 932 G | sdd1 | — | /media/julien/206897… | 827G / 932G — 89% | ⚠ Critique |
| sde | — | 932 G | sde2 | — | /media/julien/2ème disque dur | 294G / 932G — 32% |
Point d'attention : Le disque sdd1 est à 89% de capacité (827G/932G). Seuil critique à surveiller.
Note : Le système racine est sur une clé USB SanDisk (sda). Performances limitées par rapport à un SSD SATA ou NVMe. Risque de défaillance à long terme supérieur à un disque interne.
4. Réseau
| Interface | enp37s0 (Ethernet) |
| IP locale | 192.168.1.26/24 (DHCP) |
| IPv6 | 2a01:cb1c:833b:d00:2ef0:5dff:feec:62e0/64 |
| Passerelle | 192.168.1.1 |
| DNS | 192.168.1.1 + IPv6 routeur (via systemd-resolved) |
| DNSSEC | Désactivé (unsupported) |
| mDNS / LLMNR | Désactivés |
Recommandation : L'IP est attribuée par DHCP. Envisager une réservation DHCP fixe sur le routeur pour la stabilité de 192.168.1.26.
5. Services et sécurité
Services systemd
- 32 services actifs, 0 en échec — état sain
- Services notables : GDM (GNOME), NetworkManager, snapd, cups, bluetooth, chrony (NTP), avahi, rsyslog
- CUPS présent en double :
cups.service(paquet) etsnap.cups.cupsd.service(snap) — redondance inutile
SSH serveur
openssh-server absent — aucun accès SSH entrant possible sur cette machine. Si un accès distant est souhaité, installer openssh-server.
Pare-feu
ufw ne répond pas (non configuré ou inactif). La machine est probablement protégée par le NAT du routeur, mais aucune règle locale n'est en place.
Ports en écoute (accessibles depuis le réseau)
| Port | Service | Remarque |
|---|---|---|
| 22000/tcp+udp | Syncthing (PID 24179) | Sync P2P — normal |
| 53/tcp (127.0.0.53) | systemd-resolved | DNS local uniquement |
| 53/tcp (127.0.0.54) | systemd-resolved stub | DNS local uniquement |
Surface d'attaque réseau réduite : seul Syncthing écoute sur l'interface externe.
Sudo
Julien est membre du groupe sudo. La commande sudo -l nécessite un terminal interactif (PAM conversation) — normal dans le contexte Claude Code non-interactif.
6. Syncthing
| Processus | En cours d'exécution (PID 24179, port 22000 actif) |
| Service systemd | syncthing@julien.service : enabled / active ✓ (activé le 2026-05-31) |
| Dossiers synchronisés | Billets, Jux_Obsidian, Jux_univers, Ouvrages, PDF temps, Suretés, Tutoriels videos |
Fix 2026-05-31 : sudo systemctl enable --now syncthing@julien.service — service activé et démarré. Vérifié via API REST (HTTP 200, uptime ~17h).
7. Snaps
19 snaps installés. Plusieurs ont deux révisions montées simultanément (l'ancienne est conservée le temps du refresh par snapd) :
- Firefox (7901 + 7967), Thunderbird (1040 + 1073), Chromium (3375 + 3390)
- core20, core22, core24, gnome-42-2204, prompting-client, snapd-desktop-integration, firmware-updater, desktop-security-center
C'est le comportement normal de snapd (rollback possible). Les anciennes révisions sont supprimées automatiquement après quelques jours.
Nettoyage manuel possible : sudo snap set system refresh.retain=2 (déjà le défaut) ou snap list --all + sudo snap remove --revision=<rev> <snap>.
8. Environnements de développement
| Python | 3.13.7 (/usr/bin/python3) |
| Venv global | ~/.venv — activé automatiquement via .bashrc (configuré le 2026-05-31) |
| Paquets venv | psycopg2-binary 2.9.12, requests 2.34.2, httpx 0.28.1, pip 26.1.2 |
| Node.js | 24.16.0 |
| npm | 11.13.0 |
| Claude Code | v2.1.158 — installé et opérationnel |
| Docker | Non installé (ou non accessible sans sudo) |
Installation venv : nécessitait sudo apt install python3.13-venv (paquet absent par défaut sur Ubuntu 25.10).
Activation manuelle : source ~/.venv/bin/activate
9. Connexion PostgreSQL — alteris_geo
Testée et validée depuis Ubuntu le 2026-05-31 via le venv ~/.venv.
| Hôte | 79.137.14.202 (VPS Alteris) |
| Port | 5432 (accessible depuis l'extérieur) |
| Base | alteris_geo |
| Utilisateur | alteris_admin / Alteris2026 |
| Serveur | PostgreSQL 15.4 (Debian 15.4-1.pgdg110+1) — x86_64 |
| Table recherches | 4 entrées au 2026-05-31 (2 FreshRSS, 2 kDrive — toutes du 2026-05-29) |
Snippet de connexion Python (Ubuntu) :
import psycopg2
conn = psycopg2.connect(
host="79.137.14.202", port=5432,
dbname="alteris_geo", user="alteris_admin", password="Alteris2026"
)
10. Cron / tâches planifiées
- Pas de crontab utilisateur défini pour julien
- Tâches système présentes :
anacron,e2scrub_all,sysstat - Mises à jour automatiques :
unattended-upgrades.serviceactif
11. Logs / erreurs récentes
Les seules erreurs journalctl (niveau err) sur 7 jours sont des échecs PAM sudo en mode non-interactif (générés par ce diagnostic) + des warnings udev ALSA sans conséquence. Aucune erreur critique applicative.
Synthèse — Points d'action
| Priorité | Problème | Action recommandée | Statut |
|---|---|---|---|
| Haute | sdd1 à 89% (827G/932G) | Libérer de l'espace ou déplacer des données vers sde (32% utilisé) | En attente |
sudo systemctl enable syncthing@julien.service | ✓ Résolu 2026-05-31 | ||
| Moyenne | Système racine sur clé USB SanDisk | Envisager migration vers le SSD Patriot (sdb) pour fiabilité | En attente |
| Basse | Pare-feu inactif | sudo ufw enable + règles minimales si accès SSH ajouté | En attente |
| Basse | lm-sensors absent | sudo apt install lm-sensors && sudo sensors-detect | En attente |
| Basse | CUPS en double (paquet + snap) | Supprimer l'un des deux selon usage | En attente |
| Info | Ubuntu 25.10 non-LTS | Fin de support juillet 2026 — migration vers 26.04 LTS à lancer | En attente |
| Info | IP DHCP dynamique | Réservation DHCP 192.168.1.26 sur le routeur recommandée | En attente |
Points positifs
- 0 service systemd en échec
- Kernel récent (6.17.0, mars 2026)
- RAM bien dimensionnée (15 Gi, peu de swap utilisé)
- Surface réseau réduite (seul Syncthing exposé)
- Python 3.13 + venv opérationnel + connexion alteris_geo validée
- Node 24 LTS à jour
- Claude Code opérationnel
03_250531
1. Syncthing ne repartira pas automatiquement (service désactivé) — il faudra soit le lancer manuellement, soit profiter du redémarrage
pour faire sudo systemctl enable syncthing@julien.service avant d'éteindre.
✓ Fix 2026-05-31 : sudo systemctl enable --now syncthing@julien.service — service activé et démarré. Vérifié via API REST (HTTP 200, uptime ~17h).
2. Le venv ~/.venv se réactivera automatiquement via .bashrc à l'ouverture du terminal.
En attente — après mise à jour Ubuntu 26.04
Mise à jour Ubuntu 26.04 LTS
Lancée le 2026-05-31 via screen -S upgrade + sudo do-release-upgrade.
✓ Terminée — Ubuntu 26.04 LTS opérationnel.
Montage NAS (192.168.1.17) — partages foxy et video
Le NAS a changé d'IP : était sur 192.168.1.22, maintenant sur 192.168.1.17 (MAC Synology 00:11:32:9c:8e:c9 — attribution DHCP).
Script exécuté : sudo bash /home/julien/setup_nas.sh
✓ Terminé — foxy et video montés sur /mnt/nas/foxy et /mnt/nas/video.
Credentials : /etc/samba/credentials_nas — entrées fstab ajoutées avec options nofail,_netdev,x-systemd.automount.
Note : entrée WebDAV sasnexte (https://82.66.244.248:5006) corrigée dans fstab (typos : un seul slash et lettre 'o' dans le port).
✓ Signets Nautilus ajoutés : smb://juxjux@192.168.1.17, /mnt/nas/foxy, /mnt/nas/video dans ~/.config/gtk-3.0/bookmarks.
rclone — sauvegarde vers kDrive
Configuration perdue lors de la mise à jour Ubuntu 26.04. La tâche sauvegardait vers kDrive (WebDAV). À reconfigurer :
rclone config → type webdav, URL https://connect.drive.infomaniak.com, credentials compte Infomaniak.
Son Bluetooth — Xiaomi 15T Pro
Tentative d'utiliser le Xiaomi 15T Pro comme enceinte Bluetooth depuis Ubuntu. Impossible : le téléphone n'expose pas le profil Audio Sink (UUID 0000110b) en Bluetooth classique — il est uniquement Audio Source. Limitation firmware Xiaomi, non contournable en BT.
Alternative WiFi (SoundWire) possible mais peu pratique.
→ À faire : acheter un casque ou une enceinte Bluetooth. N'importe quel périphérique BT standard exposant le profil Audio Sink fonctionnera directement avec Ubuntu/PipeWire.