123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 |
- #!/bin/bash
- set -e
- Version=1.0
- function print_centered {
- [[ $# == 0 ]] && return 1
- declare -i TERM_COLS="$(tput cols)"
- declare -i str_len="${#1}"
- [[ $str_len -ge $TERM_COLS ]] && {
- echo "$1";
- return 0;
- }
- declare -i filler_len="$(( (TERM_COLS - str_len) / 2 ))"
- [[ $# -ge 2 ]] && ch="${2:0:1}" || ch=" "
- filler=""
- for (( i = 0; i < filler_len; i++ )); do
- filler="${filler}${ch}"
- done
- printf "%s%s%s" "$filler" "$1" "$filler"
- [[ $(( (TERM_COLS - str_len) % 2 )) -ne 0 ]] && printf "%s" "${ch}"
- printf "\n"
- return 0
- }
- function intro_ {
- clear
- print_centered "$(tput setaf 244)"
- print_centered " _____ .__ .____ .__ "
- print_centered " / _ \ | | _____ _____ | | |__| ____ __ _____ ___ "
- print_centered " / /_\ \| | / \\__ \ | | | |/ \| | \ \/ / "
- print_centered " / | \ |_| Y Y \/ __ \| |___| | | \ | /> < "
- print_centered " \____|__ /____/__|_| (____ /_______ \__|___| /____//__/\_ \ "
- print_centered " \/ \/ \/ \/ \/ \/ "
- echo -n "$(tput sgr0)$(tput setaf 10)"
- print_centered "Server installation script v$Version"
- print_centered "Dell R640"
- echo -n "$(tput sgr0)"
- print_centered "ne pas activer le login automatique..."
- print_centered "appuyer sur une touche pour continuer"
- read -p ""
- }
- function update_ {
- sudo dnf -y update
- sudo dnf install -y epel-release
- sudo dnf group install -y "Development Tools"
- sudo dnf install -y cmake gmp-devel numactl-devel perl lynx perl-Encode-Detect perl-Time-Piece perl-open perl-encoding perl-Filter perl-Digest-SHA
- sudo dnf install -y git htop python-devel
- sudo dnf install -y tigervnc-server
- sudo dnf install -y remmina gparted
- sudo dnf install -y cmake3 libsodium libsodium-static
- sudo dnf install -y git make cmake gcc gcc-c++ hwloc-devel openssl-devel automake libtool autoconf
- sudo dnf --enablerepo=crb install -y libstdc++-static
- }
- function tigervnc_ {
- sudo dnf groupinstall -y "Server with GUI"
- sudo systemctl set-default graphical.target
- sudo systemctl default
- sudo dnf config-manager --set-enabled crb
- sudo dnf install -y epel-release
- sudo dnf update -y
- sudo cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
- sudo systemctl daemon-reload
- sudo systemctl start vncserver@:1
- sudo systemctl enable vncserver@:1
- sudo firewall-cmd --permanent --add-service=vnc-server
- sudo firewall-cmd --reload
- sudo firewall-cmd --add-port=5901/tcp --permanent
- sudo firewall-cmd --reload
- }
- function chia_ {
- cp /home/wareck/Build_Cube/options/chia.sh .
- sed -i "s/BladeBit=Yes/BladeBit=No/g" chia.sh
- sed -i "s/ChiaPos=Yes/ChiaPos=No/g" chia.sh
- sed -i "s/Miner=Yes/Miner=No/g" chia.sh
- sed -i "s/Toolkit for Chia v$Version/Toolkit for Chia AlmaLinux /g" chia.sh
- sed -i "s/sudo apt-get install/#sudo apt-get install/g" chia.sh
- ./chia.sh
- rm ./chia.sh
- cp /home/wareck/Build_Cube/options/flexfarmer.sh .
- sed -i "s/Flexpool mining software/Flexpool mining software AlmaLinux/g" flexfarmer.sh
- sed -i "s/build_service/#build_service/g" flexfarmer.sh
- sed -i "s/function #build_service/function build_service/g" flexfarmer.sh
- ./flexfarmer.sh
- rm flexfarmer.sh
- }
- function miner_ {
- echo -e "$(tput setaf 10)\nDownloading miners:$(tput sgr0)"
- cp /home/wareck/Build_Cube/pack/xmrig.tar.xz /home/wareck/
- cd /home/wareck
- if ! [ -d miners ]; then mkdir -p miners;fi
- cd miners
- if ! [ -d xmrig ]
- then
- git clone https://github.com/xmrig/xmrig.git
- echo -e ""
- fi
- echo -e "$(tput setaf 10)\nUncompress xmr files:$(tput sgr0)"
- tar xfJ /home/wareck/xmrig.tar.xz --checkpoint=.100
- echo "Done."
- echo -n -e "\n"
- echo -e "$(tput setaf 10)\nBuild xmrig:$(tput sgr0)"
- cd xmrig
- sed -i "s/kDefaultDonateLevel = 5;/kDefaultDonateLevel = 0;/g" src/donate.h
- sed -i "s/kMinimumDonateLevel = 1;/kMinimumDonateLevel = 0;/g" src/donate.h
- cd scripts
- ./build_deps.sh
- cd ..
- cd build
- rm -r Cm*
- cmake .. -DXMRIG_DEPS=scripts/deps
- make -j$((`nproc`+1))
- cd /home/wareck/miners
- sudo rm -r -f xmr-stak-rx
- sudo rm -r -f xmrig-upx
- echo "Done."
- }
- function webmin_ {
- cd /home/wareck
- wget -c https://github.com/webmin/webmin/releases/download/2.102/webmin-2.102.tar.gz
- tar xvfz webmin-2.102.tar.gz
- cd webmin-2.102
- sudo ./setup.sh
- }
- function wol_ {
- iface=$(ip link | awk -F: '$0 !~ "lo|vir|^[^0-9]"{print $2a;getline}')
- ether=$(which ethtool)
- echo "[Unit]" >>/tmp/wol.service
- echo "Description=Enable Wake On Lan" >>/tmp/wol.service
- echo "" >>/tmp/wol.service
- echo "[Service]" >>/tmp/wol.service
- echo "Type=oneshot" >>/tmp/wol.service
- echo "ExecStart = $ether --change eno1 wol g" >>/tmp/wol.service
- echo "ExecStart = $ether --change eno2 wol g" >>/tmp/wol.service
- echo "ExecStart = $ether --change eno3 wol g" >>/tmp/wol.service
- echo "ExecStart = $ether --change eno4 wol g" >>/tmp/wol.service
- echo "" >>/tmp/wol.service
- echo "[Install]" >>/tmp/wol.service
- echo "WantedBy=basic.target" >>/tmp/wol.service
- sudo cp /tmp/wol.service /etc/systemd/system/wol.service
- sudo systemctl daemon-reload
- sudo systemctl enable wol.service
- sudo systemctl start wol.service
- }
- intro_
- update_
- wol_
- tigervnc_
- chia_
- miner_
- webmin_
|