View previous topic :: View next topic |
Author |
Message |
FDZ Tux's lil' helper
Joined: 23 Aug 2013 Posts: 86
|
Posted: Fri Aug 23, 2013 9:08 am Post subject: ndiswrapper [Résolu] |
|
|
Bonjour
Je viens d'installer gentoo en chroot à partir d'une session ubuntu. Le systéme boote correctement, mais je bute sur la configuration de réseau. Je suis connecté au réseau à travers une clé usb wifi qui m'amène à utiliser ndiswrapper. J'ai réussi sans trop de mal à installer ndiswrapper sur gentoo dans ma session chroot, mais quand je boote en gentoo, je ne parviens pas à me connecter via wlan0 (que j'ai pourtant configuré dans /etc/conf.d/net).
J'ai du reconfigurer le noyau avant de monter le module ndiswrapper, j'ai utilisé "modinfo ndiswrapper" pour avoir la confirmation de l'installation correcte du module, et 'ndiswrapper -l" me confirme que le pilote correct est bien installé. Où peut bien se cacher l'erreur ? (oui, je sais, entre la chaise et le clavier, mais encore ?) _________________ "On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre" (Victor HUGO)
Last edited by FDZ on Sat Aug 31, 2013 4:57 pm; edited 1 time in total |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8709 Location: ~Brussels - Belgique
|
Posted: Fri Aug 23, 2013 9:15 am Post subject: |
|
|
Bonjour,
Il est très probable que le nom de ton interface réseau n'est pas wlan0 (règles de nommage débiles de udev).
Que donne "ifconfig" ? _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
FDZ Tux's lil' helper
Joined: 23 Aug 2013 Posts: 86
|
Posted: Fri Aug 23, 2013 10:42 am Post subject: |
|
|
Voici la réponse de ifconfig, en configuration chroot sous ubuntu : Code: | Ubuntu linux # ifconfig
eth0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 00:1f:d0:95:88:27 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 3353 bytes 273584 (267.1 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 3353 bytes 273584 (267.1 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.2 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::2b0:8cff:fe03:1f64 prefixlen 64 scopeid 0x20<link>
ether 00:b0:8c:03:1f:64 txqueuelen 1000 (Ethernet)
RX packets 172133 bytes 22317886 (21.2 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 253546 bytes 129675663 (123.6 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
|
Je vais de ce pas vérifier si la réponse est la même en boot gentoo et je vais essayer de poster la réponse
[Edit]
Et voilà la réponse sous gentoo seul Code: | lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
|
Sous gentoo, iwconfig ne connait pas wlan0
Pour info, copie de mon /etc/conf.d/net :
Code: | # This blank configuration will automatically use DHCP for any net.*
# scripts in /etc/init.d. To create a more complete configuration,
# please review /usr/share/doc/openrc*/net.example* and save your configuration
# in /etc/conf.d/net (this file :]!).
modules=("dhcpcd")
modules=("iwconfig")
key_Mon_ESSID="[1] s:Mon_code key [1] enc open"
preferred_aps=( "Mon_ESSID" )
sleep_scan_wlan0="1"
sleep_associate_wlan0="25"
iface_wlan0=("dhcp") |
Il me semble bien que j'avais créé un script "/etc/init.d/wlan0", je ne le retrouve plus. J'y retourne !
[/Edit] _________________ "On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre" (Victor HUGO)
Last edited by FDZ on Fri Aug 23, 2013 10:59 am; edited 2 times in total |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8709 Location: ~Brussels - Belgique
|
Posted: Fri Aug 23, 2013 10:44 am Post subject: |
|
|
la réponse de Gentoo sera différente, à moins que tu n'aies désactivé la règle de nommage de udev. _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8709 Location: ~Brussels - Belgique
|
Posted: Fri Aug 23, 2013 10:56 am Post subject: |
|
|
Vois ce sujet-ci pour contourner cette fonctionnalité. _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
FDZ Tux's lil' helper
Joined: 23 Aug 2013 Posts: 86
|
Posted: Fri Aug 23, 2013 11:16 am Post subject: |
|
|
XavierMiller wrote: | Vois ce sujet-ci pour contourner cette fonctionnalité. |
Désolé, noob complet sous gentoo, pas compris.
Par contre, le fichier que j'avais créé sous /etc/init.d se nomme "net.wlan0" et voilà son contenu : Code: | #!/sbin/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
MODULESDIR="${RC_LIBEXECDIR}/net"
MODULESLIST="${RC_SVCDIR}/nettree"
_config_vars="config routes"
[ -z "${IN_BACKGROUND}" ] && IN_BACKGROUND="NO"
description="Configures network interfaces."
# Handy var so we don't have to embed new lines everywhere for array splitting
__IFS="
"
depend()
{
local IFACE=${RC_SVCNAME#*.}
local IFVAR=$(shell_var "${IFACE}")
need localmount
if [ "$RC_UNAME" = Linux -a "$IFACE" != lo ]; then
need sysfs
fi
after bootmisc
keyword -jail -prefix -vserver
case "${IFACE}" in
lo|lo0) ;;
*)
after net.lo net.lo0 dbus
provide net
;;
esac
if [ "$(command -v "depend_${IFVAR}")" = "depend_${IFVAR}" ]; then
depend_${IFVAR}
fi
local dep= prov=
for dep in need use before after provide keyword; do
eval prov=\$rc_${dep}_${IFVAR}
if [ -n "${prov}" ]; then
${dep} ${prov}
ewarn "rc_${dep}_${IFVAR} is deprecated."
ewarn "Please use rc_net_${IFVAR}_${dep} instead."
fi
done
}
# Support bash arrays - sigh
_array_helper()
{
local _a=
eval _a=\$$1
_a=$(echo "${_a}" | sed -e 's:^[[:space:]]*::' -e 's:[[:space:]]*$::' -e '/^$/d' -e 's:[[:space:]]\{1,\}: :g')
[ -n "${_a}" ] && printf "%s\n" "${_a}"
}
_get_array()
{
local _a=
if [ -n "${BASH}" ]; then
case "$(declare -p "$1" 2>/dev/null)" in
"declare -a "*)
ewarn "You are using a bash array for $1."
ewarn "This feature will be removed in the future."
ewarn "Please see net.example for the correct format for $1."
eval "set -- \"\${$1[@]}\""
for _a; do
printf "%s\n" "${_a}"
done
return 0
;;
esac
fi
_array_helper $1
}
# Flatten bash arrays to simple strings
_flatten_array()
{
if [ -n "${BASH}" ]; then
case "$(declare -p "$1" 2>/dev/null)" in
"declare -a "*)
ewarn "You are using a bash array for $1."
ewarn "This feature will be removed in the future."
ewarn "Please see net.example for the correct format for $1."
eval "set -- \"\${$1[@]}\""
for x; do
printf "'%s' " "$(printf "$x" | sed "s:':'\\\'':g")"
done
return 0
;;
esac
fi
_array_helper $1
}
_wait_for_carrier()
{
local timeout= efunc=einfon
_has_carrier && return 0
eval timeout=\$carrier_timeout_${IFVAR}
timeout=${timeout:-${carrier_timeout:-0}}
# Incase users don't want this nice feature ...
[ ${timeout} -le 0 ] && return 0
yesno ${RC_PARALLEL} && efunc=einfo
${efunc} "Waiting for carrier (${timeout} seconds) "
while [ ${timeout} -gt 0 ]; do
sleep 1
if _has_carrier; then
[ "${efunc}" = "einfon" ] && echo
eend 0
return 0
fi
: $(( timeout -= 1 ))
[ "${efunc}" = "einfon" ] && printf "."
done
[ "${efunc}" = "einfon" ] && echo
eend 1
return 1
}
_netmask2cidr()
{
# Some shells cannot handle hex arithmetic, so we massage it slightly
# Buggy shells include FreeBSD sh, dash and busybox.
# bash and NetBSD sh don't need this.
case $1 in
0x*)
local hex=${1#0x*} quad=
while [ -n "${hex}" ]; do
local lastbut2=${hex#??*}
quad=${quad}${quad:+.}0x${hex%${lastbut2}*}
hex=${lastbut2}
done
set -- ${quad}
;;
esac
local i= len=
local IFS=.
for i in $1; do
while [ ${i} -ne 0 ]; do
: $(( len += i % 2 ))
: $(( i >>= 1 ))
done
done
echo "${len}"
}
_configure_variables()
{
local var= v= t=
for var in ${_config_vars}; do
local v=
for t; do
eval v=\$${var}_${t}
if [ -n "${v}" ]; then
eval ${var}_${IFVAR}=\$${var}_${t}
continue 2
fi
done
done
}
_which()
{
local i OIFS
# Empty
[ -z "$1" ] && return
# check paths
OIFS="$IFS"
IFS=:
for i in $PATH ; do
[ -x $i/$1 ] && echo $i/$1 && break
done
IFS=$OIFS
}
# Like _which, but also consider shell builtins, and multiple alternatives
_program_available()
{
[ -z "$1" ] && return 0
local x=
for x; do
case "${x}" in
/*) [ -x "${x}" ] && break;;
*) type "${x}" >/dev/null 2>&1 && break;;
esac
unset x
done
[ -n "${x}" ] && echo $x && return 0
return 1
}
_show_address()
{
einfo "received address $(_get_inet_address "${IFACE}")"
}
# Basically sorts our modules into order and saves the list
_gen_module_list()
{
local x= f= force=$1
if ! ${force} && [ -s "${MODULESLIST}" -a "${MODULESLIST}" -nt "${MODULESDIR}" ]; then
local update=false
for x in "${MODULESDIR}"/*.sh; do
[ -e "${x}" ] || continue
if [ "${x}" -nt "${MODULESLIST}" ]; then
update=true
break
fi
done
${update} || return 0
fi
einfo "Caching network module dependencies"
# Run in a subshell to protect the main script
(
after() {
eval ${MODULE}_after="\"\${${MODULE}_after}\${${MODULE}_after:+ }$*\""
}
before() {
local mod=${MODULE}
local MODULE=
for MODULE; do
after "${mod}"
done
}
program() {
if [ "$1" = "start" -o "$1" = "stop" ]; then
local s="$1"
shift
eval ${MODULE}_program_${s}="\"\${${MODULE}_program_${s}}\${${MODULE}_program_${s}:+ }$*\""
else
eval ${MODULE}_program="\"\${${MODULE}_program}\${${MODULE}_program:+ }$*\""
fi
}
provide() {
eval ${MODULE}_provide="\"\${${MODULE}_provide}\${${MODULE}_provide:+ }$*\""
local x
for x in $*; do
eval ${x}_providedby="\"\${${MODULE}_providedby}\${${MODULE}_providedby:+ }${MODULE}\""
done
}
for MODULE in "${MODULESDIR}"/*.sh; do
sh -n "${MODULE}" || continue
. "${MODULE}" || continue
MODULE=${MODULE#${MODULESDIR}/}
MODULE=${MODULE%.sh}
eval ${MODULE}_depend
MODULES="${MODULES} ${MODULE}"
done
VISITED=
SORTED=
visit() {
case " ${VISITED} " in
*" $1 "*) return;;
esac
VISITED="${VISITED} $1"
eval AFTER=\$${1}_after
for MODULE in ${AFTER}; do
eval PROVIDEDBY=\$${MODULE}_providedby
if [ -n "${PROVIDEDBY}" ]; then
for MODULE in ${PROVIDEDBY}; do
visit "${MODULE}"
done
else
visit "${MODULE}"
fi
done
eval PROVIDE=\$${1}_provide
for MODULE in ${PROVIDE}; do
visit "${MODULE}"
done
eval PROVIDEDBY=\$${1}_providedby
[ -z "${PROVIDEDBY}" ] && SORTED="${SORTED} $1"
}
for MODULE in ${MODULES}; do
visit "${MODULE}"
done
printf "" > "${MODULESLIST}"
i=0
for MODULE in ${SORTED}; do
eval PROGRAM=\$${MODULE}_program
eval PROGRAM_START=\$${MODULE}_program_start
eval PROGRAM_STOP=\$${MODULE}_program_stop
eval PROVIDE=\$${MODULE}_provide
echo "module_${i}='${MODULE}'" >> "${MODULESLIST}"
echo "module_${i}_program='${PROGRAM}'" >> "${MODULESLIST}"
echo "module_${i}_program_start='${PROGRAM_START}'" >> "${MODULESLIST}"
echo "module_${i}_program_stop='${PROGRAM_STOP}'" >> "${MODULESLIST}"
echo "module_${i}_provide='${PROVIDE}'" >> "${MODULESLIST}"
: $(( i += 1 ))
done
echo "module_${i}=" >> "${MODULESLIST}"
)
return 0
}
_load_modules()
{
local starting=$1 mymods=
# Ensure our list is up to date
_gen_module_list false
if ! . "${MODULESLIST}"; then
_gen_module_list true
. "${MODULESLIST}"
fi
MODULES=
if [ "${IFACE}" != "lo" -a "${IFACE}" != "lo0" ]; then
eval mymods=\$modules_${IFVAR}
[ -z "${mymods}" ] && mymods=${modules}
fi
local i=-1 x= mod= f= provides=
while true; do
: $(( i += 1 ))
eval mod=\$module_${i}
[ -z "${mod}" ] && break
[ -e "${MODULESDIR}/${mod}.sh" ] || continue
eval set -- \$module_${i}_program
if [ -n "$1" ]; then
if ! _program_available "$@" >/dev/null; then
vewarn "Skipping module $mod due to missing program: $@"
continue
fi
fi
if ${starting}; then
eval set -- \$module_${i}_program_start
else
eval set -- \$module_${i}_program_stop
fi
if [ -n "$1" ]; then
if ! _program_available "$@" >/dev/null; then
vewarn "Skipping module $mod due to missing program: $@"
continue
fi
fi
eval provides=\$module_${i}_provide
if ${starting}; then
case " ${mymods} " in
*" !${mod} "*) continue;;
*" !${provides} "*) [ -n "${provides}" ] && continue;;
esac
fi
MODULES="${MODULES}${MODULES:+ }${mod}"
# Now load and wrap our functions
if ! . "${MODULESDIR}/${mod}.sh"; then
eend 1 "${RC_SVCNAME}: error loading module \`${mod}'"
exit 1
fi
[ -z "${provides}" ] && continue
# Wrap our provides
local f=
for f in pre_start start post_start; do
eval "${provides}_${f}() { [ "$(command -v "${mod}_${f}")" = "${mod}_${f}" ] || return 0; ${mod}_${f} \"\$@\"; }"
done
eval module_${mod}_provides="${provides}"
eval module_${provides}_providedby="${mod}"
done
# Wrap our preferred modules
for mod in ${mymods}; do
case " ${MODULES} " in
*" ${mod} "*)
eval x=\$module_${mod}_provides
[ -z "${x}" ] && continue
for f in pre_start start post_start; do
eval "${x}_${f}() { [ "$(command -v "${mod}_${f}")" = "${mod}_${f}" ] || return 0; ${mod}_${f} \"\$@\"; }"
done
eval module_${x}_providedby="${mod}"
;;
esac
done
# Finally remove any duplicated provides from our list if we're starting
# Otherwise reverse the list
local LIST="${MODULES}" p=
MODULES=
if ${starting}; then
for mod in ${LIST}; do
eval x=\$module_${mod}_provides
if [ -n "${x}" ]; then
eval p=\$module_${x}_providedby
[ "${mod}" != "${p}" ] && continue
fi
MODULES="${MODULES}${MODULES:+ }${mod}"
done
else
for mod in ${LIST}; do
MODULES="${mod}${MODULES:+ }${MODULES}"
done
fi
veinfo "Loaded modules: ${MODULES}"
}
_load_config()
{
local config="$(_get_array "config_${IFVAR}")"
local fallback="$(_get_array fallback_${IFVAR})"
config_index=0
local IFS="$__IFS"
set -- ${config}
# We should support a space separated array for cidr configs
# But only as long as they do not contain other parameters for the address
if [ $# = 1 ]; then
unset IFS
set -- ${config}
# Of course, we may have a single address added old style.
# If the NEXT argument is a v4 or v6 address, it's the next config.
# Otherwise, it's arguments to the first config...
if [ "${2#*.*}" = "${2}" -a "${2#*:*}" = "${2}" ]; then
# Not an IPv4/IPv6
local IFS="$__IFS"
set -- ${config}
fi
fi
# Ensure that loopback has the correct address
if [ "${IFACE}" = "lo" -o "${IFACE}" = "lo0" ]; then
if [ "$1" != "null" ]; then
config_0="127.0.0.1/8"
config_index=1
fi
else
if [ -z "$1" ]; then
ewarn "No configuration specified; defaulting to DHCP"
config_0="dhcp"
config_index=1
fi
fi
# We store our config in an array like vars
# so modules can influence it
for cmd; do
eval config_${config_index}="'${cmd}'"
: $(( config_index += 1 ))
done
# Terminate the list
eval config_${config_index}=
config_index=0
for cmd in ${fallback}; do
eval fallback_${config_index}="'${cmd}'"
: $(( config_index += 1 ))
done
# Terminate the list
eval fallback_${config_index}=
# Don't set to zero, so any net modules don't have to do anything extra
config_index=-1
}
# Support functions
_run_if()
{
local cmd=$1 iface=$2 ifr=${IFACE} ifv=${IFVAR}
# Ensure that we don't stamp on real values
local IFACE= IFVAR=
shift
if [ -n "${iface}" ]; then
IFACE="${iface}"
[ "${iface}" != "${ifr}" ] && IFVAR=$(shell_var "${IFACE}")
else
IFACE=${ifr}
IFVAR=${ifv}
fi
${cmd}
}
interface_exists()
{
_run_if _exists "$@"
}
interface_up()
{
_run_if _up "$@"
}
interface_down()
{
_run_if _down "$@"
}
start()
{
local IFACE=${RC_SVCNAME#*.} oneworked=false fallback=false module=
local IFVAR=$(shell_var "${IFACE}") cmd= our_metric=
local metric=0 _up_before_preup
eval _up_before_preup="\$up_before_preup_${IFVAR}"
[ -z "${_up_before_preup}" ] && _up_before_preup=$up_before_preup
einfo "Bringing up interface ${IFACE}"
eindent
if [ -z "${MODULES}" ]; then
local MODULES=
_load_modules true
fi
# We up the iface twice if we have a preup to ensure it's up if
# available in preup and afterwards incase the user inadvertently
# brings it down
if [ "$(command -v preup)" = "preup" ]; then
yesno "${_up_before_preup:-yes}" && _up 2>/dev/null
ebegin "Running preup"
eindent
preup || return 1
eoutdent
fi
_up 2>/dev/null
for module in ${MODULES}; do
if [ "$(command -v "${module}_pre_start")" = "${module}_pre_start" ]; then
${module}_pre_start || exit $?
fi
done
if ! _exists; then
eerror "ERROR: interface ${IFACE} does not exist"
eerror "Ensure that you have loaded the correct kernel module for your hardware"
return 1
fi
if ! _wait_for_carrier; then
if service_started devd; then
ewarn "no carrier, but devd will start us when we have one"
mark_service_inactive "${RC_SVCNAME}"
else
eerror "no carrier"
fi
return 1
fi
local config= config_index=
_load_config
config_index=0
eval our_metric=\$metric_${IFVAR}
if [ -n "${our_metric}" ]; then
metric=${our_metric}
elif [ "${IFACE}" != "lo" -a "${IFACE}" != "lo0" ]; then
: $(( metric += $(_ifindex) ))
fi
while true; do
eval config=\$config_${config_index}
[ -z "${config}" ] && break
set -- ${config}
if [ "$1" != "null" -a "$1" != "noop" ]; then
ebegin "$1"
fi
eindent
case "$1" in
noop)
if [ -n "$(_get_inet_address)" ]; then
oneworked=true
break
fi
;;
null) :;;
[0-9]*|*:*) _add_address ${config};;
*)
if [ "$(command -v "${config}_start")" = "${config}_start" ]; then
"${config}"_start
else
eerror "nothing provides \`${config}'"
fi
;;
esac
if eend $?; then
oneworked=true
else
eval config=\$fallback_${config_index}
if [ -n "${config}" ]; then
fallback=true
eoutdent
ewarn "Trying fallback configuration ${config}"
eindent
eval config_${config_index}=\$config
unset fallback_${config_index}
: $(( config_index -= 1 ))
fi
fi
eoutdent
: $(( config_index += 1 ))
done
if ! ${oneworked}; then
if [ "$(command -v failup)" = "failup" ]; then
ebegin "Running failup"
eindent
failup
eoutdent
fi
return 1
fi
local hidefirstroute=false first=true routes=
if ${fallback}; then
routes="$(_get_array "fallback_routes_${IFVAR}")"
fi
if [ -z "${routes}" ]; then
routes="$(_get_array "routes_${IFVAR}")"
fi
if [ "${IFACE}" = "lo" -o "${IFACE}" = "lo0" ]; then
if [ "${config_0}" != "null" ]; then
routes="127.0.0.0/8 via 127.0.0.1
${routes}"
hidefirstroute=true
fi
fi
local OIFS="${IFS}" SIFS="${IFS-y}"
local IFS="$__IFS"
for cmd in ${routes}; do
unset IFS
if ${first}; then
first=false
einfo "Adding routes"
fi
eindent
ebegin ${cmd}
# Work out if we're a host or a net if not told
case ${cmd} in
-net" "*|-host" "*);;
*" "netmask" "*) cmd="-net ${cmd}";;
*.*.*.*/32*) cmd="-host ${cmd}";;
*.*.*.*/*|0.0.0.0|0.0.0.0" "*) cmd="-net ${cmd}";;
default|default" "*) cmd="-net ${cmd}";;
*) cmd="-host ${cmd}";;
esac
if ${hidefirstroute}; then
_add_route ${cmd} >/dev/null 2>&1
hidefirstroute=false
else
_add_route ${cmd} >/dev/null
fi
eend $?
eoutdent
done
if [ "${SIFS}" = "y" ]; then
unset IFS
else
IFS="${OIFS}"
fi
for module in ${MODULES}; do
if [ "$(command -v "${module}_post_start")" = "${module}_post_start" ]; then
${module}_post_start || exit $?
fi
done
if [ "$(command -v postup)" = "postup" ]; then
ebegin "Running postup"
eindent
postup
eoutdent
fi
return 0
}
stop()
{
local IFACE=${RC_SVCNAME#*.} module=
local IFVAR=$(shell_var "${IFACE}") opts=
einfo "Bringing down interface ${IFACE}"
eindent
if [ -z "${MODULES}" ]; then
local MODULES=
_load_modules false
fi
if [ "$(command -v predown)" = "predown" ]; then
ebegin "Running predown"
eindent
predown || return 1
eoutdent
else
if is_net_fs /; then
eerror "root filesystem is network mounted -- can't stop ${IFACE}"
return 1
fi
fi
for module in ${MODULES}; do
if [ "$(command -v "${module}_pre_stop")" = "${module}_pre_stop" ]; then
${module}_pre_stop || exit $?
fi
done
for module in ${MODULES}; do
if [ "$(command -v "${module}_stop")" = "${module}_stop" ]; then
${module}_stop
fi
done
# Only delete addresses for interfaces that exist
if _exists; then
# PPP can manage it's own addresses when IN_BACKGROUND
# Important in case "demand" set on the ppp link
if ! (yesno ${IN_BACKGROUND} && is_ppp) ; then
_delete_addresses "${IFACE}"
fi
fi
for module in ${MODULES}; do
if [ "$(command -v "${module}_post_stop")" = "${module}_post_stop" ]; then
${module}_post_stop
fi
done
# If not in background, and not loopback then bring the interface down
# unless overridden.
if ! yesno ${IN_BACKGROUND} && \
[ "${IFACE}" != "lo" -a "${IFACE}" != "lo0" ]; then
eval module=\$ifdown_${IFVAR}
module=${module:-${ifdown:-YES}}
yesno ${module} && _down 2>/dev/null
fi
type resolvconf >/dev/null 2>&1 && resolvconf -d "${IFACE}" 2>/dev/null
if [ "$(command -v "postdown")" = "postdown" ]; then
ebegin "Running postdown"
eindent
postdown
eoutdent
fi
return 0
} |
(c'est un lien symbolique vers net.lo) _________________ "On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre" (Victor HUGO) |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8709 Location: ~Brussels - Belgique
|
|
Back to top |
|
|
FDZ Tux's lil' helper
Joined: 23 Aug 2013 Posts: 86
|
Posted: Fri Aug 23, 2013 12:51 pm Post subject: |
|
|
Je crois qu'on déplace le problème et qu'on s'éloigne de la solution.
- j'ai un PC qui se connecte au réseau via une clé USB dont le pilote est géré par ndiswrapper
- ndiswrapper est bien installé sous gentoo (dixit "modinfo ndiswrapper"), le pilote est bien détecté (dixit "ndiswrapper -l")
- wlan0 n'est pas actif. Si je dois utiliser une autre appellation que wlan0, peut m'en chaut, du moins que ça tourne !
- ifconfig ne connait que eth0. Peut-être faudrait-il désactiver eth0 au démarrage pour que wlan0 (ou tout autre nom que gentoo peut accepter) soit actif ?
J'avais prévu que la prochaine étape (après la configuration correcte du réseau) serait l'installation de la configuration graphique (CG NVidia, à priori ça risque de ne pas être simple). Peut-être serait-il bon de passer directement à cette étape et essayer d'installer le réseau avec un outil graphique (wicd par ex.) _________________ "On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre" (Victor HUGO) |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8709 Location: ~Brussels - Belgique
|
Posted: Fri Aug 23, 2013 12:53 pm Post subject: |
|
|
Tu as une interface nommée eth0 ? Alors en effet, le problème n'est pas lié à udev. _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8709 Location: ~Brussels - Belgique
|
Posted: Fri Aug 23, 2013 12:55 pm Post subject: |
|
|
Pour nous aider, pourrais-tu nous dire au moins quelle est cette carte réseau wifi ? _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
FDZ Tux's lil' helper
Joined: 23 Aug 2013 Posts: 86
|
Posted: Fri Aug 23, 2013 1:17 pm Post subject: |
|
|
Clé WIFI Advance, model WL-54USB
Les drivers que j'utilise sous gentoo sont les mêmes que sous ubuntu. Au fait, mes OS sont en x86-64. _________________ "On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre" (Victor HUGO) |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8709 Location: ~Brussels - Belgique
|
Posted: Fri Aug 23, 2013 1:20 pm Post subject: |
|
|
peux-tu nous donner le résultat de lsusb ? _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
CryoGen Veteran
Joined: 11 Feb 2004 Posts: 1426 Location: Bamako - Mali - Afrique
|
Posted: Fri Aug 23, 2013 6:42 pm Post subject: |
|
|
et un "ifconfig -a" aussi. _________________ - CryoGen` on #gentoofr@irc.freenode.net
- ~amd64 / KDE4
- I'm the bone of my sword... |
|
Back to top |
|
|
FDZ Tux's lil' helper
Joined: 23 Aug 2013 Posts: 86
|
Posted: Sat Aug 24, 2013 8:18 am Post subject: |
|
|
lsusb (en mode autonome): Code: | Bus 001 Device 002: ID 1286:1fab Marvell Semiconductor, Inc. 88W8338 [Libertas] 802.11g
Bus 001 Device 003: ID 03f0:9711 Hewlett-Packard
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub |
ifconfig -a (toujours mode autonome) Code: | enp0s15: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether 00:1f:d0:95:88:27 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
sit0: flags=128<NOARP> mtu 1480
sit txqueuelen 0 (IPv6-in-IPv4)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
|
ndiswrapper -l (autonome): Code: | netmw226 : driver installed
device (1286:1FAB) present |
et enfin, toujours en mode autonome, "modinfo ndiswrapper": Code: | filename: /lib/modules/3.8.13-gentoo/misc/ndiswrapper.ko
license: GPL
version: 1.58
description: NDIS wrapper driver
author: ndiswrapper team <ndiswrapper-general@lists.sourceforge.net>
srcversion: 4E702FD03ACE7E03040C2C1
depends:
vermagic: 3.8.13-gentoo SMP mod_unload
parm: if_name:Network interface name or template (default: wlan%d) (charp)
parm: proc_uid:The uid of the files created in /proc (default: 0). (int)
parm: proc_gid:The gid of the files created in /proc (default: 0). (int)
parm: debug:debug level (int)
parm: hangcheck_interval:The interval, in seconds, for checking if driver is hung. (default: 0) (int)
parm: utils_version:Compatible version of utils (read only: 1.9) (charp) |
Apparemment, tout y est (ndiswrapper), mais le module (ndiswrapper.ko) semble ne pas être chargé
[Edit]
Bizarre : en mode "chroot" : Code: | Ubuntu / # lsusb
unable to initialize libusb: -99
|
NB : je viens de m'installer une carte (hub ?) de 2 ports usb3 via pci-e, ceci explique peut-être celà
[/Edit] _________________ "On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre" (Victor HUGO) |
|
Back to top |
|
|
FDZ Tux's lil' helper
Joined: 23 Aug 2013 Posts: 86
|
Posted: Sun Aug 25, 2013 7:17 am Post subject: |
|
|
Je crois que je viens de faire un grand pas en avant. En compulsant les options de ndiswrapper, j'ai vu passer fugitivement le terme "/proc".
Tilt ! Eureka ! Gonflant, mais c'est bien mur ! ! J'ai installé ndiswrapper en mode chroot, seul moyen que j'avais pour avoir une connexion. Or, dans cette configuration, "/proc" est une partition ubuntu montée justement (entre autre) pour permettre l'accès au net ! Donc si j'installe ndiswrapper, la partie qui utilise "/proc" et/ou qui s'y installe ne s'installe pas dans gentoo !
J'ai donc isolé le tarball de ndiswrapper, l'ai décompressé puis, en mode "autonome", j'ai recompilé la bête ("make" puis "make install").
Cependant, "modprobe ndiswrapper" refuse de fonctionner en mode autonome (je viens de vérifier : en mode chroot ça marche!)
Au besoin, je désinstalle tout le bazar (ndiswrapper) et reprend depuis le début. _________________ "On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre" (Victor HUGO) |
|
Back to top |
|
|
FDZ Tux's lil' helper
Joined: 23 Aug 2013 Posts: 86
|
Posted: Sun Aug 25, 2013 1:30 pm Post subject: |
|
|
Ça bute sur wlan0. J'ai modifié /etc/conf.d/net pour utiliser sit0, ça va un peu plus loin, mais ça bute sur "usr/bin/busybox" _________________ "On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre" (Victor HUGO) |
|
Back to top |
|
|
FDZ Tux's lil' helper
Joined: 23 Aug 2013 Posts: 86
|
Posted: Mon Aug 26, 2013 7:32 am Post subject: |
|
|
Impossible de charger ndiswrapper en module. "modprobe ndiswrapper" me renvoit : Code: | modprobe: ERROR: could not insert 'ndiswrapper': Exec format error |
Serait-ce une option erronée dans la config du noyau ? _________________ "On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre" (Victor HUGO) |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8709 Location: ~Brussels - Belgique
|
Posted: Mon Aug 26, 2013 7:36 am Post subject: |
|
|
Probablement.
Vérifie le format du module en question : est-il en ELF ? En 64 bits ?
Code: | modinfo ndiswrapper |
Essaie d'activer tous les types d'exécutables dans la configuration du noyau (surtout 32 bits). _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
FDZ Tux's lil' helper
Joined: 23 Aug 2013 Posts: 86
|
Posted: Mon Aug 26, 2013 9:33 am Post subject: |
|
|
modinfo : voir message 9
lsmod ne renvoie rien (= aucun module chargé ?)
A priori, ndiswrapper est en version "all", je comprend par là compatible 32 et 64 (je l'utilise sous ubuntu et debian avec une config 64 pour les 2, et ça tourne. Avant de passer en 64 bits pour les 2 OS, ndiswrapper tournait aussi en 32)
Par contre, je ne comprend pas "module en ELF" : comment savoir ?
Copie du modinfo ndiswrapper : Code: |
filename: /lib/modules/3.8.13-gentoo/misc/ndiswrapper.ko
license: GPL
version: 1.58
description: NDIS wrapper driver
author: ndiswrapper team <ndiswrapper-general@lists.sourceforge.net>
srcversion: 4E702FD03ACE7E03040C2C1
depends:
vermagic: 3.8.13-gentoo SMP mod_unload
parm: if_name:Network interface name or template (default: wlan%d) (charp)
parm: proc_uid:The uid of the files created in /proc (default: 0). (int)
parm: proc_gid:The gid of the files created in /proc (default: 0). (int)
parm: debug:debug level (int)
parm: hangcheck_interval:The interval, in seconds, for checking if driver is hung. (default: 0) (int)
parm: utils_version:Compatible version of utils (read only: 1.9) (charp) |
mais lsmod ne détecte aucun module
NB : c'est dans les paramètres renvoyés par "modinfo ndiswrapper" que j'ai détecté la présence de "/proc" relatée dans un précédent post
J'ai depuis réinstallé ndiswrapper en mode autonome, puis tenté la recompilation du noyau (make + make install après make menuconfiig,+> rien de changé, essai avec genkernel => même résultat : aucun module chargé et apparemment aucun module chargeable (c'est ce qui me fait penser à une mauvaise configuration pour la compilation du noyau => quelle option pourrait bloquer l'utilisation de modules ?) _________________ "On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre" (Victor HUGO)
Last edited by FDZ on Mon Aug 26, 2013 9:43 am; edited 1 time in total |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8709 Location: ~Brussels - Belgique
|
Posted: Mon Aug 26, 2013 9:36 am Post subject: |
|
|
Pourrais-tu regarder les traces kernel (dmes) après la tentative d'insertion du module ?
Il devrait y avoir des messages un peu plus explicites. _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
FDZ Tux's lil' helper
Joined: 23 Aug 2013 Posts: 86
|
Posted: Mon Aug 26, 2013 11:32 am Post subject: |
|
|
J'ai d'abord recompilé le noyau afin de valider l'installation du driver "mouveau" pour ma CG NVidia, en module. Au cours du make, j'ai pu vérifier que les éléments concernés s'installaient bien en module (apparition du [M] dans les messages de compil)
Après make install et vérification de la bonne installation du nouveau noyau dans /boot, j'ai rebooté afin d'être sur d'être sous ce noyau. lsmod me dit toujours qu'aucun module n'est présent, et "modprobe ndiswrapper" me renvoie le même message d'erreur.
Les traces dmesg postérieures au "modprobe ndiswrapper" sont Code: | [ 10.870361] ndiswrapper: version magic '3.8.13-gentoo SMP mod_unload modversions ' should be '3.8.13-gentoo SMP mod_unload '
[ 10.889851] ndiswrapper: version magic '3.8.13-gentoo SMP mod_unload modversions ' should be '3.8.13-gentoo SMP mod_unload '
[ 85.221811] ndiswrapper: version magic '3.8.13-gentoo SMP mod_unload modversions ' should be '3.8.13-gentoo SMP mod_unload '
[ 582.385537] conf (2216) used greatest stack depth: 4256 bytes left
[ 666.321912] mv (5172) used greatest stack depth: 4008 bytes left
[ 1121.123762] ndiswrapper: version magic '3.8.13-gentoo SMP mod_unload modversions ' should be '3.8.13-gentoo SMP mod_unload ' |
Bizarre : pourquoi 4 lignes identiques alors que je n'ai utilisé qu'une seule fois modprobe ?
Il semblerait que je doive d'abord désinstaller ndiswrapper, alors que justement je cherche à l'installer ??
Question subsidiaire : faudrait il vider le fichier /var/log/dmesg ? (lignes 4 et 5 : "used greater stack depth")
D'autre part, je suis surpris que ce fichier /var/dmesg soit différent suivant que je suis en mode chroot ou en mode autonome, pourtant /var n'est pas un fichier monté pour chroot (du moins pas volontairement) [ les lignes citées sont bien en mode "autonome" ] _________________ "On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre" (Victor HUGO) |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8709 Location: ~Brussels - Belgique
|
Posted: Mon Aug 26, 2013 11:38 am Post subject: |
|
|
Hello,
Pour éviter les ennuis, ne fais plus d'allers-retours entre Ubuntu et Gentoo, on ne s'y retrouve plus.
Comment as-tu installé/configuré ndiswrapper ? Via "emerge ndiswrapper" ?
Essaie de le réinstaller une fois que ton noyau Gentoo tourne. _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8709 Location: ~Brussels - Belgique
|
Posted: Mon Aug 26, 2013 11:43 am Post subject: |
|
|
Sinon, as-tu essayé une alternative : le pilote "libertas" du noyau et linux-firmware ? _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
FDZ Tux's lil' helper
Joined: 23 Aug 2013 Posts: 86
|
Posted: Mon Aug 26, 2013 2:26 pm Post subject: |
|
|
Installation ndiswrapper : je l'ai installé d'abord avec "emerge ndiswrapper" (en mode chroot, forcément !)
Puis sous gentoo, j'ai isolé le terball et l'ai réinstallé par compilation classique (make puis make install)
Ensuite, je l'ai désinstallé (make uninstall) et réinstallé toujours sous gentoo (mode autonome) avec "emerge ndiswrapper" (le tarball étant dejà présent, la connexion n'est pas indispensable pour l'installation).
ndiswrapper est bien installé et fonctionnel : "ndiswrappper -l" me renvoie bien les données correctes de la clé (pilote win et adresse usb).
"modinfo" me confirme que le module "ndiswrapper.ko" a bien été créé mais lsmod m'informe que les modules ne sont pas rattachés au noyau.
J'avais déjà essayé les pilotes libertas sous ubuntu, ça s'est soldé par un échec ; mais c'était il y a longtemps et je vais voir s'il y a de l'espoir de ce coté là
Noyau : j'ai réinitialisé grub sous ubuntu, il a bien détecté la partition bootable gentoo et c'est ainsi que je me logue en gentoo "autonome" (= sans passer par un autre OS). Le noyau gentoo est donc opérationnel, mais modprobe ne fonctionnne pas (exec format error).
NB : j'ai configuré le noyau pour valider les options (en module) du driver "nouveau" pour ma CG NVidia, mais ces modules n'apparaissent pas dans lsmod. _________________ "On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre" (Victor HUGO) |
|
Back to top |
|
|
FDZ Tux's lil' helper
Joined: 23 Aug 2013 Posts: 86
|
Posted: Tue Aug 27, 2013 5:33 am Post subject: |
|
|
J'ai trouvé un site qui me propose un tarball en tant que pilote pour une carte usb homonyme à la mienne.
- problème 1 : je ne suis pas du tout sur que cette solution soit opérationnelle, je parle d'expérience, ayant déjà tenté cette approche sans succès
- problème 2 : il est fort probable que ce pilote soit installable en module : je ne vois pas pourquoi l'installation de ce module se passerait bien alors que je n'arrive pas à faire fonctionner modprobe avec ndiswrapper, il faudrait supposer que le dysfonctionnement de modprobe soit du à ndiswrapper, ce dont je doute fort (tant qu'à faire, je vais essayer d'avancer dans l'installation des modules graphiques) _________________ "On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre" (Victor HUGO) |
|
Back to top |
|
|
|