Citation de WildTux: |
J'ai fait un hand-book sur github si ça peut aider. qemu virmanager 2 nvidia |
Code: |
#!/bin/bash ## Fonctions function ftp_download() { HOST=hostname #TODO: changer LOGIN=user #TODO: changer PASSWORD="password" #TODO: changer PORT=21 # le transfert lui même ftp -i -n $HOST $PORT <<END_SCRIPT quote USER $LOGIN quote PASS $PASSWORD pwd bin mget $1 quit END_SCRIPT } function install_app() { #TODO: ajouter process d'installation echo "=====================================" | tee -a $installLogFile } ## Définition des couleurs red=$'e[1;31m' green=$'e[1;32m' blue=$'e[1;34m' magenta=$'e[1;35m' cyan=$'e[1;36m' white=$'e[0m' ## Try if root access if [ "$EUID" -ne 0 ]; then echo $red"Merci d'utiliser la commande sudo"$white exit fi echo -e "GET http://google.com HTTP/1.0nn" | nc google.com 80 >/dev/null 2>&1 if [ $? -eq 0 ]; then echo $green"Connexion internet OK"$white else echo $red"Merci de vous connecter à internet pour executer ce script"$white exit fi response=0 #TODO: changer while true; do echo "question ?" echo "y: Oui" echo "n: Non" read -p "Réponse : " yn case $yn in y | Y) response=1 break ;; n | N) response=0 break ;; *) echo "Répondre y ou n" ;; esac done #TODO: changer ip=localhost echo "Quel est l'adresse IP" read varIp ip=$varIp pi=0 while true; do echo "Est-ce que c'est l'installation pour un raspberry pi ?" echo "y: Oui" echo "n: Non" read -p "Réponse : " yn case $yn in y | Y) pi=1 break ;; n | N) pi=0 break ;; *) echo "Répondre y ou n" ;; esac done type=0 ## shell config user=user #TODO: changer group=group #TODO: changer if [ $pi -eq 1 ]; then user=pi group=pi fi dirHome=/home/$user dirAppInstall=/home/$user/path #TODO: changer dirLogFile=/home/$user/path #TODO: changer dirTmp=/tmp ## definition fichier de log d'installation installLogFile=$dirTmp/install.log rm -f $installLogFile echo $red"fichier de log : "$installLogFile$white echo $green"Déplacement dans le dossier /tmp"$white | tee $installLogFile pushd /tmp echo "=====================================" | tee -a $installLogFile ## Création du groupe et de l'utilisateur echo $green"Création du groupe $group"$white | tee $installLogFile if grep -q $group /etc/group; then echo $cyan"Le groupe existe déjà"$white | tee $installLogFile else groupadd $group fi echo "=====================================" | tee -a $installLogFile echo $green"Création de l'utilisateur $user"$white | tee $installLogFile if grep -q $user /etc/passwd; then echo $cyan"L'utilisateur existe déjà"$white | tee $installLogFile else adduser $user $group fi echo "=====================================" | tee -a $installLogFile ## Installation outils echo $green"Mise à jour"$white | tee -a $installLogFile apt-get update >>$installLogFile apt-get upgrade -y >>$installLogFile echo "=====================================" | tee -a $installLogFile echo $green"Installation Xorg"$white | tee -a $installLogFile if ! [ -x "$(dpkg -l | grep xserver-xorg-core)" ]; then echo $red"Xorg n'est pas installé"$white | tee -a $installLogFile echo $green"Installation Xorg"$white | tee -a $installLogFile apt-get install -y --no-install-recommends xserver-xorg x11-xserver-utils xinit >>$installLogFile fi echo "=====================================" | tee -a $installLogFile echo $green"Installation pulseaudio"$white | tee -a $installLogFile if ! [ -x "$(command -v pulseaudio)" ]; then echo $red"Pulseaudio n'est pas installé"$white | tee -a $installLogFile echo $green"Installation pulseaudio"$white | tee -a $installLogFile apt-get install -y --no-install-recommends pulseaudio >>$installLogFile fi echo "=====================================" | tee -a $installLogFile echo $green"Installation openbox"$white | tee -a $installLogFile if ! [ -x "$(command -v openbox)" ]; then echo $red"Openbox n'est pas installé"$white | tee -a $installLogFile echo $green"Installation openbox"$white | tee -a $installLogFile apt-get install -y --no-install-recommends openbox >>$installLogFile fi echo "=====================================" | tee -a $installLogFile #TODO: changer si pas besoin de chrome echo $green"Installation de chromium"$white | tee -a $installLogFile if ! [ -x "$(command -v chromium)" ]; then echo $red"Chromium n'est pas installé"$white | tee -a $installLogFile echo $green"Installation chromium"$white | tee -a $installLogFile apt-get install -y --no-install-recommends chromium-browser >>$installLogFile fi echo "=====================================" | tee -a $installLogFile echo $green"Installation de wget"$white | tee -a $installLogFile if ! [ -x "$(command -v wget)" ]; then echo $red"wget n'est pas installé"$white | tee -a $installLogFile echo $green"Installation wget"$white | tee -a $installLogFile apt-get install -y --no-install-recommends wget >>$installLogFile fi echo "=====================================" | tee -a $installLogFile echo $green"Installation de curl"$white | tee -a $installLogFile if ! [ -x "$(command -v curl)" ]; then echo $red"curl n'est pas installé"$white | tee -a $installLogFile echo $green"Installation curl"$white | tee -a $installLogFile apt-get install -y --no-install-recommends curl >>$installLogFile fi echo "=====================================" | tee -a $installLogFile #TODO: changer si pas besoin htop echo $green"Installation de htop"$white | tee -a $installLogFile if ! [ -x "$(command -v htop)" ]; then echo $red"htop n'est pas installé"$white | tee -a $installLogFile echo $green"Installation htop"$white | tee -a $installLogFile apt-get install -y --no-install-recommends htop >>$installLogFile fi echo "=====================================" | tee -a $installLogFile echo $green"Installation de ftp"$white | tee -a $installLogFile if ! [ -x "$(command -v ftp)" ]; then echo $red"ftp n'est pas installé"$white | tee -a $installLogFile echo $green"Installation ftp"$white | tee -a $installLogFile apt-get install -y --no-install-recommends ftp >>$installLogFile fi echo "=====================================" | tee -a $installLogFile #TODO: changer si tu n'aimes pas ZSH echo $green"Installation de ZSH"$white | tee -a $installLogFile if ! [ -x "$(command -v zsh)" ]; then echo $red"ZSH n'est pas installé"$white | tee -a $installLogFile echo $green"Installation ZSH"$white | tee -a $installLogFile apt-get install -y --no-install-recommends zsh >>$installLogFile fi wget -q -O $dirHome/.zshrc https://git.grml.org/f/grml-etc-core/etc/zsh/zshrc wget -q -O /root/.zshrc https://git.grml.org/f/grml-etc-core/etc/zsh/zshrc chsh -s /bin/zsh $user chown $user:$group $dirHome/.zshrc chsh -s /bin/zsh root echo "=====================================" | tee -a $installLogFile ## Configuration réseau #TODO: changer en fonction des besoins echo $green"Configuration réseau"$white | tee -a $installLogFile interface=$(ip link | awk -F: '$0 !~ "lo|vir|wl|^[^0-9]"{print $2;getline}') #TODO: changer ipadress=192.168.1.2 mask=255.255.255.0 gateway=192.168.1.254 dns=9.9.9.9 # TODO: config pour RPi # echo "" >>/etc/network/interfaces # echo "## Configuration de $interface en mode Statique" >>/etc/network/interfaces # echo "auto $interface " >>/etc/network/interfaces # echo "iface $interface inet static" >>/etc/network/interfaces # echo " address $ipadress" >>/etc/network/interfaces # echo " netmask $mask" >>/etc/network/interfaces # echo " gateway $gateway" >>/etc/network/interfaces # echo " dns-nameservers $dns" >>/etc/network/interfaces # echo $nameserver >>/etc/resolv.conf #TODO: config pour Ubuntu 20.04 echo "" echo "network:" >>/etc/netplan/enp2s0.yaml echo " ethernets:" >>/etc/netplan/enp2s0.yaml echo " $interface:" >>/etc/netplan/enp2s0.yaml echo " addresses: [$ipadress/24]" >>/etc/netplan/enp2s0.yaml echo " gateway4: $gateway" >>/etc/netplan/enp2s0.yaml echo " nameservers:" >>/etc/netplan/enp2s0.yaml echo " addresses: [$gateway]" >>/etc/netplan/enp2s0.yaml echo " dhcp4: false" >>/etc/netplan/enp2s0.yaml echo " dhcp6: false" >>/etc/netplan/enp2s0.yaml echo " version: 2" >>/etc/netplan/enp2s0.yaml netplan apply systemctl restart systemd-networkd echo "=====================================" | tee -a $installLogFile ## Configuration Demarrage auto echo $green"Configuration du démarrage automatique"$white | tee -a $installLogFile echo -e "# Disable any form of screen saver / screen blanking / power management" >autostart.tmp echo -e "xset s off" >>autostart.tmp echo -e "xset s noblank" >>autostart.tmp echo -e "xset -dpms" >>autostart.tmp echo -e "# Allow quitting the X server with CTRL-ATL-Backspace" >>autostart.tmp echo -e "setxkbmap -option terminate:ctrl_alt_bksp" >>autostart.tmp #TODO: changer si pas par chrome et ajouter la ligne de commande de l'application en mode kiosk echo -e "# Start Chromium in kiosk mode" >>autostart.tmp echo -e "sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' ~/.config/chromium/'Local State'" >>autostart.tmp echo -e "sed -i 's/"exited_cleanly":false/"exited_cleanly":true/; s/"exit_type":"[^"]+"/"exit_type":"Normal"/' ~/.config/chromium/Default/Preferences" >>autostart.tmp echo -e "chromium-browser --disable-infobars --kiosk --disable-pinch --no-context-menu --no-first-run --incognito --overscroll-history-navigation=0 'http://url'" >>autostart.tmp #TODO: changer mv autostart.tmp /etc/xdg/openbox/autostart echo "=====================================" | tee -a $installLogFile ## Autologin #TODO: changer si tu choisis bash remplacer .zprofile par .bash_profile echo $green"Autologin"$white | tee -a $installLogFile mkdir -p /etc/systemd/system/getty@tty1.service.d echo "[Service]" >/etc/systemd/system/getty@tty1.service.d/override.conf echo "ExecStart=" >>/etc/systemd/system/getty@tty1.service.d/override.conf echo "ExecStart=-/sbin/agetty --autologin $user --noclear %I 38400 linux" >>/etc/systemd/system/getty@tty1.service.d/override.conf systemctl enable getty@tty1.service echo "=====================================" | tee -a $installLogFile echo $green"Auto startx"$white | tee -a $installLogFile echo "if systemctl -q is-active graphical.target && [[ ! $DISPLAY && $XDG_VTNR -eq 1 ]]; then" >$dirHome/.zprofile echo "exec startx -- -nocursor" >>$dirHome/.zprofile echo "fi" >>$dirHome/.zprofile chown $user:$group $dirHome/.zprofile echo "=====================================" | tee -a $installLogFile ## Installation de l'application install_app #TODO: changer en fonction de la fonction while true; do echo "Est-ce que vous voulez redémarrer ?" echo "y: Oui" echo "n: Non" read -p "Réponse : " yn case $yn in y | Y) reboot break ;; n | N) break ;; *) echo "Répondre y ou n" ;; esac done |
Citation de alain65: |
Bonjour Tekkharibo et re-bienvenue sur le forum de Parrain-Linux ;) |
Citation de .AleX.: |
@Tekkharibo , pour la notion de Juridique, France Wireless .org maitrise cet aspect. Ils ont des serveurs de logs correspondant à la règlementation, et chaque membre de l'asso configure sa borne pour faire les enregistrements (et d'ailleurs,si serveur ou liaison est down, les clients ne peuvent plus surfer) Pour faire très basique, le logs enregistrent uniquement : date/heure : MAC du client,pseudo(compte) du client, borne utilisée et IP/Port contacté En cas de demande judiciaire, la requête ressemble à : "Donnez nous l'identité de la personne qui s'est connectée sur 88.77.66.55:22 le 01 avril 2015 à 13h37" Il faut donc que le système de log ne puisse par être remis en cause et que tu ais les données, sinon, c'est toi qui est juridiquement responsable. |
Citation de Guillaume: |
Si quelqu'un veut devenir développeur du site, il est le bienvenue, après discussion avec l'équipe gérant le site afin de connaître ses motivations. |
Citation de Magissia: |
Faut accepter de Gravatar puisse mettre son nez dans les affaires de qui peut savoir qui passe sur le site ou non. Si on fait une intégration gravatar, on fait une intégration facebook google+ aussi. Ça veut aussi dire qu'on laisse gravatar (wordpress) accéder à notre base d'adresse courriel. |
Citation de Magissia: |
Redimensionner côté serveur peut dénaturer une image, car un paramètre fixe sera utilisé, qui ne sera pas forcément optimal par rapport à ce qu'attendais l'utilisateur pour son avatar ... |
Citation de satanas17: | ||||
Yop, la, je vois pas ce que tu veux dire...mais c'est juste pour mon info perso (quoique je pense que Guillaume risque de se poser la même question... ) |
Citation de satanas17: |
Salut, une alerte sonore lors de la réception d'un message sur la shout serait apprécié par votre serviteur... Avant de crier, clair qu'il est nécessaire d'avoir une option pour désactiver cette alerte... ++ |