IIIDoug
(usa Debian)
Enviado em 28/11/2016 - 10:02h
Prezados, bom dia.
Estou implementando alguns scripts de inicialização nas máquinas Ubuntu que tenho na rede.
O cenário é o seguinte:
Script 1: Realiza atualização do sistema, algumas configurações e etc. Nele tudo deve ser executado com root e funciona ok utilizando o init.d
Scripts 2: Este realiza alteração a nível de usuário, como copiar alguns arquivos do navegador para a pasta do usuário "~", alterar papel de parede e etc.
O problema é exatamente com o segundo script, pois em qualquer lugar que coloco para iniciar junto ao sistema, ele executa como root, e quando mando copiar algo pra a pasta "~" por exemplo, ele tenta o fazer para a pasta do root.
O Skel é útil apenas quando se cria o usuário, os scripts .profile, .bashrc funcionam mas só são criados ao adicionar um usuário, e como pode acontecer de eu precisar alterar os scripts, teria de fazer a alteração usuário por usuário.
Então, como posso executar um script no login do usuário sem que seja como sudo?
Vou deixar abaixo os scripts só para que entendem.
Obrigado!
exec.sh (necessário root)
#!/bin/bash
LOGFILE="/opt/mmfiles-exec.log"
sudo echo "" > $LOGFILE
# LOG
exec 1> >(tee -a "$LOGFILE")
# ERROS
exec 2>&1
mkdir /mnt/mmfiles
mount //10.10.1.27/mmfiles /mnt/mmfiles/ -o username=******
rsync -av --delete /mnt/mmfiles/ /opt/.mmfiles/
chmod -R 777 /opt/.mmfiles
aptitude update
aptitude upgrade
exit 0
---------------------
start.sh (apenas permissão de usuário)
#!/bin/bash
LOGFILE="/opt/.mmfiles/scripts/start.log"
echo "" > $LOGFILE
chmod -R 777 $LOGFILE
# LOG
exec 1> >(tee -a "$LOGFILE")
# ERROS
exec 2>&1
echo "
--------------------------------------------------------------------------
-> REDEFINIR PAPEL DE PAREDE
--------------------------------------------------------------------------
"
cd /opt/.mmfiles/backgrounds
gsettings set org.gnome.desktop.background draw-background false && gsettings set org.gnome.desktop.background picture-uri file:///opt/.mmfiles/backgrounds/$[ 1 + $[ RANDOM % `ls | wc -l` ]].png && gsettings set org.gnome.desktop.background picture-options 'stretched'
echo "
--------------------------------------------------------------------------
-> DEFINIÇÕES DE NAVEGADORES E INTRANET
--------------------------------------------------------------------------
"
cd /opt/.mmfiles/navegadores
cp -R google-chrome ~/.config/
mkdir ~/.mozilla
mkdir ~/.mozilla/firefox
cp -R maxmilhas.default ~/.mozilla/firefox
cp -R profiles.ini ~/.mozilla/firefox
echo "
--------------------------------------------------------------------------
-> DESATIVAR DESCANSO DE TELA
--------------------------------------------------------------------------
"
gsettings set org.gnome.desktop.screensaver idle-activation-enabled false
gsettings set org.gnome.settings-daemon.plugins.power active false
gsettings set org.gnome.desktop.session idle-delay 0
gsettings set org.gnome.desktop.screensaver lock-enabled false
exit 0