[Ubuntu-BR] Montando uma partição automaticamente
Wagner De Queiroz
wagnerdequeiroz em gmail.com
Segunda Abril 17 14:12:01 UTC 2017
no /etc/init.d ficam os scripts de inicializacao, contudo eles não são
executados se vc nao mandar isso explicitamente. O ubuntu trabalha com
runlevel. (Nao confunda o runlevel da inicializacao com runlevel de
aplicativos)
https://pt.wikibooks.org/wiki/Guia_do_Linux/Avan%C3%A7ado/A_distribui%C3%A7%C3%A3o_Debian_GNU/Linux/N%C3%ADveis_de_Execu%C3%A7%C3%A3o
Vc cria seu script lá no /etc/init.d para fazer a sua montagem. Olha o
exemplo de um outro script la, pois cada script quando for executado, ele
espera um start ou stop no minimo: e eles sao importantes.
exemplo: apachectrl start inicializa o apache
apachectl stop termina o processo do apache
Eles sao executados da seguinte forma: No boot, o sistema ve qual runlevel
usar, e ai vai executando os scripts na pasta do numero do runlevel, na
ordem numerica e alfabetica S de start, mais o numero e depois o processo:
exemplo S48apachectrl. Na verdade isso seria um atalho para
/etc/init.d/apache.sh e como é boot ele faria: /etc/init.d/apache.sh start
Quando o sistema vai se encerrar, ele precisa fechar o processo, pois se
ele ficar aberto, o sistema fica travado esperando o processo terminar para
ele fechar o processo inicial (init).
Por isso na pasta /etc/rc6.d tem scripts que comecam com KxxProcesso. onde
K é de kill, o xx é o numero sequencial e depois o nome. que no caso seria
por exemplo K22apache que chamaria /etc/init.d/apache stop.
é complicado, mas uma vez que vc compreende isso, fica fácil.
no seu caso, no S99montar ficaria /etc/init.d/monta.sh start que executaria
o mount /dev/sd....
e no stop do script ficaria umount /dev/sd...
Olhe nos scripts em /etc/init.d como funciona e copie um deles para seu
proposito.
outra opcao é se seu sistema nao tem /etc/rc.local, vc pode criar a pasta e
colocar seu script lá. se o sistema tiver o /etc/init.d/rc.local, ele vai
executar tudo que etiver em /etc/rc.local se a pasta existir.
Para saber qual runlevel vc esta usando, execute o comando runlevel:
#runlevel
N 5
Ele diz no meu caso que meu sistema esta no runlevel 5,
ou seja, no boot ele executa /etc/rc5.d e no shutdown ou reboot o /etc/rc6.d
O runlevel6 é o estado do sistema para o processo de shutdown ou reboot.
Em 17 de abril de 2017 10:42, luciano de souza <luchyanus em gmail.com>
escreveu:
> Caros,
> O Linux não está a montar uma partição automaticamente e isso
> precisamente é aquilo que gostaria de fazer.
> A primeira dica, tenho certeza, é sugerir a edição de /etc/fstab. No
> entanto, ao editar este arquivo, já cheguei a comprometer a iniciação
> do sistema. Sem dúvida, imperícia de minha parte.
> De qualquer modo, há uma solução que sempre utilizei com êxito:
> colocar em /etc/rc.local, o seguinte comando:
>
> mount /dev/sda1 /mnt/sda1
> exit 0
>
> O problema é que, na atual versão do ubuntu, não encontrei o arquivo
> /etc/rc.local.
> A pergunta que faço, portanto, é a seguinte: bastaria salvar o
> seguinte escript em /etc/init.d?
>
> #mount_sda1.sh
>
> #!/bin/bash
>
> mount /dev/sda1 /mnt/sda1
>
> Se bem entendi, tudo o que está em /etc/init.d é executado ao iniciar
> do sistema, desde que, naturalmente, se tenha dado a permissão com
> "sudo chmod +x".
> Isso funcionaria? E se não funcionaria, qual seria a forma para
> executar um script automaticamente?
>
> --
> Luciano de Souza
>
> --
> Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece
>
> Lista de discussão Ubuntu Brasil
> Histórico, descadastramento e outras opções:
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-br
>
--
Wagner de Queiroz
Be free with Linux
Mais detalhes sobre a lista de discussão ubuntu-br