1991 lines
110 KiB
HTML
1991 lines
110 KiB
HTML
<!--
|
||
title: Transfer Linux Lamp
|
||
description:
|
||
published: 1
|
||
date: 2024-02-02T20:07:41.428Z
|
||
tags:
|
||
editor: code
|
||
dateCreated: 2024-02-01T23:17:04.906Z
|
||
-->
|
||
|
||
<!DOCTYPE html>
|
||
<html>
|
||
<head>
|
||
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
|
||
<title></title>
|
||
<meta name="generator" content="LibreOffice 7.3.7.2 (Linux)"/>
|
||
<meta name="created" content="2020-12-11T19:06:01.168136779"/>
|
||
<meta name="changed" content="2024-02-02T21:04:57.696204319"/>
|
||
<style type="text/css">
|
||
@page { size: 8.5in 11in; margin: 0.79in }
|
||
p { line-height: 115%; margin-bottom: 0.1in; background: transparent }
|
||
h2 { margin-top: 0.14in; margin-bottom: 0.08in; background: transparent; page-break-after: avoid }
|
||
h2.western { font-family: "Liberation Serif", serif; font-size: 18pt; font-weight: bold }
|
||
h2.cjk { font-family: "Noto Serif CJK SC"; font-size: 18pt; font-weight: bold }
|
||
h2.ctl { font-family: "Lohit Devanagari"; font-size: 18pt; font-weight: bold }
|
||
h1 { margin-bottom: 0.08in; background: transparent; page-break-after: avoid }
|
||
h1.western { font-family: "Liberation Sans", sans-serif; font-size: 18pt; font-weight: bold }
|
||
h1.cjk { font-family: "Noto Sans CJK SC"; font-size: 18pt; font-weight: bold }
|
||
h1.ctl { font-family: "Lohit Devanagari"; font-size: 18pt; font-weight: bold }
|
||
a:link { color: #000080; so-language: zxx; text-decoration: underline }
|
||
code.western { font-family: "Liberation Mono", monospace }
|
||
code.cjk { font-family: "Noto Sans Mono CJK SC", monospace }
|
||
code.ctl { font-family: "Liberation Mono", monospace }
|
||
a:visited { color: #800000; so-language: zxx; text-decoration: underline }
|
||
</style>
|
||
</head>
|
||
<body lang="en-US" link="#000080" vlink="#800000" dir="ltr">
|
||
<div title="header"><p style="line-height: 100%; margin-bottom: 0.2in">
|
||
<br/>
|
||
|
||
</p>
|
||
</div><p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">enabling
|
||
SSH</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><a href="https://randomnerdtutorials.com/installing-raspbian-lite-enabling-and-connecting-with-ssh/"><font face="Liberation Serif, serif">https://randomnerdtutorials.com/installing-raspbian-lite-enabling-and-connecting-with-ssh/</font></a></code></p>
|
||
<ul>
|
||
<li><p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">add
|
||
file “ssh” into boot folder</font></code></p>
|
||
</ul>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Establishing
|
||
an SSH Communication</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo ssh <a href="mailto:pi@192.168.178.25">pi@192.168.178.25</a></font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">user:
|
||
pi, pass: pi</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Shutting
|
||
Down</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo poweroff</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><a href="https://randomnerdtutorials.com/raspberry-pi-apache-mysql-php-lamp-server/"><font face="Liberation Serif, serif">https://randomnerdtutorials.com/raspberry-pi-apache-mysql-php-lamp-server/</font></a></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><a href="https://www.instructables.com/Installing-LAMP-Linux-Apache-MySQL-PHP-on-a-Raspbe/"><font face="Liberation Serif, serif">https://www.instructables.com/Installing-LAMP-Linux-Apache-MySQL-PHP-on-a-Raspbe/</font></a></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Updating
|
||
and Upgrading</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo apt update && sudo apt upgrade -y</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Install
|
||
Apache2</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo apt install apache2 -y</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Testing
|
||
Apache installation</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
cd /var/www/html</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
ls -al</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">This
|
||
should show “index.html”</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">get
|
||
RasPi IP address</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
hostname -I</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">enter
|
||
IP address into Browser → the Apache Debian page should appear</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Install
|
||
PHP</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
cd /var/www/html</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo apt install php -y</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo rm index.html</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo nano index.php</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Add
|
||
following script into the php file:</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif"><?php
|
||
echo "hello world"; ?></font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Save
|
||
with Ctrl+X >> y >> Enter, </font></code><code class="western"><font face="Liberation Serif, serif">or
|
||
Ctrl+O >> Enter >> Ctrl+X</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">OR</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif"><?php
|
||
phpinfo(); ?></font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">OR</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
echo "<?php phpinfo ();?>" >
|
||
/var/www/html/index.php</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Restart
|
||
Apache</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo service apache2 restart</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">test
|
||
if Apache2 is serving .php files by opening RasPi IP address in
|
||
browser </font></code>
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">if
|
||
all is fine, index.php can be removed</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo rm index.php</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Install
|
||
MySQL (MariaDB Server)</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo apt install mariadb-server php-mysql -y</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo service apache2 restart</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo mysql_secure_installation</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">In
|
||
all cases, answer with y</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">create
|
||
new user “</font></code><code class="western"><font face="Liberation Serif, serif">admin”
|
||
with password “</font></code><code class="western"><font face="Liberation Serif, serif">your_password”</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo mysql --user=root --password</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">>
|
||
create user admin@localhost identified by 'your_password';</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">>
|
||
grant all privileges on *.* to admin@localhost;</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">>
|
||
FLUSH PRIVILEGES;</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">>
|
||
exit;</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Important
|
||
to generate user that is not limited to a certain domain!!</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">>
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">grant
|
||
all privileges on *.* to 'admin3'@'%';</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Install
|
||
phpMyAdmin</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
cd /var/www/html</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo apt install phpmyadmin -y</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Options:</font></code></p>
|
||
<ul>
|
||
<li><p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">dbconfig-common</font></code></p>
|
||
<li><p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Apache2</font></code></p>
|
||
<li><p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Configuring
|
||
phpmyadmin? OK</font></code></p>
|
||
<li><p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Configure
|
||
database for phpmyadmin with dbconfig-common? Yes</font></code></p>
|
||
<li><p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Password:
|
||
pi</font></code></p>
|
||
</ul>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo phpenmod mysqli</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo service apache2 restart</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">open
|
||
following address</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><a name="__DdeLink__164_1253080105"></a>
|
||
<code class="western"><font face="Liberation Serif, serif">http://192.168.</font></code><code class="western"><font face="Liberation Serif, serif">178.25</font></code><code class="western"><font face="Liberation Serif, serif">/phpmyadmin</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">if
|
||
“Not Found”</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
cd /var/www/html</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
ls</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">>>
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">phpmyadmin</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">again,
|
||
open following address</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><a href="http://192.168.178.25/phpmyadmin"><font face="Liberation Serif, serif">http://192.168.178.25/phpmyadmin</font></a></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">login
|
||
with username=root, password=pi</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">change
|
||
the permissions for your /var/www/html/ folder.</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
cd ~</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
ls -lh /var/www/</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo chown -R pi:www-data /var/www/html/</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo chmod -R 770 /var/www/html/</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
ls -lh /var/www/</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><a href="https://randomnerdtutorials.com/esp32-esp8266-raspberry-pi-lamp-server/"><font face="Liberation Serif, serif">https://randomnerdtutorials.com/esp32-esp8266-raspberry-pi-lamp-server/</font></a></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Create
|
||
database:</font></code></p>
|
||
<ul>
|
||
<li><p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">esp_data</font></code></p>
|
||
<li><p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">utf8mb4_general_ci</font></code></p>
|
||
</ul>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Create
|
||
table by calling SQL query:</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">CREATE
|
||
TABLE SensorData (</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western">
|
||
</code><code class="western"><font face="Liberation Serif, serif">id
|
||
INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western">
|
||
</code><code class="western"><font face="Liberation Serif, serif">sensor
|
||
VARCHAR(30) NOT NULL,</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western">
|
||
</code><code class="western"><font face="Liberation Serif, serif">location
|
||
VARCHAR(30) NOT NULL,</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western">
|
||
</code><code class="western"><font face="Liberation Serif, serif">value1
|
||
VARCHAR(10),</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western">
|
||
</code><code class="western"><font face="Liberation Serif, serif">value2
|
||
VARCHAR(10),</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western">
|
||
</code><code class="western"><font face="Liberation Serif, serif">value3
|
||
VARCHAR(10),</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western">
|
||
</code><code class="western"><font face="Liberation Serif, serif">reading_time
|
||
TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">)</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">PHP
|
||
script that is responsible for receiving incoming requests from the
|
||
ESP32 or ESP8266 and inserting the data into a MySQL database.</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
cd ~</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">nano
|
||
/var/www/html/post-esp-data.php</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><a href="https://github.com/ChuckBell/MySQL_Connector_Arduino/wiki/Troubleshooting"><font face="Liberation Serif, serif">https://github.com/ChuckBell/MySQL_Connector_Arduino/wiki/Troubleshooting</font></a></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">tr
|
||
to connect to msql from another computer:</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">mysql
|
||
-u</font></code><code class="western"><font face="Liberation Serif, serif">admin</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
-p</font></code><code class="western"><font face="Liberation Serif, serif">pi</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
–h192.168.178.25 –port=3306</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">mysql
|
||
--u</font></code><code class="western"><font face="Liberation Serif, serif">ser=</font></code><code class="western"><font face="Liberation Serif, serif">admin</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
--p</font></code><code class="western"><font face="Liberation Serif, serif">assword=</font></code><code class="western"><font face="Liberation Serif, serif">pi</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
--h</font></code><code class="western"><font face="Liberation Serif, serif">ost=</font></code><code class="western"><font face="Liberation Serif, serif">192.168.178.25
|
||
--port=3306</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">mysql
|
||
--u</font></code><code class="western"><font face="Liberation Serif, serif">ser=</font></code><code class="western"><font face="Liberation Serif, serif">admin</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
--p</font></code><code class="western"><font face="Liberation Serif, serif">assword=</font></code><code class="western"><font face="Liberation Serif, serif">pi</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
--h</font></code><code class="western"><font face="Liberation Serif, serif">ost=
|
||
127.0.0.1</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
--port=3306</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">mysql
|
||
-u </font></code><code class="western"><font face="Liberation Serif, serif">admin</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
-p </font></code><code class="western"><font face="Liberation Serif, serif">pi</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
-h 127.0.0.1 test_arduino</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Important
|
||
in case of “ERROR 2003 (HY000): Can't connect to local MySQL server
|
||
through socket”</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf </font></code>
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">Here,
|
||
the binding address = 127.0.0.1 must be commented out!!!</font></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><a href="https://pawelrychlicki.pl/Article/Details/65/fixing-sqlstatehy000-2002-in-the-nextcloudowncloud-with-the-mysqlmariadb-and-the-tlsssl-ubuntu-linux-1804-server"><font face="Liberation Serif, serif">https://pawelrychlicki.pl/Article/Details/65/fixing-sqlstatehy000-2002-in-the-nextcloudowncloud-with-the-mysqlmariadb-and-the-tlsssl-ubuntu-linux-1804-server</font></a></code></p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<h1 class="western">1<code class="western"><font face="Liberation Serif, serif">Configuring
|
||
WiFi in headless mode</font></code></h1>
|
||
<p><code class="western"><a href="https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md"><font face="Liberation Serif, serif">https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md</font></a></code></p>
|
||
<p><code class="western"><a href="https://www.seeedstudio.com/blog/2021/01/25/three-methods-to-configure-raspberry-pi-wifi/"><font face="Liberation Serif, serif">https://www.seeedstudio.com/blog/2021/01/25/three-methods-to-configure-raspberry-pi-wifi/</font></a></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h2 class="western">1.1<code class="western"><font face="Liberation Serif, serif">ssh</font></code></h2>
|
||
<p><code class="western"><font face="Liberation Serif, serif">To
|
||
enable SSH on a headless Raspberry Pi, simply place a file named
|
||
“ssh”, without any extension, onto the boot partition of the SD
|
||
card from another computer. This will tell Raspberry Pi to enable SSH
|
||
when booting. The content of the file does not matter.</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h2 class="western">1.2<code class="western"><font face="Liberation Serif, serif">wpa_supplicant.conf
|
||
</font></code>
|
||
</h2>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ </font></code><code class="western"><font face="Liberation Serif, serif">sudo
|
||
nano /etc/wpa_supplicant/wpa_supplicant.conf</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">ctrl_interface=DIR=/var/run/wpa_supplicant
|
||
GROUP=netdev</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">update_config=1</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">country=</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00"><Country
|
||
Code></span></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">network={</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">ssid="</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00"><SSID></span></font></code><code class="western"><font face="Liberation Serif, serif">"</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">psk="</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00"><PASSWORD></span></font></code><code class="western"><font face="Liberation Serif, serif">"</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">scan_ssid=1</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">}</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h1 class="western">2<code class="western"><font face="Liberation Serif, serif">Arduino
|
||
script for writing to MariaDB/MySQL database</font></code></h1>
|
||
<p><code class="western"><font face="Liberation Serif, serif">Check
|
||
sketch “Complex_Insert_WiFi_BE”</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h1 class="western">3<code class="western"><font face="Liberation Serif, serif">Showing
|
||
DB content as html page</font></code></h1>
|
||
<p><code class="western"><a href="https://randomnerdtutorials.com/esp32-esp8266-raspberry-pi-lamp-server/"><font face="Liberation Serif, serif">https://randomnerdtutorials.com/esp32-esp8266-raspberry-pi-lamp-server/</font></a></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ nano
|
||
/var/www/html/esp-data.php</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">open
|
||
page http://192.168.178.25/esp-data.php</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h2 class="western">3.1<code class="western"><font face="Liberation Serif, serif">esp-data.php</font></code></h2>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><!DOCTYPE
|
||
html></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><html><body></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><?php</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">/*</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">Rui
|
||
Santos</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">Complete
|
||
project details at
|
||
https://RandomNerdTutorials.com/esp32-esp8266-mysql-database-php/</font></code></p>
|
||
<p><code class="western"> </code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">Permission
|
||
is hereby granted, free of charge, to any person obtaining a copy</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">of
|
||
this software and associated documentation files.</font></code></p>
|
||
<p><code class="western"> </code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">The
|
||
above copyright notice and this permission notice shall be included
|
||
in all</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">copies
|
||
or substantial portions of the Software.</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">*/</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$servername
|
||
= "</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">192.168.178.25</span></font></code><code class="western"><font face="Liberation Serif, serif">";</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">//
|
||
REPLACE with your Database name</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$dbname
|
||
= "</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">test_arduino</span></font></code><code class="western"><font face="Liberation Serif, serif">";</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">//
|
||
REPLACE with Database user</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><span style="background: transparent">$username
|
||
= "</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">admin3</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: transparent">";</span></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><span style="background: transparent">//
|
||
REPLACE with Database user password</span></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><span style="background: transparent">$password
|
||
= "</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">pi</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: transparent">";</span></font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">//
|
||
Create connection</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$conn =
|
||
new mysqli($servername, $username, $password, $dbname);</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">//
|
||
Check connection</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">if
|
||
($conn->connect_error) {</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">die("Connection
|
||
failed: " . $conn->connect_error);</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">} </font></code>
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$sql =
|
||
"SELECT </font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">num</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">,
|
||
</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">message,
|
||
</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">sensor_</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">num</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">,
|
||
</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">value</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">,
|
||
</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">recorded</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
FROM </font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">hello_sensor</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
ORDER BY </font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">num</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
DESC";</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">echo
|
||
'<table cellspacing="5" cellpadding="5"></font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><tr>
|
||
</font></code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><td></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">num</span></font></code><code class="western"><font face="Liberation Serif, serif"></td>
|
||
</font></code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><td></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">message</span></font></code><code class="western"><font face="Liberation Serif, serif"></td>
|
||
</font></code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><td></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">sensor</span></font></code><code class="western"><font face="Liberation Serif, serif">_num</font></code><code class="western"><font face="Liberation Serif, serif"></td>
|
||
</font></code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><td></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">v</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">alue</span></font></code><code class="western"><font face="Liberation Serif, serif"></td>
|
||
</font></code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><td></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">recorded</span></font></code><code class="western"><font face="Liberation Serif, serif"></td>
|
||
</font></code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"></tr>';</font></code></p>
|
||
<p><code class="western"> </code>
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">if
|
||
($result = $conn->query($sql)) {</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">while
|
||
($row = $result->fetch_assoc()) {</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">$row_</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">num</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
= $row["</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">num</span></font></code><code class="western"><font face="Liberation Serif, serif">"];</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">$row_</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">message</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
= $row["</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">message</span></font></code><code class="western"><font face="Liberation Serif, serif">"];</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">$row_</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">sensor_num</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
= $row["</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">sensor_num</span></font></code><code class="western"><font face="Liberation Serif, serif">"];</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">$row_</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">value</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
= $row["</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">value</span></font></code><code class="western"><font face="Liberation Serif, serif">"];</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">$row_</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">re</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">corded</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
= $row["</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">recorded</span></font></code><code class="western"><font face="Liberation Serif, serif">"];</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">//
|
||
Uncomment to set timezone to - 1 hour (you can change 1 to any
|
||
number)</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">//$row_reading_time
|
||
= date("Y-m-d H:i:s", strtotime("$row_reading_time - 1
|
||
hours"));</font></code></p>
|
||
<p><code class="western"> </code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">//
|
||
Uncomment to set timezone to + 4 hours (you can change 4 to any
|
||
number)</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">//$row_reading_time
|
||
= date("Y-m-d H:i:s", strtotime("$row_reading_time + 4
|
||
hours"));</font></code></p>
|
||
<p><code class="western"> </code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">echo
|
||
'<tr> </font></code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><td>'
|
||
. $row_</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">num</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
. '</td> </font></code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><td>'
|
||
. $row_</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">message</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
. '</td> </font></code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><td>'
|
||
. $row_</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">sensor_</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">num</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
. '</td> </font></code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><td>'
|
||
. $row_</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">value</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
. '</td> </font></code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><td>'
|
||
. $row_</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">r</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">ecorded</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
. '</td> </font></code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"></tr>';</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">}</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">$result->free();</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">}</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$conn->close();</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">?> </font></code>
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"></table></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"></body></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"></html></font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h1 class="western">4<code class="western"><font face="Liberation Serif, serif">Plotting
|
||
of data from </font></code><code class="western"><font face="Liberation Serif, serif">MariaDB/MySQL
|
||
database</font></code></h1>
|
||
<p><code class="western"><a href="https://randomnerdtutorials.com/visualize-esp32-esp8266-sensor-readings-from-anywhere/"><font face="Liberation Serif, serif">https://randomnerdtutorials.com/visualize-esp32-esp8266-sensor-readings-from-anywhere/</font></a></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ </font></code><code class="western"><font face="Liberation Serif, serif">sudo
|
||
nano /var/www/html/esp-</font></code><code class="western"><font face="Liberation Serif, serif">chart</font></code><code class="western"><font face="Liberation Serif, serif">.php</font></code></p>
|
||
<h2 class="western">4.1<code class="western"><font face="Liberation Serif, serif">esp-chart.php</font></code></h2>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><!--</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">Rui
|
||
Santos</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">Complete
|
||
project details at https://RandomNerdTutorials.com</font></code></p>
|
||
<p><code class="western"> </code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">Permission
|
||
is hereby granted, free of charge, to any person obtaining a copy</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">of
|
||
this software and associated documentation files.</font></code></p>
|
||
<p><code class="western"> </code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">The
|
||
above copyright notice and this permission notice shall be included
|
||
in all</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">copies
|
||
or substantial portions of the Software.</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">--></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><?php</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$servername
|
||
= "</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">192.168.178.25</span></font></code><code class="western"><font face="Liberation Serif, serif">";</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">//
|
||
REPLACE with your Database name</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$dbname
|
||
= "</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">test_arduino</span></font></code><code class="western"><font face="Liberation Serif, serif">";</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">//
|
||
REPLACE with Database user</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><span style="background: transparent">$username
|
||
= "</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">admin3</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: transparent">";</span></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><span style="background: transparent">//
|
||
REPLACE with Database user password</span></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><span style="background: transparent">$password
|
||
= "</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">pi</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: transparent">";</span></font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">//
|
||
Create connection</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$conn =
|
||
new mysqli($servername, $username, $password, $dbname);</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">//
|
||
Check connection</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">if
|
||
($conn->connect_error) {</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">die("Connection
|
||
failed: " . $conn->connect_error);</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">} </font></code>
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$sql =
|
||
"SELECT </font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">num</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">,
|
||
</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">message,
|
||
</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">sensor_</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">num</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">,
|
||
</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">value,
|
||
</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">value_h</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">,
|
||
</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">recorded</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
FROM </font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">hello_sensor
|
||
</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">WHERE
|
||
sensor_num = 0</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
ORDER BY </font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">num</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
DESC limit 40";</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$result
|
||
= $conn->query($sql);</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">while
|
||
($data = $result->fetch_assoc()){</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">$sensor_data[]
|
||
= $data;</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">}</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">recorded</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
= array_column($sensor_data, '</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">recorded</span></font></code><code class="western"><font face="Liberation Serif, serif">');</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">//
|
||
******* Uncomment to convert readings time array to your timezone
|
||
********</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">/*$i =
|
||
0;</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">foreach
|
||
($readings_time as $reading){</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">//
|
||
Uncomment to set timezone to - 1 hour (you can change 1 to any
|
||
number)</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">$readings_time[$i]
|
||
= date("Y-m-d H:i:s", strtotime("$reading - 1
|
||
hours"));</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">//
|
||
Uncomment to set timezone to + 4 hours (you can change 4 to any
|
||
number)</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">//$readings_time[$i]
|
||
= date("Y-m-d H:i:s", strtotime("$reading + 4
|
||
hours"));</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">$i
|
||
+= 1;</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">}*/</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">value</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
= json_encode(array_reverse(array_column($sensor_data, '</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">value</span></font></code><code class="western"><font face="Liberation Serif, serif">')),
|
||
JSON_NUMERIC_CHECK);</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">value_</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">h</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
= json_encode(array_reverse(array_column($sensor_data, '</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">value_</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">h</span></font></code><code class="western"><font face="Liberation Serif, serif">')),
|
||
JSON_NUMERIC_CHECK);</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">recorded</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
= json_encode(array_reverse($</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">recorded</span></font></code><code class="western"><font face="Liberation Serif, serif">),
|
||
JSON_NUMERIC_CHECK);</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">/*echo
|
||
$value1;</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">echo
|
||
$value2;</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">echo
|
||
$value3;</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">echo
|
||
$reading_time;*/</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$result->free();</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$conn->close();</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">?></font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><!DOCTYPE
|
||
html></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><html></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><meta
|
||
name="viewport" content="width=device-width,
|
||
initial-scale=1"></font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><script
|
||
src="https://code.highcharts.com/highcharts.js"></script></font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><style></font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">body
|
||
{</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">min-width:
|
||
310px;</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"> max-width:
|
||
1280px;</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"> height:
|
||
500px;</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">margin:
|
||
0 auto;</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">}</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">h2
|
||
{</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">font-family:
|
||
Arial;</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">font-size:
|
||
2.5rem;</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">text-align:
|
||
center;</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">}</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"></style></font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><body></font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><h2>ESP
|
||
Weather Station</h2></font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><div
|
||
id="chart-temperature" class="container"></div></font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif"><div
|
||
id="chart-humidity" class="container"></div></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><script></font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">var
|
||
</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">value</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
= <?php echo $</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">value</span></font></code><code class="western"><font face="Liberation Serif, serif">;
|
||
?>;</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">var
|
||
</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">value_</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">h</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
= <?php echo $</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">value_</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">h</span></font></code><code class="western"><font face="Liberation Serif, serif">;
|
||
?>;</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">var
|
||
</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">recorded</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
= <?php echo $</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">recorded</span></font></code><code class="western"><font face="Liberation Serif, serif">;
|
||
?>;</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">var
|
||
chartT = new Highcharts.Chart({</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">chart:{
|
||
renderTo : 'chart-temperature' },</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">title:
|
||
{ text: 'BME280 Temperature' },</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">series:
|
||
[{</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">showInLegend:
|
||
false,</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">data:
|
||
</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">value</span></font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">}],</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">plotOptions:
|
||
{</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">line:
|
||
{ animation: false,</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">dataLabels:
|
||
{ enabled: true }</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">},</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">series:
|
||
{ color: '#059e8a' }</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">},</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">xAxis:
|
||
{ </font></code>
|
||
</p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">type:
|
||
'datetime',</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">categories:
|
||
</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">recorded</span></font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">},</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">yAxis:
|
||
{</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">title:
|
||
{ text: 'Temperature (Celsius)' }</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">//title:
|
||
{ text: 'Temperature (Fahrenheit)' }</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">},</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">credits:
|
||
{ enabled: false }</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">});</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">var
|
||
chartH = new Highcharts.Chart({</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">chart:{
|
||
renderTo:'chart-humidity' },</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">title:
|
||
{ text: 'BME280 Humidity' },</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">series:
|
||
[{</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">showInLegend:
|
||
false,</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">data:
|
||
</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">value_</span></font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">h</span></font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">}],</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">plotOptions:
|
||
{</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">line:
|
||
{ animation: false,</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">dataLabels:
|
||
{ enabled: true }</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">}</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">},</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">xAxis:
|
||
{</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">type:
|
||
'datetime',</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">//dateTimeLabelFormats:
|
||
{ second: '%H:%M:%S' },</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">categories:
|
||
</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">recorded</span></font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">},</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">yAxis:
|
||
{</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">title:
|
||
{ text: 'Humidity (%)' }</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">},</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">credits:
|
||
{ enabled: false }</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">});</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"></script></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"></body></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"></html></font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h1 class="western">5<code class="western"><font face="Liberation Serif, serif">Using
|
||
canvas.js</font></code></h1>
|
||
<p><code class="western"><a href="https://canvasjs.com/php-charts/multiseries-chart/"><font face="Liberation Serif, serif">https://canvasjs.com/php-charts/multiseries-chart/</font></a></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h1 class="western">6<code class="western"><font face="Liberation Serif, serif">External
|
||
access to LAMP server</font></code></h1>
|
||
<p><code class="western"><font face="Liberation Serif, serif">port 22
|
||
(ssh), port 80 (http)</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><a href="https://raspberrypi.stackexchange.com/questions/105080/how-to-remote-to-raspberry-pi-from-outside-local-network"><font face="Liberation Serif, serif">https://raspberrypi.stackexchange.com/questions/105080/how-to-remote-to-raspberry-pi-from-outside-local-network</font></a></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><a href="https://howtoraspberrypi.com/enable-mysql-remote-connection-raspberry-pi/"><font face="Liberation Serif, serif">https://howtoraspberrypi.com/enable-mysql-remote-connection-raspberry-pi/</font></a></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">Configure
|
||
MySQL to accept external connections to Raspberry Pi</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ sudo
|
||
nano /etc/mysql/my.cnf</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#bind-address
|
||
= 127.0.0.1 </font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00"><<<<<
|
||
comment the line bind-address</span></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">optionall</font></code><code class="western"><font face="Liberation Serif, serif">y
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">m</font></code><code class="western"><font face="Liberation Serif, serif">odify
|
||
the MySQL port </font></code><code class="western"><font face="Liberation Serif, serif">to
|
||
reduce risk of attacks, e.g.</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">port =
|
||
8457</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">/etc/init.d/mysql
|
||
restart</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h1 class="western">7<code class="western"><font face="Liberation Serif, serif">RasPi
|
||
as Samba server</font></code></h1>
|
||
<p><code class="western"><a href="https://aallan.medium.com/adding-an-external-disk-to-a-raspberry-pi-and-sharing-it-over-the-network-5b321efce86a"><font face="Liberation Serif, serif">https://aallan.medium.com/adding-an-external-disk-to-a-raspberry-pi-and-sharing-it-over-the-network-5b321efce86a</font></a></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">SMB is
|
||
the best protocol for use on multiple platforms due to superior
|
||
interoperability</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">in case
|
||
of issue “chown: changing ownership of '...': Operation not
|
||
permitted”:</font></code></p>
|
||
<p><code class="western"><a href="https://stackoverflow.com/questions/25559700/chown-command-returning-operation-not-permitted"><font face="Liberation Serif, serif">https://stackoverflow.com/questions/25559700/chown-command-returning-operation-not-permitted</font></a></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">get
|
||
uid:</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ cat
|
||
/etc/passwd |grep pi</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">get
|
||
gid:</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ </font></code><code class="western"><font face="Liberation Serif, serif">cat
|
||
/etc/group |grep pi</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">Give
|
||
pi:pi access to the entire /</font></code><code class="western"><font face="Liberation Serif, serif">mnt/usb</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
mount:</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ sudo
|
||
mount -o remount,gid=</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00"><pi's
|
||
gid></span></font></code><code class="western"><font face="Liberation Serif, serif">,uid=</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00"><pi's
|
||
uid></span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
/mnt/usb</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">Attention:
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">FAT
|
||
file system doesn't support such permissions, so they can't be
|
||
applied after the drive is mounted</font></code></p>
|
||
<p><code class="western"><a href="https://raspberrypi.stackexchange.com/questions/40408/how-to-change-permissions-on-external-hard-drive-connected-to-raspberry"><font face="Liberation Serif, serif">https://raspberrypi.stackexchange.com/questions/40408/how-to-change-permissions-on-external-hard-drive-connected-to-raspberry</font></a></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">Instead,
|
||
drive should be formatted with pi user </font></code><code class="western"><font face="Liberation Serif, serif">and/or
|
||
ntfs file sstem</font></code><code class="western"><font face="Liberation Serif, serif">?</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">Mounting
|
||
USB drive </font></code><code class="western"><font face="Liberation Serif, serif">that
|
||
is</font></code><code class="western"><font face="Liberation Serif, serif"><b>
|
||
</b></font></code><code class="western"><font face="Liberation Serif, serif"><b>NTFS</b></font></code><code class="western"><font face="Liberation Serif, serif"><b>???-</b></font></code><code class="western"><font face="Liberation Serif, serif">formatted</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
under specific name:</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ </font></code><code class="western"><font face="Liberation Serif, serif">sudo
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">fdisk
|
||
-l</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ sudo
|
||
umount </font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">/dev/sda1</span></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ sudo
|
||
mkdir /mnt/usb</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ sudo
|
||
chown -R pi:pi /mnt/usb</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">seems
|
||
like this command has to be used each time the usb drive is
|
||
connected: </font></code><code class="western"><font face="Liberation Serif, serif">$
|
||
</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: transparent">sudo
|
||
mount /dev/sda1 /mnt/usb -o uid=pi,gid=pi</span></font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">append
|
||
following text to this file for automatic mounting under the
|
||
specified path:</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ sudo
|
||
nano </font></code><code class="western"><font face="Liberation Serif, serif">/etc/fstab</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">/dev/sda1
|
||
/mnt/usb auto defaults,user 0 1</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">OR:</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">/dev/sda1 /mnt/usb </font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">ntfs-3g</span></font></code><code class="western"><font face="Liberation Serif, serif">
|
||
defaults,user,uid=</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">1000</span></font></code><code class="western"><font face="Liberation Serif, serif">,gid=</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">1000</span></font></code><code class="western"><font face="Liberation Serif, serif">,noatime 0 0</font></code></p>
|
||
<p><code class="western"><a href="https://raspberrypi.stackexchange.com/questions/40408/how-to-change-permissions-on-external-hard-drive-connected-to-raspberry"><font face="Liberation Serif, serif">https://raspberrypi.stackexchange.com/questions/40408/how-to-change-permissions-on-external-hard-drive-connected-to-raspberry</font></a></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">Make
|
||
the drive accessible from the network </font></code><code class="western"><font face="Liberation Serif, serif">by
|
||
adding following text</font></code><code class="western"><font face="Liberation Serif, serif">:</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ sudo
|
||
apt-get install samba samba-common-bin</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ sudo
|
||
nano /etc/samba/smb.conf</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">[share]</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">Comment</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">
|
||
= Shared Folder</span></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">Path
|
||
= /mnt/usb</span></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">Browseable
|
||
= yes</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">Writeable
|
||
= Yes</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">only
|
||
guest = no</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">create
|
||
mask = 0777</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">directory
|
||
mask = 0777</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">Public
|
||
= yes</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">Guest
|
||
ok = yes</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ chmod
|
||
1777 </font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">/mnt/usb
|
||
</span></font></code><code class="western"><font face="Liberation Serif, serif"><b><span style="background: #ffff00"><<<<
|
||
the uSB should be mounted under this name</span></b></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ sudo
|
||
/etc/init.d/samba restart</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">sudo
|
||
service smbd restart</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">sudo
|
||
service smbd status</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><a href="https://www.raspberrypi.org/forums/viewtopic.php?t=56149"><font face="Liberation Serif, serif">https://www.raspberrypi.org/forums/viewtopic.php?t=56149</font></a></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ </font></code><code class="western"><font face="Liberation Serif, serif">sudo
|
||
df</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ </font></code><code class="western"><font face="Liberation Serif, serif">cd
|
||
/media</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ </font></code><code class="western"><font face="Liberation Serif, serif">sudo
|
||
mkdir HDD</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ </font></code><code class="western"><font face="Liberation Serif, serif">sudo
|
||
nano /etc/fstab</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">/dev/sda1
|
||
/media/HDD ntfs-3g defaults,noatime 0 0</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ cp
|
||
/etc/samba/smb.conf /etc/samba/smb.conf.bak //Make a backup of the
|
||
config file</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ </font></code><code class="western"><font face="Liberation Serif, serif">nano
|
||
/etc/samba/smb.conf</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">[media]
|
||
</font></code>
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">comment
|
||
= Media share</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">path =
|
||
/media/HDD</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">valid
|
||
users = @users</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">force
|
||
group = users</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">create
|
||
mask = 0660</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">directory
|
||
mask = 0771</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">read
|
||
only = no</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">sudo
|
||
service samba restart</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">sudo
|
||
useradd ChooseUsernameHere -m -G users</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">sudo
|
||
passwd TheChosenUsername //after this choose a password for the new
|
||
user</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">sudo
|
||
smbpasswd -a TheChosenUsername //after this enter passwd again</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">>>>>>>>>>>>
|
||
</font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">userA pi</span></font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">mount
|
||
in Win10/Linux/etc. </font></code><code class="western"><font face="Liberation Serif, serif">a</font></code><code class="western"><font face="Liberation Serif, serif">s
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">smb://192.</font></code><code class="western"><font face="Liberation Serif, serif">1</font></code><code class="western"><font face="Liberation Serif, serif">68.178.25/</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><a href="https://raspberrytips.com/format-mount-usb-drive/"><font face="Liberation Serif, serif">https://raspberrytips.com/format-mount-usb-drive/</font></a></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">Formatting
|
||
USB stick with RasPi:</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ </font></code><code class="western"><font face="Liberation Serif, serif">sudo
|
||
fdisk -l</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ </font></code><code class="western"><font face="Liberation Serif, serif">sudo
|
||
fdisk /dev/sda</font></code><code class="western"><font face="Liberation Serif, serif">1</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">Create
|
||
a new partition table : g (for GPT, use help for other format)</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">Create
|
||
a new partition : n</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">You
|
||
can keep the default values for a single partition</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">Confirm
|
||
with Y to remove the signature</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">And
|
||
finally write and exit fdisk: w</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ </font></code><code class="western"><font face="Liberation Serif, serif">sudo
|
||
mkfs.ext4 /dev/sda1<br/>
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">OR:
|
||
$ </font></code><code class="western"><font face="Liberation Serif, serif">sudo
|
||
mkfs.vfat /dev/sda1<br/>
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">OR:
|
||
$ </font></code><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">sudo
|
||
mkfs.ntfs /dev/sda1</span></font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><a href="https://thepihut.com/blogs/raspberry-pi-tutorials/17699796-formatting-and-mounting-a-usb-drive-from-a-terminal-window"><font face="Liberation Serif, serif">https://thepihut.com/blogs/raspberry-pi-tutorials/17699796-formatting-and-mounting-a-usb-drive-from-a-terminal-window</font></a></code></p>
|
||
<p><code class="western"><font color="#444444"><font face="Liberation Serif, serif"><span style="background: #ffffff">$
|
||
</span></font></font></code><code class="western"><font color="#444444"><font face="Liberation Serif, serif"><span style="background: #ffffff">sudo
|
||
mkfs -t vfat -I /dev/sd</span></font></font></code><code class="western"><font color="#444444"><font face="Liberation Serif, serif"><span style="background: #ffffff">a</span></font></font></code><code class="western"><font color="#444444"><font face="Liberation Serif, serif"><span style="background: #ffffff">1</span></font></font></code></p>
|
||
<p><code class="western"><font color="#444444"><font face="Liberation Serif, serif"><span style="background: #ffffff">$
|
||
</span></font></font></code><code class="western"><font color="#444444"><font face="Liberation Serif, serif"><span style="background: #ffffff">sudo
|
||
mount /dev/sd</span></font></font></code><code class="western"><font color="#444444"><font face="Liberation Serif, serif"><span style="background: #ffffff">a</span></font></font></code><code class="western"><font color="#444444"><font face="Liberation Serif, serif"><span style="background: #ffffff">1
|
||
/</span></font></font></code><code class="western"><font color="#444444"><font face="Liberation Serif, serif"><span style="background: #ffffff">mnt/u</span></font></font></code><code class="western"><font color="#444444"><font face="Liberation Serif, serif"><span style="font-style: normal"><span style="background: #ffffff">sb</span></span></font></font></code><code class="western"><font color="#444444"><font face="Liberation Serif, serif"><span style="background: #ffffff">
|
||
-o umask=000</span></font></font></code></p>
|
||
<p><code class="western"><font color="#444444"><font face="Liberation Serif, serif"><span style="background: #ffffff">$
|
||
sudo umount /mnt/usb</span></font></font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h1 class="western">8<code class="western"><font face="Liberation Serif, serif">Filtering
|
||
rows with SQL</font></code></h1>
|
||
<p><code class="western"><a href="https://chartio.com/blog/simple-sql-filtering-rows/"><font face="Liberation Serif, serif">https://chartio.com/blog/simple-sql-filtering-rows/</font></a></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">SELECT
|
||
column_name1, column_name2</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">FROM
|
||
table_name</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">WHERE
|
||
column_name1 operator value;</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">SELECT
|
||
*</span></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">FROM
|
||
hello_sensor</span></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">WHERE
|
||
sensor_num = 0 </span></font></code>
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><span style="background: #ffff00">ORDER
|
||
BY `hello_sensor`.`recorded` DESC</span></font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h1 class="western">9<code class="western"><font face="Liberation Serif, serif">P</font></code><code class="western"><font face="Liberation Serif, serif">ython
|
||
MySQL</font></code></h1>
|
||
<h2 class="western">9.1<code class="western"><font face="Liberation Serif, serif">Python
|
||
MySQL Querying Data</font></code></h2>
|
||
<p><code class="western"><a href="https://stackoverflow.com/questions/44634810/fastest-way-to-fetch-table-from-mysql-into-pandas"><font face="Liberation Serif, serif">https://stackoverflow.com/questions/44634810/fastest-way-to-fetch-table-from-mysql-into-pandas</font></a></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">MyEngine=create_engine('[YourDatabase]://[User]:[Pass]@[Host]/[DatabaseName]',
|
||
echo = True)</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><b>Downloading:</b></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">df =
|
||
pd.read_sql_query('select * from [TableName]', con= MyEngine)</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif"><b>Uploading:</b></font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">df.to_sql([TableName],
|
||
MyEngine, if_exists = 'append', index=False)</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h2 class="western">9.2<code class="western"><font face="Liberation Serif, serif">Using
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">mysql
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">module</font></code></h2>
|
||
<p><code class="western"><a href="https://www.mysqltutorial.org/python-mysql-query/"><font face="Liberation Serif, serif">https://www.mysqltutorial.org/python-mysql-query/</font></a></code></p>
|
||
<p><code class="western"><a href="https://www.codespeedy.com/fetch-data-from-mysql-table-in-python-program/"><font face="Liberation Serif, serif">https://www.codespeedy.com/fetch-data-from-mysql-table-in-python-program/</font></a></code></p>
|
||
<p><code class="western"><a href="https://www.krazyprogrammer.com/2020/11/fetch-and-display-data-from-mysql-using.html"><font face="Liberation Serif, serif">https://www.krazyprogrammer.com/2020/11/fetch-and-display-data-from-mysql-using.html</font></a></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">pip
|
||
install mysql-connector</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><a href="https://www.tutorialspoint.com/python_mysql/python_mysql_select_data.htm"><font face="Liberation Serif, serif">https://www.tutorialspoint.com/python_mysql/python_mysql_select_data.htm</font></a></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">import
|
||
mysql.connector</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#establishing
|
||
the connection</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">conn =
|
||
mysql.connector.connect(</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">user='</font></code><code class="western"><font face="Liberation Serif, serif">admin3</font></code><code class="western"><font face="Liberation Serif, serif">',
|
||
password='</font></code><code class="western"><font face="Liberation Serif, serif">pi</font></code><code class="western"><font face="Liberation Serif, serif">',
|
||
host='192.168.178.25', database='</font></code><code class="western"><font face="Liberation Serif, serif">test_arduino</font></code><code class="western"><font face="Liberation Serif, serif">'</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">)</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#Creating
|
||
a cursor object using the cursor() method</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">cursor
|
||
= conn.cursor()</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#Retrieving
|
||
single row</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">quer</font></code><code class="western"><font face="Liberation Serif, serif">y</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
= '''SELECT * from </font></code><code class="western"><font face="Liberation Serif, serif">hello_sensor</font></code><code class="western"><font face="Liberation Serif, serif">'''</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#Executing
|
||
the query</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">cursor.execute(</font></code><code class="western"><font face="Liberation Serif, serif">quer</font></code><code class="western"><font face="Liberation Serif, serif">y</font></code><code class="western"><font face="Liberation Serif, serif">)</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#Fetching
|
||
1st row from the table</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">result
|
||
= cursor.fetchone();</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">print(result)</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#Fetching
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">first
|
||
two</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
row</font></code><code class="western"><font face="Liberation Serif, serif">s</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
from the table</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">result
|
||
= cursor.fetchmany(size=2);</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">print(result)</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#Fetching
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">all</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
row</font></code><code class="western"><font face="Liberation Serif, serif">s</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
from the table</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">result
|
||
= cursor.fetchall();</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">print(result)</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#Closing
|
||
the connection</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">conn.close()</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h2 class="western">9.3<code class="western"><font face="Liberation Serif, serif">Create
|
||
table</font></code></h2>
|
||
<p><code class="western"><a href="https://www.tutorialspoint.com/python_mysql/python_mysql_create_table.htm"><font face="Liberation Serif, serif">https://www.tutorialspoint.com/python_mysql/python_mysql_create_table.htm</font></a></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">import
|
||
mysql.connector</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#establishing
|
||
the connection</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">conn =
|
||
mysql.connector.connect(</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">user='root',
|
||
password='password', host='127.0.0.1', database='mydb'</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">)</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#Creating
|
||
a cursor object using the cursor() method</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">cursor
|
||
= conn.cursor()</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#Dropping
|
||
EMPLOYEE table if already exists.</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">cursor.execute("DROP
|
||
TABLE IF EXISTS EMPLOYEE")</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#Creating
|
||
table as per requirement</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">sql
|
||
='''CREATE TABLE EMPLOYEE(</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">FIRST_NAME
|
||
CHAR(20) NOT NULL,</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">LAST_NAME
|
||
CHAR(20),</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">AGE
|
||
INT,</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">SEX
|
||
CHAR(1),</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">INCOME
|
||
FLOAT</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">)'''</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">cursor.execute(sql)</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#Closing
|
||
the connection</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">conn.close()</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h2 class="western">9.4<code class="western"><font face="Liberation Serif, serif">Insert
|
||
data</font></code></h2>
|
||
<p><code class="western"><a href="https://www.tutorialspoint.com/python_mysql/python_mysql_insert_data.htm"><font face="Liberation Serif, serif">https://www.tutorialspoint.com/python_mysql/python_mysql_insert_data.htm</font></a></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">import
|
||
mysql.connector</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#establishing
|
||
the connection</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">conn =
|
||
mysql.connector.connect(</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">user='root',
|
||
password='password', host='127.0.0.1', database='mydb'</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">)</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#Creating
|
||
a cursor object using the cursor() method</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">cursor
|
||
= conn.cursor()</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#
|
||
Preparing SQL query to INSERT a record into the database.</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">insert_stmt
|
||
= (</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">"INSERT
|
||
INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME)"</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">"VALUES
|
||
(%s, %s, %s, %s, %s)"</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">)</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">data =
|
||
('Ramya', 'Ramapriya', 25, 'F', 5000)</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">try:</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">#
|
||
Executing the SQL command</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">cursor.execute(insert_stmt,
|
||
data)</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">#
|
||
Commit your changes in the database</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">conn.commit()</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">except:</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">#
|
||
Rolling back in case of error</font></code></p>
|
||
<p><code class="western"> </code><code class="western"><font face="Liberation Serif, serif">conn.rollback()</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">#
|
||
Closing the connection</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">conn.close()</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h1 class="western">10<code class="western"><font face="Liberation Serif, serif">Schedule
|
||
periodic RasPi reboot</font></code></h1>
|
||
<p><code class="western"><a href="https://raspberrypi.stackexchange.com/questions/2150/how-do-i-reboot-at-a-specific-time"><font face="Liberation Serif, serif">https://raspberrypi.stackexchange.com/questions/2150/how-do-i-reboot-at-a-specific-time</font></a></code></p>
|
||
<p><code class="western"><a href="https://smarthomepursuits.com/how-to-reboot-raspberry-pi-on-a-schedule/"><font face="Liberation Serif, serif">https://smarthomepursuits.com/how-to-reboot-raspberry-pi-on-a-schedule/</font></a></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ </font></code><code class="western"><font face="Liberation Serif, serif">sudo
|
||
crontab -e</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">>>>>>
|
||
choose nano editor</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">>>>>>
|
||
enter following command at end of file for </font></code><code class="western"><font face="Liberation Serif, serif">daily
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">reboot
|
||
at 13:03:</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">03 13 *
|
||
* * /sbin/shutdown -r now</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">Check
|
||
time in Linux commandline:</font></code></p>
|
||
<p><code class="western"><a href="https://www.lifewire.com/display-date-time-using-linux-command-line-4032698"><font face="Liberation Serif, serif">https://www.lifewire.com/display-date-time-using-linux-command-line-4032698</font></a></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ date</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h1 class="western">11<code class="western"><font face="Liberation Serif, serif">Install
|
||
KeePass</font></code></h1>
|
||
<p><code class="western"><a href="https://keepass.info/download.html"><font face="Liberation Serif, serif">https://keepass.info/download.html</font></a></code></p>
|
||
<p><code class="western"><a href="https://sourceforge.net/p/keepass/discussion/329220/thread/17d1bd26/"><font face="Liberation Serif, serif">https://sourceforge.net/p/keepass/discussion/329220/thread/17d1bd26/</font></a></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">sudo
|
||
apt-add-repository ppa:jtaylor/keepass</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">sudo
|
||
apt-get update</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">sudo
|
||
apt-get install keepass2 </font></code>
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h1 class="western">12<code class="western"><font face="Liberation Serif, serif">Clean</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
the repository of downloaded packages</font></code></h1>
|
||
<p><code class="western"><a href="https://askubuntu.com/questions/634820/how-can-i-delete-ubuntu-temp-files-which-are-created-during-software-installatio"><font face="Liberation Serif, serif">https://askubuntu.com/questions/634820/how-can-i-delete-ubuntu-temp-files-which-are-created-during-software-installatio</font></a></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">sudo
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">apt-get
|
||
autoclean</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">sudo
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">apt-get
|
||
clean</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h1 class="western">13<code class="western"><font face="Liberation Serif, serif">cleanup
|
||
a /var/log/journal in Linux</font></code></h1>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">How to
|
||
tell how much space is being taken?</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">journalctl
|
||
--disk-usage</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">Fix:
|
||
Option 3 (RECOMMENDED!):</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$
|
||
journalctl --vacuum-size=500M</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">This
|
||
will delete old log files until the directory reaches the threshold
|
||
size stipulated, in our case, 500M.</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<h1 class="western">14<code class="western"><font face="Liberation Serif, serif">Change
|
||
permission of mounted drive</font></code></h1>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><code class="western"><font face="Liberation Serif, serif">$
|
||
</font></code><code class="western"><font face="Liberation Serif, serif">sudo
|
||
chmod -R 770 /media/bora/Medien</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">sudo
|
||
mount -o rw,remount /</font></code><code class="western"><font face="Liberation Serif, serif">media/bora/Medien</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western"><a href="https://askubuntu.com/questions/948416/changing-ownership-of-read-only-file-system-i-cant-move-delete-rename-any-f"><font face="Liberation Serif, serif">https://askubuntu.com/questions/948416/changing-ownership-of-read-only-file-system-i-cant-move-delete-rename-any-f</font></a></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ </font></code><code class="western"><font face="Liberation Serif, serif">mount
|
||
-v | grep "^/" | awk '{print "\nPartition identifier:
|
||
" $1 "\n Mountpoint: " $3}'</font></code></p>
|
||
<p><code class="western"><font face="Liberation Serif, serif">$ </font></code><code class="western"><font face="Liberation Serif, serif">sudo
|
||
mount -o remount,rw /</font></code><code class="western"><font face="Liberation Serif, serif">dev/sda5</font></code><code class="western"><font face="Liberation Serif, serif">
|
||
/</font></code><code class="western"><font face="Liberation Serif, serif">media/bora/Medien</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><code class="western">“</code><code class="western"><font face="Liberation Serif, serif">If
|
||
you are on a dual boot system and getting the error related to the
|
||
read-only file system. One probable cause could be that your other
|
||
system is not correctly shut down and might be in hibernation or
|
||
sleep. So login to that system and shut it down properly and religion
|
||
to your Linux system. this resolved the issue in my system”</font></code></p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p><br/>
|
||
<br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
<p style="line-height: 100%; margin-bottom: 0in"><br/>
|
||
|
||
</p>
|
||
</body>
|
||
</html> |