You can install the default-jre to get the default Java package installed
sudo apt install -y default-jre
You can install the default-jre to get the default Java package installed
sudo apt install -y default-jre
Error when trying to ping
ping: socket: Operation not permitted
Looks like it is a permissions issue. To resolve it, find where your ping binary is and change the permissions on it
sudo chmod 4711 /usr/bin/ping
Example:
$ which ping
/usr/bin/ping
$ sudo chmod 4711 /usr/bin/ping
$ ping incredigeek.com
From the server side, edit the /etc/ssh/sshd_config
Change, uncomment, or add
ClientAliveInterval 120
ClientAliveCountMax 15
Change the AliveInterval and CountMax as desired.
More info on the AliveIntercal and CountMax.
ClientAliveCountMax
Sets the number of client alive messages which may be sent without sshd(8) receiving any messages back from the client. If this threshold is reached while client alive messages are being sent, sshd will disconnect the client, terminating the session. It is important to note that the use of client alive messages is very different from TCPKeepAlive
. The client alive messages are sent through the encrypted channel and therefore will not be spoofable. The TCP keepalive option enabled by TCPKeepAlive
is spoofable. The client alive mechanism is valuable when the client or server depend on knowing when a connection has become unresponsive.
The default value is 3. If ClientAliveInterval
is set to 15, and ClientAliveCountMax
is left at the default, unresponsive SSH clients will be disconnected after approximately 45 seconds. Setting a zero
ClientAliveCountMax
disables connection termination.ClientAliveInterval
Sets a timeout interval in seconds after which if no data has been received from the client, sshd(8) will send a message through the encrypted channel to request a response from the client. The default is 0, indicating that these messages will not be sent to the client.
More information
https://man.openbsd.org/sshd_config
You will need an Android Terminal. You can turn on the default one in the developer settings. Need to turn on developer mode?
You will also need to enable root which can also be done in the Developer settings
Open up the terminal app and run
su
rpi3-audio-jack.sh
More info here
Screen is a handy tool that can help you run scripts on servers remotely without having to worry about the session getting terminated. It seems to operate kinda like a virtual console.
Create a new session with a specified name
screen -S SessionName
Example output below. Create session named testsession and print screen sessions.
[bob@localhost imapsync]$ screen -S testsession [bob@localhost imapsync]$ screen -ls There are screens on: 3313.testsession (Attached) 1 Sockets in /var/run/screen/S-bob. [bob@localhost imapsync]$
You can disconnect from a screen session by hitting ctrl + a and then ctrl +d
“ctrl + a” then “ctrl + d”
You can list the screen sessions with
screen -ls
Example
[bob@localhost imapsync]$ screen -ls There are screens on: 3212.testsession (Detached) 2556.xap (Detached) 2 Sockets in /var/run/screen/S-bob. [bob@localhost imapsync]$
You can reconnect to a screen session with
screen -r testsession
To terminate a screen session, connect to that session and then on a clear line hit ctrl + d
Same way as if you were closing a remote ssh connection.
Looks like you can use Darling to run MacOS command line applications in Linux.
You should be able to copy and paste the following in a backup.sh file and then execute from cron. Should work out of the box, but you can change the backup directory and the teams.sh path if needed/wanted.
#!/bin/bash # LibreNMS backup script # Jan 1, 2019 lDate=`date +%Y%m%d-%H%M` # local date + hour minute dDate=`date +%Y%m%d` # todays date # If you have the teams.sh script, you can trigger a backup notification ALERT="/home/admin/teams.sh -b" # Directory to backup to bDir="/backup" bName="librenms_backup" # MySQL settings for tar and sqldump sqlDir="/var/lib/mysql" sqlDB="librenms" sqlUN="root" sqlPW="" LOG="${bDir}/${lDate}-${bName}.log" # Directory that contains data dDir="/opt/librenms" # tar LibreNMS dir # tar SQL dir "the whole thing with the innode files # sql dump of the db for extra redundancy if [ -d ${bDir} ]; then echo "backup dir exist, starting to backup" else echo "backup dir not available. Quiting" exit 1 fi ${ALERT} "Starting backup for ${bName} - `date`" systemctl stop mariadb httpd # LibreNMS data backup tar -zcvf ${bDir}/${lDate}-${bName}.tgz ${dDir} if [ $? -eq 0 ]; then echo "Tar succesfully backed up ${bDir}" else echo "Tar failed while trying to backup ${dDir}" echo " ${lDate} - Tar failed while trying to backup ${dDir}" >> ${LOG} ${ALERT} "${lDate} - Tar failed while trying to backup ${dDir}" fi # MySQL data backup tar -zcvf ${bDir}/${lDate}-${bName}-mysql.tgz ${sqlDir} if [ $? -eq 0 ]; then echo "Tar succesfully backed up ${sqlDir}" else echo "Tar failed while trying to backup ${sqlDir}" echo " ${lDate} - Tar failed while trying to backup ${sqlDir}" >> ${LOG} ${ALERT} "${lDate} - Tar failed while trying to backup ${sqlDir}" fi systemctl start mariadb httpd sleep 5 # SQL dump mysqldump -u ${sqlUN} -p'4rfvBHU8!' ${sqlDB} > ${bDir}/${lDate}-${bName}.sql if [ $? -eq 0 ]; then echo "MySQL DB dumped" else echo "Ran into error while doing sql dump" echo "${lDate} - Ran into error while doing sql dump" >> ${LOG} ${ALERT} "${lDate} - Ran into error while doing sql dump" fi echo "Removing old backups" if ( ls ${bDir} | grep -q ${dDate} );then find ${bDir}/* -prune -mtime +31 -exec rm {} \; else echo "Looks like there are no backup files! Aborting!!!" ${ALERT} "${lDate} - Error: find failed to find any backup files in backup dir. Aborting!!!" fi ${ALERT} "Finished backup for ${bName} - `date`"
Warning: Be extremely careful when making changes to partitions and disk as it can lead to broken systems and lost data. Make sure you have a backup.
This scenario is done on a basic Ubuntu install. No fancy LVM stuff going on. If you need that, refer to here
Disk /dev/sda: 64 GiB, 68719476736 bytes, 134217728 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x2062ec28 Device Boot Start End Sectors Size Id Type /dev/sda1 * 2048 65011711 65009664 31G 83 Linux /dev/sda2 65013758 67106815 2093058 1022M 5 Extended /dev/sda5 65013760 67106815 2093056 1022M 82 Linux swap / Solaris
From the above output of fdisk -l, we see that the disk has 64GiB available, but the primary partition is only 31G. To make the primary partition larger we need to
You may need to boot up in recovery to get this command working. Also if you boot up in recovery, you’ll need to remount the root / partition read/write. More info here.
resize2fs
/dev/sda1
Helpful Links
https://access.redhat.com/articles/1190213
https://access.redhat.com/articles/1196353
Commands taken from here
https://www.digitalocean.com/community/tutorials/how-to-upgrade-to-ubuntu-16-04-lts
Install the update manager
sudo apt-get install update-manager-core
Then run the upgrade
sudo do-release-upgrade
Accept all the prompts and should be good to go.
Apparently if you do
apt purge ubuntu*
You’ll end up deleting apt. Which is a bummer, because you can’t install anything else, or fix the problem. But not to worry, the resolution is fairly easy.
You can go download the apt deb from Ubuntu’s website and install it with dpkg.
Go to the following link and find the packages for your Ubuntu version
You’ll need to show “All packages” at the bottom of the page.
https://packages.ubuntu.com/xenial/allpackages
Download and install ubuntu-keyring, apt-transport-https, and apt packages. Example below
wget security.ubuntu.com/ubuntu/pool/main/a/apt/apt_1.6.6ubuntu0.1_amd64.deb wget security.ubuntu.com/ubuntu/pool/main/a/apt/apt-transport-https_1.2.29ubuntu0.1_amd64.deb wget mirrors.kernel.org/ubuntu/pool/main/u/ubuntu-keyring/ubuntu-keyring_2012.05.19_all.deb
Install Packages
sudo dpkg -i ubuntu-keyring_2012.05.19_all.deb
sudo dpkg -i apt-transport-https_1.2.29ubuntu0.1_amd64.deb
sudo dpkg -i apt_1.6.6ubuntu0.1_amd64.deb
Run apt and make sure it is all working
sudo apt update && sudo apt upgrade