Raspberry Pi 2 modèle B: installation Debian minimale
  2015-07-09

Raspberry Pi 2

Recherche d’une distribution

Après avoir déplacé mon Raspberry Pi première génération à l’autre bout de la France pour faire des backups distants, j’ai acheté un Raspberry Pi 2 modèle B pour le remplacer.

Sur mon premier Rasp j’utilisais la distribution MoebiusLinux, mais il semblerait que les nouvelles versions utilisent désormais des packages propres à la distribution, ce que je souhaite éviter.

Voici venu le temps de chercher une autre distribution, la plus minimaliste et proche possible de Debian, pour une utilisation exclusivement serveur (nas).

Il existe des sites recensant les différentes distributions Raspberry existantes, et après plusieurs heures (jours ?) passés à en comparer/tester plusieurs, je suis tombé sur raspbian-ua-netinst

Pour une fois, ce n’est pas une nième version de Raspbian de laquelle on essaye d’enlever le maximum de choses :)

raspbian-ua-netinst

raspbian-ua-netinst n’est pas une distribution prête à l’emploi, mais un installateur non-interactif d’une Debian utilisant les dépôts Raspbian.

C’est très facile d’utilisation:

  • Ecriture de l’image fournie (~64Mo) sur la carte MicroSD avec un sudo xzcat raspbian-ua-netinst-v1.0.7.img.xz > /dev/sdxx

  • Démarrage avec un câble réseau branché (configuration DHCP)

  • Attendre ~10min (selon votre connectivité Internet) que l’installation se fasse toute seule, pas besoin d’écran ni de clavier

  • Se connecter en ssh avec les user/mdp par défaut root/raspbian

  • Enjoy !

Si vous n’avez pas confiance dans l’image fournie, il est possible de la créer vous-même avec les scripts build.sh et buildroot.sh

$ ls -lh *img*
-rw-r--r-- 1 loic root 64M  9 juil. 16:02 raspbian-ua-netinst-20150709-git5352222.img
-rw-r--r-- 1 loic root 20M  9 juil. 16:03 raspbian-ua-netinst-20150709-git5352222.img.bz2
-rw-r--r-- 1 loic root 17M  9 juil. 16:02 raspbian-ua-netinst-20150709-git5352222.img.xz

L’installation peut être personnalisée au travers d’un simple fichier texte, que ce soit au niveau des packages, hostname, configuration réseau, …

Les presets de base sont minimal, server et base. Dans la partie suivante c’est le preset server qui a été utilisé.

Informations sur un système fraîchement installé

Processus actifs:

root@pi:~# ps afx
  PID TTY      STAT   TIME COMMAND
    2 ?        S      0:00 [kthreadd]
    3 ?        S      0:00  \_ [ksoftirqd/0]
    4 ?        S      0:00  \_ [kworker/0:0]
    5 ?        S<     0:00  \_ [kworker/0:0H]
    7 ?        S      0:00  \_ [rcu_preempt]
    8 ?        S      0:00  \_ [rcu_sched]
    9 ?        S      0:00  \_ [rcu_bh]
   10 ?        S      0:00  \_ [migration/0]
   11 ?        S      0:00  \_ [watchdog/0]
   12 ?        S      0:00  \_ [watchdog/1]
   13 ?        S      0:00  \_ [migration/1]
   14 ?        S      0:00  \_ [ksoftirqd/1]
   16 ?        S<     0:00  \_ [kworker/1:0H]
   17 ?        S      0:00  \_ [watchdog/2]
   18 ?        S      0:00  \_ [migration/2]
   19 ?        S      0:00  \_ [ksoftirqd/2]
   20 ?        S      0:00  \_ [kworker/2:0]
   21 ?        S<     0:00  \_ [kworker/2:0H]
   22 ?        S      0:00  \_ [watchdog/3]
   23 ?        S      0:00  \_ [migration/3]
   24 ?        S      0:00  \_ [ksoftirqd/3]
   25 ?        S      0:00  \_ [kworker/3:0]
   26 ?        S<     0:00  \_ [kworker/3:0H]
   27 ?        S<     0:00  \_ [khelper]
   28 ?        S      0:00  \_ [kdevtmpfs]
   29 ?        S<     0:00  \_ [netns]
   30 ?        S<     0:00  \_ [perf]
   31 ?        S      0:00  \_ [khungtaskd]
   32 ?        S<     0:00  \_ [writeback]
   33 ?        SN     0:00  \_ [ksmd]
   34 ?        S<     0:00  \_ [crypto]
   35 ?        S<     0:00  \_ [kintegrityd]
   36 ?        S<     0:00  \_ [bioset]
   37 ?        S<     0:00  \_ [kblockd]
   38 ?        S<     0:00  \_ [devfreq_wq]
   39 ?        S      0:00  \_ [kworker/1:1]
   40 ?        S      0:00  \_ [kworker/u8:1]
   43 ?        S      0:00  \_ [kswapd0]
   44 ?        S      0:00  \_ [fsnotify_mark]
   52 ?        S<     0:00  \_ [kthrotld]
   53 ?        S      0:00  \_ [kworker/2:1]
   54 ?        S<     0:00  \_ [VCHIQ-0]
   55 ?        S<     0:00  \_ [VCHIQr-0]
   56 ?        S<     0:00  \_ [VCHIQs-0]
   57 ?        S<     0:00  \_ [dwc_otg]
   58 ?        S<     0:00  \_ [DWC Notificatio]
   59 ?        S<     0:00  \_ [ipv6_addrconf]
   60 ?        S      0:00  \_ [VCHIQka-0]
   61 ?        S<     0:00  \_ [SMIO]
   62 ?        S<     0:00  \_ [deferwq]
   64 ?        S      0:00  \_ [kworker/0:1]
   65 ?        S      0:01  \_ [mmcqd/0]
   72 ?        S      0:00  \_ [kworker/1:2]
  131 ?        S      0:00  \_ [jbd2/mmcblk0p2-]
  132 ?        S<     0:00  \_ [ext4-rsv-conver]
  143 ?        S      0:00  \_ [kworker/3:1]
 2078 ?        S      0:00  \_ [kworker/u8:2]
    1 ?        Ss     0:02 init [2]  
  283 ?        Ss     0:00 udevd --daemon
 1737 ?        S      0:00  \_ udevd --daemon
 1738 ?        S      0:00  \_ udevd --daemon
 1472 ?        Ss     0:00 dhclient -v -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases eth0
 1595 ?        Sl     0:00 /usr/sbin/rsyslogd -c5
 1659 ?        Ss     0:00 /usr/sbin/cron
 1665 ?        Ss     0:00 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 101:103
 1698 ?        Ss     0:00 /usr/sbin/sshd
 1741 ?        Ss     0:00  \_ sshd: root@pts/0 
 1743 pts/0    Ss     0:00      \_ -bash
 2482 pts/0    R+     0:00          \_ ps afx
 1727 tty1     Ss+    0:00 /sbin/getty 38400 tty1
 1728 tty2     Ss+    0:00 /sbin/getty 38400 tty2
 1729 tty3     Ss+    0:00 /sbin/getty 38400 tty3
 1730 tty4     Ss+    0:00 /sbin/getty 38400 tty4
 1731 tty5     Ss+    0:00 /sbin/getty 38400 tty5
 1732 tty6     Ss+    0:00 /sbin/getty 38400 tty6
 1733 ttyAMA0  Ss+    0:00 /sbin/getty -L ttyAMA0 115200 vt100

Paquets installés:

root@pi:~# dpkg --get-selections|awk '{print $1}'
adduser
apt
base-files
base-passwd
bash
bsdmainutils
bsdutils
ca-certificates
coreutils
cpio
cron
dash
debconf
debianutils
dialog
diffutils
dpkg
e2fslibs:armhf
e2fsprogs
fake-hwclock
file
findutils
gcc-4.7-base:armhf
gnupg
gpgv
grep
groff-base
gzip
hostname
ifupdown
initramfs-tools
initscripts
insserv
iproute
iputils-ping
isc-dhcp-client
isc-dhcp-common
klibc-utils
kmod
less
libacl1:armhf
libapt-pkg4.12:armhf
libattr1:armhf
libblkid1:armhf
libbsd0:armhf
libbz2-1.0:armhf
libc-bin
libc6:armhf
libcap2:armhf
libcomerr2:armhf
libdb5.1:armhf
libedit2:armhf
libexpat1:armhf
libgcc1:armhf
libgcrypt11:armhf
libgdbm3:armhf
libgnutls26:armhf
libgpg-error0:armhf
libgssapi-krb5-2:armhf
libidn11:armhf
libk5crypto3:armhf
libkeyutils1:armhf
libklibc
libkmod2:armhf
libkrb5-3:armhf
libkrb5support0:armhf
liblzma5:armhf
libmagic1:armhf
libmount1
libncurses5:armhf
libncursesw5:armhf
libopts25
libp11-kit0:armhf
libpam-modules:armhf
libpam-modules-bin
libpam-runtime
libpam0g:armhf
libpipeline1:armhf
libprocps0:armhf
libraspberrypi-bin
libraspberrypi0
libreadline6:armhf
libselinux1:armhf
libsemanage-common
libsemanage1:armhf
libsepol1:armhf
libslang2:armhf
libsqlite3-0:armhf
libss2:armhf
libssl1.0.0:armhf
libstdc++6:armhf
libtasn1-3:armhf
libtinfo5:armhf
libudev0:armhf
libusb-0.1-4:armhf
libustr-1.0-1:armhf
libuuid-perl
libuuid1:armhf
libwrap0:armhf
linux-base
linux-image-3.18.0-trunk-rpi2
linux-image-rpi2-rpfv
locales
login
lsb-base
man-db
mawk
mime-support
mount
multiarch-support
ncurses-base
ncurses-bin
net-tools
netbase
ntp
openssh-client
openssh-server
openssl
passwd
perl-base
procps
python
python-minimal
python2.7
python2.7-minimal
raspberrypi-bootloader-nokernel
raspbian-archive-keyring
raspi-copies-and-fills
readline-common
rng-tools
rsyslog
sed
sensible-utils
sysv-rc
sysvinit
sysvinit-utils
tar
tzdata
udev
util-linux
vim-common
vim-tiny
wget
zlib1g:armhf

Espace disque (carte MicroSD de 8Go):

root@pi:~# df -h
Filesystem      Size  Used Avail Use% Mounted on
rootfs          7.1G  329M  6.4G   5% /
udev             10M     0   10M   0% /dev
tmpfs            93M   96K   93M   1% /run
/dev/mmcblk0p2  7.1G  329M  6.4G   5% /
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           186M     0  186M   0% /run/shm
/dev/mmcblk0p1  122M   40M   83M  33% /boot
tmpfs           186M     0  186M   0% /tmp

Utilisation mémoire:

root@pi:~# free -m
             total       used       free     shared    buffers     cached
Mem:           927        132        794          0          8         94
-/+ buffers/cache:         29        897
Swap:            0          0          0

Inconvénients

Je n’en ai pas encore trouvé pour le moment, en voyez-vous ?