Building bradnorwiki on old MacBook
Jump to navigation
Jump to search
- Install Ubuntu Server
- Install Ubuntu server
- Change root password
- sudo passwd root
- Change root password
- Install Ubuntu server
- Enable wifi
- Enabling wifi has to be done on a clean install without any patches, updates or package installations being applied
- Install drivers
- sudo apt update
- sudo apt install firmware-b43-installer
- sudo apt install linux-firmware
- Install some utilities
- Update and Install emacs and some utilities...
- sudo apt update
- sudo apt upgrade
- sudo apt install emacs
- and to suppress creation of #file# backup files, create .emacs in ~ and /root containing
- ;; backup in one place. flat, no tree structure
- (setq backup-directory-alist '(("" . "~/.emacs.d/backup")))
- utilities for amounts others zip, nmcli, ifconfig, sensors and stress
- sudo apt install zip network-manager net-tools lm-sensors stress
- sudo apt install zip
- Update and Install emacs and some utilities...
- Configure ssh to use keys
- copy key to server for ssh client machine
- ssh-copy-id -i ~/.ssh/id_rsa.pub <remote_user>@<remote_host>
- check can still login over ssh with key
- modify server ssh installation to disable password login
- sudo emacs /etc/ssh/sshd_config
- and add/modify
- PasswordAuthentication no
- PermitRootLogin no
- UsePAM no
- restart ssh
- sudo systemctl restart ssh
- copy key to server for ssh client machine
- Power management stuff to allow lid to be closed
- Edit /etc/systemd/logind.conf and modify
- HandleLidSwitch=ignore
- HandleLidSwitchExternalPower=ignore
- HandleLidSwitchDocked=ignore
- and reboot
- Edit /etc/systemd/logind.conf and modify
- Screen brightness and therefore Apple logo
- sudo echo 50 | sudo tee /sys/class/backlight/intel_backlight/brightness
- and at start up edit/create a file
- /etc/rc.local
- containing
- #!/bin/bash
- echo 50 | tee /sys/class/backlight/intel_backlight/brightness
- exit 0
- and make it executable
- sudo chmod a+x /etc/rc.local
- Fan management
- Install management software
- sudo apt install macfanctld
- Test by using sensors and stress testing
- then run
- sensors
- to see fan speed on line 'Exhaust : 5179 RPM ...'
- or use
- sensors | grep -i '\(exhaust\|core \)' ; stress --cpu 2 --timeout 20 ; sensors | grep -i '\(exhaust\|core \)'
- then run
- Install management software
- Mediawiki
- Install the LAMP stack - Apache, MySQL etc
- sudo apt-get install apache2 mysql-server php php-mysql libapache2-mod-php php-xml php-mbstring
- and additional bits for mediawiki
- sudo apt-get install php-apcu php-intl imagemagick inkscape php-gd php-cli php-curl php-bcmath git
- sudo systemctl restart apache2
- Secure mysql
- sudo mysqladmin -u root password <password>
- sudo mysql_secure_installation
- Install automysqlbackup and rsnapshot
- sudo apt install automysqlbackup
- sudo apt install rsnapshot
- Set up noip
- Will need to install 'make'
- sudo apt install build-essential
- Download the DUC and save the file to: /usr/local/src
- Open terminal and execute the following:
- cd /usr/local/src
- tar xzf noip-duc-linux.tar.gz
- cd noip-2.1.9-1
- make
- make install
- If the install did not create configuration file then run. You need username/password for noip and port 80 need to be forwarded to the machine
- /usr/local/bin/noip2 -C
- To start at boot time, create a service by creating a file /lib/systemd/system/noip.service containing
- [Unit]
- Description=NOIP dynamic dns updater
- After=multi-user.target
- [Service]
- Type=forking
- ExecStart=/usr/local/bin/noip2 -c /usr/local/etc/no-ip2.conf
- StandardOutput /var/log/noip.log
- [Install]
- WantedBy=multi-user.target
- and enable by
- sudo systemctl enable noip.service
- Will need to install 'make'
- Set up certbot
- Modify apache config
- Create a virtual site for bradnormac.ddns.net
- Install and restore mediawiki
- Create mysql user
- sudo mysql
- CREATE DATABASE bradnor;
- USE bradnor;
- CREATE USER 'mediawiki'@'localhost' IDENTIFIED BY '<password>';
- GRANT SELECT, INSERT, UPDATE, DELETE ON bradnor.* TO 'mediawiki'@'localhost';
- less secure alternativeGRANT ALL PRIVILEGES ON *.* TO 'mediawiki'@'localhost' IDENTIFIED BY 'password';
- Configure PHP
- Edit /etc/php/7.3/apache2/php.ini
- set
- upload_max_filesize = 20M
- memory_limit = 128M
- set
- Edit /etc/php/7.3/apache2/php.ini
- Create mysql user