# Erreur 22 invalid argument installation heartbeat

## foo_bar

Bonjour, je tente d'installer heartbeat couplé a DRBD mais lorsque je lance un emerge cela me retourne ceci :

```

 * Fetching files in the background. To view fetch progress, run

 * `tail -f /var/log/emerge-fetch.log` in another terminal.

[Errno 22] Invalid argument:

   /bin/bash -c >> /usr/portage/distfiles/.__portage_test_write__ 2>/dev/null ; rval=$? ; rm -f  /usr/portage/distfiles/.__portage_test_write__ ; exit $rval

Traceback (most recent call last):

  File "/usr/lib/portage/pym/portage/process.py", line 316, in spawn

    unshare_net, unshare_ipc, cgroup)

  File "/usr/lib/portage/pym/portage/process.py", line 511, in _exec

    pre_exec()

  File "/usr/lib/portage/pym/portage/_selinux.py", line 119, in _pre_exec

    setexec(self._con)

  File "/usr/lib/portage/pym/portage/_selinux.py", line 80, in setexec

    if selinux.setexeccon(ctx) < 0:

OSError: [Errno 22] Invalid argument

>>> Downloading 'http://distfiles.gentoo.org/distfiles/libaio-0.3.110.tar.gz'

[Errno 22] Invalid argument:

   /bin/bash -c exec "$@" wget wget -t 3 -T 60 --passive-ftp -O /usr/portage/distfiles/libaio-0.3.110.tar.gz http://distfiles.gentoo.org/distfiles/libaio-0.3.110.tar.gz

Traceback (most recent call last):

  File "/usr/lib/portage/pym/portage/process.py", line 316, in spawn

    unshare_net, unshare_ipc, cgroup)

  File "/usr/lib/portage/pym/portage/process.py", line 511, in _exec

    pre_exec()

  File "/usr/lib/portage/pym/portage/_selinux.py", line 119, in _pre_exec

    setexec(self._con)

  File "/usr/lib/portage/pym/portage/_selinux.py", line 80, in setexec

    if selinux.setexeccon(ctx) < 0:

OSError: [Errno 22] Invalid argument

>>> Downloading 'https://fedorahosted.org/releases/l/i/libaio/libaio-0.3.110.tar.gz'

[Errno 22] Invalid argument:

   /bin/bash -c exec "$@" wget wget -t 3 -T 60 --passive-ftp -O /usr/portage/distfiles/libaio-0.3.110.tar.gz https://fedorahosted.org/releases/l/i/libaio/libaio-0.3.110.tar.gz

Traceback (most recent call last):

  File "/usr/lib/portage/pym/portage/process.py", line 316, in spawn

    unshare_net, unshare_ipc, cgroup)

  File "/usr/lib/portage/pym/portage/process.py", line 511, in _exec

    pre_exec()

  File "/usr/lib/portage/pym/portage/_selinux.py", line 119, in _pre_exec

    setexec(self._con)

  File "/usr/lib/portage/pym/portage/_selinux.py", line 80, in setexec

    if selinux.setexeccon(ctx) < 0:

OSError: [Errno 22] Invalid argument

!!! Couldn't download 'libaio-0.3.110.tar.gz'. Aborting.

 * Fetch failed for 'dev-libs/libaio-0.3.110', Log file:

 *  '/var/tmp/portage/dev-libs/libaio-0.3.110/temp/build.log'

>>> Failed to emerge dev-libs/libaio-0.3.110, Log file:

>>>  '/var/tmp/portage/dev-libs/libaio-0.3.110/temp/build.log'

 * Messages for package dev-libs/libaio-0.3.110:

 * Fetch failed for 'dev-libs/libaio-0.3.110', Log file:

 *  '/var/tmp/portage/dev-libs/libaio-0.3.110/temp/build.log'

```

et suite a une mise a jour de portage je retrouve le message suivant aussi :

```

 * IMPORTANT: 3 news items need reading for repository 'gentoo'.

 * Use eselect news to read news items.

```

Je n'en comprend pas les raisons.

Je suis nouveau sur les systèmes gentoo.

Cela parle a quelqu'un ?

Merci d'avanceLast edited by foo_bar on Thu Jan 08, 2015 4:26 pm; edited 1 time in total

----------

## xaviermiller

Quel est ton profil ? Je vois des messages "selinux", es-tu en hardened ?

```
eselect profile list
```

L'erreur semble plutôt lors du téléchargement, est-ce que tu as assez de place dans /usr/portage/distfiles ?

----------

## foo_bar

Salut, merci pour ta réponse. Oui je suis en hardened j'ai oublier de le mentionner. 

Je n'ai quasiment rien sur a machine alors je suppose que oui j'ai suffisamment de place.

----------

## xaviermiller

Je ne vois pas de solution directe, mais tu pourrais contourner le problème en téléchargeant le fichier mentionné et le déposant dans /usr/portage/distfiles

----------

## El_Goretto

 *foo_bar wrote:*   

> Salut, merci pour ta réponse. Oui je suis en hardened j'ai oublier de le mentionner. 
> 
> Je n'ai quasiment rien sur a machine alors je suppose que oui j'ai suffisamment de place.

 

Ouais, alors cette blague là, elle marche seulement si tu n'as pas une partition dédiée pour portage taillée aux petits oignons  :Smile: 

A tout hasard, si tu en as une, fais un "df -i", des fois que, pour rire.

----------

## foo_bar

 *El_Goretto wrote:*   

>  *foo_bar wrote:*   Salut, merci pour ta réponse. Oui je suis en hardened j'ai oublier de le mentionner. 
> 
> Je n'ai quasiment rien sur a machine alors je suppose que oui j'ai suffisamment de place. 
> 
> Ouais, alors cette blague là, elle marche seulement si tu n'as pas une partition dédiée pour portage taillée aux petits oignons 
> ...

 

```

Filesystem       Inodes  IUsed    IFree IUse% Mounted on

/dev/sda3        524288 302201   222087   58% /

udev             216526    408   216118    1% /dev

tmpfs            217617    357   217260    1% /run

shm              217617      1   217616    1% /dev/shm

cgroup_root      217617      4   217613    1% /sys/fs/cgroup

/dev/sda1         25688    311    25377    2% /boot

/dev/sda4      14475264   7191 14468073    1% /var

```

----------

## boozo

'alute

en plus de la sortie demandée par XavierMiller, pourrait-on avoir quelques éléments de contexte (s'il y en a) ainsi qu'un retour de :

```
# eselect python list
```

et autant qu'il se doit traditionnellement :

```
# emerge --info
```

Par avance merci   :Wink: 

----------

## foo_bar

 *boozo wrote:*   

> 'alute
> 
> en plus de la sortie demandée par XavierMiller, pourrait-on avoir quelques éléments de contexte (s'il y en a) ainsi qu'un retour de :
> 
> ```
> ...

 

Salut 

pour le contextxe, je souhaite effectuer de la haute disponibilité avec du load balancing sur des équipements chez moi.

eselect profile list

```

  [1]   default/linux/x86/13.0

  [2]   default/linux/x86/13.0/selinux

  [3]   default/linux/x86/13.0/desktop

  [4]   default/linux/x86/13.0/desktop/gnome

  [5]   default/linux/x86/13.0/desktop/gnome/systemd

  [6]   default/linux/x86/13.0/desktop/kde

  [7]   default/linux/x86/13.0/desktop/kde/systemd

  [8]   default/linux/x86/13.0/developer

  [9]   hardened/linux/x86

  [10]  hardened/linux/x86/selinux *

  [11]  hardened/linux/musl/x86

  [12]  default/linux/uclibc/x86

  [13]  hardened/linux/uclibc/x86

```

eselect python list

```

  [1]   python2.7 *

  [2]   python3.3

```

```

 emerge --info

Portage 2.2.8-r1 (hardened/linux/x86/selinux, gcc-4.7.3, glibc-2.19-r1, 3.15.5-hardened-r2 i686)

=================================================================

System uname: Linux-3.15.5-hardened-r2-i686-Intel-R-_Atom-TM-_CPU_D525_@_1.80GHz-with-gentoo-2.2

KiB Mem:     2052940 total,   1914276 free

KiB Swap:    4194300 total,   4194300 free

Timestamp of tree: Thu, 08 Jan 2015 14:30:01 +0000

ld GNU ld (GNU Binutils) 2.23.2

app-shells/bash:          4.2_p45

dev-lang/perl:            5.16.3

dev-lang/python:          2.7.7, 3.3.5-r1

dev-util/pkgconfig:       0.28-r1

sys-apps/baselayout:      2.2

sys-apps/openrc:          0.12.4

sys-apps/sandbox:         2.6-r1

sys-devel/autoconf:       2.69

sys-devel/automake:       1.13.4

sys-devel/binutils:       2.23.2

sys-devel/gcc:            4.7.3-r1

sys-devel/gcc-config:     1.7.3

sys-devel/libtool:        2.4.2-r1

sys-devel/make:           3.82-r4

sys-kernel/linux-headers: 3.13 (virtual/os-headers)

sys-libs/glibc:           2.19-r1

Repositories: gentoo

ACCEPT_KEYWORDS="x86"

ACCEPT_LICENSE="* -@EULA"

CBUILD="i686-pc-linux-gnu"

CFLAGS="-O2 -march=i686 -pipe"

CHOST="i686-pc-linux-gnu"

CONFIG_PROTECT="/etc"

CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/sandbox.d /etc/terminfo"

CXXFLAGS="-O2 -march=i686 -pipe"

DISTDIR="/usr/portage/distfiles"

FCFLAGS="-march=i686 -O2 -pipe"

FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox selinux sesandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"

FFLAGS="-march=i686 -O2 -pipe"

GENTOO_MIRRORS="http://distfiles.gentoo.org"

LANG="fr_FR.UTF-8"

LDFLAGS="-Wl,-O1 -Wl,--as-needed"

MAKEOPTS="-j2"

PKGDIR="/usr/portage/packages"

PORTAGE_CONFIGROOT="/"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

PORTDIR_OVERLAY=""

USE="acl berkdb bindist bzip2 cli cracklib crypt cxx dri gdbm hardened iconv ipv6 modules ncurses

 nls nptl open_perms openmp pam pax_kernel pcre pic readline selinux session ssl tcpd unconfined unicode urandom x86 xattr xtpax zlib" ABI_X86="32" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU" VIDEO_CARDS="apm ark chips cirrus cyrix dummy fbdev glint i128 i740 intel mach64 mga nsc nv r128 radeon rendition s3 s3virge savage siliconmotion sis sisusb tdfx tga trident tseng v4l vesa via vmware nouveau" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"

Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, SYNC, USE_PYTHON

```

----------

## foo_bar

Alors...phénomène intéressant...

En fouinant un peu je suis tomber sur un dossier heartbeat dans 

```
/usr/portage/sys-cluster/
```

 qui a l'air complet : 

```
ChangeLog  Manifest  files  heartbeat-3.0.5-r2.ebuild  heartbeat-3.0.5.ebuild  metadata.xml
```

 puis dans files/  

```
3.0.4-docs.patch 3.0.4-python_tests.patch  heartbeat-init

3.0.4-fix_configure.patch  3.0.5-fix_ucast.patc
```

Mais aucune trace de lui dans /etc/

----------

## k-root

https://forums.gentoo.org/viewtopic-t-863567-start-0.html  ?

----------

## El_Goretto

C'est normal et rassurant, /usr/portage contient l'arbre portage avec toutes les ebuilds disponibles à ton système (à ne pas confondre avec ce qui est installé, hein).

Bon, après, il reste la configuration de SElinux qui pourrait avoir un pépin, je t'invite à faire un tour des labels/contextes & co sur les divers dossiers impliqués.

Un gros et sale équivalent de "setenforce disabled" (de tête) pour voir déjà si c'est SElinux le coupable.

----------

## boozo

 *k-root wrote:*   

> https://forums.gentoo.org/viewtopic-t-863567-start-0.html  ?

 

Je suis assez d'accords (c'est dans la même idée que ce que j'ai touvé également (voir ici et encore là ou là pour l'origine) - amha il faut voir en premier la conf selinux de plus près...

(nb. btw, c'est déjà pas du tendre ce truc-là alors j'espère que tu connais au moins un peu la chose sur d'autres distros   :Rolling Eyes: )

----------

## foo_bar

Bon, visiblement le problème venait de SELINUX qui était en mode enforcing. Mais maintenant c'est un problème de compilation =/. Le problème est connu visiblement et si j'ai bien compris il y a eu un patch mais je ne sais pas comment cela s'installe.

Version de heartbeat : 3.0.5

Merci encore.

----------

