Administration.




Tillbaka till Raspberry Pi.
Inledning.
Organisation.
Backup.
- Backup av MySQL.
- Alternativ.
Underhåll.
Ny användare.
Ändra rootlösenord.
Söka paket.
Avinstallera paket.
Köra processer.
Avbryta processer.



Inledning.


Den här sidan ska försöka beskriva hur man kan organisera och administrera Raspberry Pi. Inledningsvis är det lämpligt att installera följande program/programpaket:
Geany - ett grafiskt utvecklingsverktyg.
wiringPi - för att bland annat kunna skriva program i C.
pigpio - C bibliotek för Raspberry P.
gftp - grafiskt ftpprogram för filöverföring.
Beroende på vad man håller på med kan följande program behöva installeras:
bcm2835-version.tar.gz - C bibliotek för Raspberry Pi.
piface - program för att utveckla program för PiFace.
pi4j - verktyg för att skriva javaprogram.
Arduino - utvecklingsmiljö för Arduino.
tightvncserver - möjlighet att presentera RPi:s skrivbord i en PC.



Organisation.


I mappen /home/pi skapa mapparna Development och Dokument.
I mappen Development skapas sedan förslagsvis mapparna Cprog, Java, Python. Vid behov kan flera mappar skapas.
I mappen Cprog skapar man sedan en mapp för varje projekt i programspråket C där man samlar alla filer som berör projektet. På samma sätt gör man sedan med de övriga mapparna i Development.



Administration.




Backup alt 1.

Backup av hela minneskortet.
Stäng av Raspberry Pi.
Tag ut minneskortet ur Raspberry Pi.
Placera minneskortet i en kortläsare i PCn.
Logga in som root i din PC:
su
Ange lösenord/password.
Exempel på kommando för att göra en backup på ett SD-kort:
dd if=/dev/mmcblk0 of=/home/jan/Dokument/RaspberryPi/Images/RPi.img bs=1M
if = adressen till SD-kortet
of = platsen i PCn där backupen ska sparas.
Efter backupen fins en imagefil som är lika stor som minneskortet. Är minneskortet 8GB så kommer imagesfilen bli 8GB.


Windowsanvändare kan använda Win32DiskImager. Beskrivning finns här och här.


Backup alt 2.

Backup av en eller flera mappar.
Förslagsvis använder man rsync för att göra en backup.
Exempel:
rsync -avz -e ssh /home/pi/ pi@Bubba:/home/storage/extern/WDC_WD10EARS-22Y-1/backup/blackrasp/
Byt ut sökvägen så den passar dig.


Backup alt 3.

Sedan raspbian 2016-05-10 så finns det ett tredje alternativ att göra backup.
Möjligheten finns under: Menu - Tillbehör - SD Card Copier.


För att ta ett vanligt exempel:
Först behöver du en kortläsare för SD-kort och kan anslutas via USB.
När du vill göra backup på din existerande Raspbian installation sätt in ett tomt SD kort i din kortläsare och anslut den till din RPi, starta sedan SD Card Copier. I rutan ‘Copy From Device’ välj “Internal SD Card”, välj sedan USB-cardwriter i rutan ‘Copy To Device’ (där den sannolikt är den enda enheten som listas).
Tryck ‘Start’, titta på meddelandet på skärmen och vänta – i tio eller femton minuter - du kommer att ha en klon av din installation på det nya SD-kortet.



Backup av MySQL-databas.

Jag har jobbat lite med hur jag ska ta backup av en Raspberry Pi. Jag vill även ta backup på en MySQL-databas. Grunden i mitt backupjobb är rsync. För att automatisera backupen använder jag crontab. Jag har lagt in en rad i slutet på crontab:
15 3 * * * root /home/pi/Script/backup.sh
Detta tolkas till att scriptet /home/pi/Script/backup.sh körs varje natt kl 03:15.

Skriptet backup.sh:


Python-programmet backup_data.py:


Raden "os.remove("/home/pi/mysql/barometer.txt")" raderar den gamla filen. SELECT .... INTO OUTFILE kan inte ersätta den gamla file utan den måste raderas innan den nya filen skapas.
Därefter körs funktionen backup_data() som skapar en ny barometer.txt.

Alternativ.
För att köra en backup på en annan dator med mysqldump behöver man registrera en ny användare (user) med angivande av datornamn (IP-address) i MySQL i den dator man önskar göra backup av.
Sedan behöver man editera /etc/mysql/my.cnf:
Ändra raden:
bind-address = 127.0.0.1
till
bind-address = 0.0.0.0
Starta sedan om datorn, sudo reboot.

Nu kan man köra mysqldump från den första datorn:
mysqldump -h IP-address -u username --password lösenord databsnamn > /$PATH/filnamn.sql
En klurighet var att använda parametern --password istället för -p.



Underhåll.

För att hålla programvaran i Raspberry Pi fresh så bör man med jämna mellan rum köra följande sekvens:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo apt-get autoremove


Här är det upgrade som tar tid, de andra går ganska snabbt.



Söka efter paket.

Ibland kan det vara svårt att veta vad paket heter exakt vilket är nödvändigt när man vill installera paket. Då kan det var bra att använda:
apt-cache search sökord
där sökord är namnet på det paket man letar efter. Sökordet behöver inte vara det exakta paketnamnet, bara hyfsat lika det riktiga paketnamnet.



Ny användare.

sudo adduser "namn"



Ändra rootlösenord.

sudo passwd root



Avinstallera ett paket.

sudo apt-get remove paketnamn
eller
sudo apt-get remove --purge paketnamn
sudo apt-get autoremove



Köra processer.

Ibland har man behov av att starta en process (köra ett program) från ett terminalfönster och processen ska fortsätta arbeta efter det att man lämnat terminalen eller att man önskar använda terminalfönstret till flera kommandon.
Detta kan åstakommas genom att lägga till & efter kommandot:
programnamn &
Detta startar programmet/processen och processen fortsätter utan att vara kopplat varken till aktuellt terminalfönster eller den användaren som startat processen. Processen kommer att fortsätta även när man stängt terminalfönstret och loggat ut.



Avbryta processer.

På förekommen anledning vill jag beskriva hur man avbryter körningen/exekveringen av ett program i Linux.

1. Ett program som körs i ett terminalfönster.
Programmet kan avbrytas med tangenttryckningen Ctrl-C. Tryck ner tangenterna Ctrl och C samtidigt.

2. Ett program som körs i bakgrunden.
Börja med att kör shellkommandot ps -ef som listar processerna som pågår.
Leta i listan efter kommandot/programnamnet som startade programmet:
ssh pi@caesarion_wifi.
Notera PID, ProcessID.
Kör shellkommando:
kill -9 PID.
Byt ut PID mot det nummer som du fann i listan, t ex kill -9 8053.



Till början.