linux shutdown pendurar com cifs wi-fi monta

2

Desde o fedora 15 (e agora com 16), parece que os clientes wireless demoram muito tempo para desligar quando têm sistemas de arquivos de rede montados no momento do desligamento.

Eu empurrei uma montagem cifs via fantoche, e todos os clientes têm, incluindo aqueles sem fio. Se disser que um laptop está em uma conexão com fio, ele desliga muito bem, mas se estiver ligado à rede Wi-Fi no momento (e sem conexão com fio), ele ficará pendurado no logotipo do fedora f. Não tenho certeza se é indefinida ou demorada, mas vou testar quando desligar a máquina em um segundo.

É desnecessário dizer que é muito chato, então há uma maneira de fazer com que a máquina desligue mesmo que a conectividade da rede tenha sido perdida no tempo desacompanhado - ou uma maneira oficial de reordenar eventos para que a placa wireless seja mantida até depois a desmontagem acontece durante o processo de desligamento (falta de escrever um script personalizado para desligamentos que é um pouco de um kludge)?

Ele faz isso em várias máquinas, e todos começaram a fazê-lo quando passamos do fedora 14 para o 15. Era um problema tão óbvio que eu meio que presumi que alguém deveria ter relatado isso ou havia uma solução fácil, mas eu não descobri nada ainda.

Informações adicionais: posso confirmar que desmontar manualmente as montagens e depois desligá-las (sudo shutdown ou o botão xfce shutdown) irá desligar bem, apenas trava se as montagens ainda estiverem montadas

A configuração de marionetes que define a montagem é assim (agora com a entrada _netdev que é de fato enviada aos clientes com sucesso, mas não faz diferença):

   file    { "/mnt/share": ensure => directory,}
    mount   { "/mnt/share": 
    atboot => true,
    ensure => mounted,
    remounts => false,
    fstype => cifs,
    device => "//srv/share",
    options => "user,gid=shareusers,uid=${user},file_mode=0700,dir_mode=0700,credentials=/root/.smbcreds,_netdev",
    require => [ File["/mnt/share"], Group["shareusers"] ],
    }
}
    
por Sirex 23.11.2011 / 22:48

1 resposta

1

Você pode adicionar o script "ifdown -a" ou "ifdown wlan0" ao seu arquivo /etc/init.d/ e então fazer o link para /etc/rc0.d/ Por exemplo  ln -s /etc/init.d/killwlan.sh /etc/rc0.d/S05killwlan.sh onde killwlan.sh contém o script ifdown, rc0.d é o processo de encerramento e S05 significa que o script será iniciado como o quinto (se houver outros scripts de S01 para S04)

    
por 29.11.2011 / 09:54