Raspi-Mobile

From coolscript.org
Jump to navigation Jump to search

Intro

Raspi-Mobile is designed to run as a Mobile Device together with your Tablet or Laptop, prepared for conditions such as in a Train, Flight, Hotel and so on.
The project has its focus to run as a Streaming Server next to common features like Wireless and Internet-Routing support.

Two interesting Raspberry/Linux issues are solved:

  • True automatic mounting of USB flush drives
    • Plugin any USB flush drives and mount the device automatically, supporting the filesystems ntfs, vfat and exfat
  • Graceful shutdown
    • This solves the issue of preventing disk damages in case of losing electricity power.
    • No need to login or connecting a keyboard and monitor to shutdown the device graceful, just plugin the shutdown usb device to initiate an instant and graceful shutdown

Features

  • Easy to setup just download one of the available image and write it to your memory card.
  • Supporting the Raspberry4. The project was developed on Raspian 10 and Raspian 11
  • Slim image file download, the image size is less than 2GB
  • Automatic mounting and un-mounting USB flash drives
    • Supported file systems: ntfs,ext32 and vfat
  • Graceful shutdown using a special prepared USB flash drive labeled with RASPI-CLEAN-SHUTDOWN
  • Wireless support, the device has a mangement web to customize WiFi settings like SID and password
  • Routing support together with ethernet connectivity, all interfaces are using DHCP
  • Support OpenVPN
  • Support of common protocols for streaming:
    • SMB/CIFS
    • WebDav
    • SFTP
    • HTTP

Easy Installation

  • Write the image to a Micro SD Card with the size of equal or better greater than 2GB, there is no limit, use any size of your Micro SD Card
    • To write the Image you may use tools like DiskImager
  • Insert the Micro SD Card to your Raspberry and start it
    • The disk will get automatically expanded to the maximum size during the first boot
      • Optional you may check the disk size by logging in via ssh and then run raspi-config, goto advanced and then expand filesystem, finish and reboot
  • Installation finished

Default Username and Password

  • Username pi
  • Password raspberry

Hostname and Aliases

Note: Hostname resolution is only available when connected through WiFi

  • Hostname raspberrypi
  • Aliases
    • raspi
    • raspberry
  • IP (alias to eth0, works even if eth0 is disconnected)
    • 192.168.5.1

SSH

ssh pi@raspi
ssh pi@192.168.5.1
  • Become root
sudo -i

Wireless default access

  • WiFi SID
    • Raspi-Mobile
  • WiFi Passwd
    • raspberry
  • RaspAP Web-Interface
http://raspi:8080 
http://192.168.5.1:8080

Change the password for the pi user

Connect using SSH

Change the Linux Password

Note: Changing the Linux password will cover sftp too

ssh pi@raspi
  • Type
pi@raspberrypi:~ $ sudo -i
root@raspberrypi:~# passwd pi
New password:
Retype new password:
passwd: password updated successfully

Change the SMB/CIFS Password

This might need a new windows login after the change

pi@raspberrypi:~ $ sudo -i
root@raspberrypi:~# smbpasswd pi
New SMB password:
Retype new SMB password:

Change the HTTP/WebDav Password

htpasswd /etc/apache2/.htpasswd pi

Add a new user

Add a new user to Linux

This example will add the user admin
Note: Changing the Linux password will cover sftp too

  • Login first
ssh pi@raspi
  • Type
root@raspberrypi:/# adduser admin
Adding user `admin' ...
Adding new group `admin' (1002) ...
Adding new user `admin' (1001) with group `admin' ...
Creating home directory `/home/admin' ...
Copying files from `/etc/skel' ...
New password:
Retype new password:
passwd: password updated successfully
Changing the user information for admin
Enter the new value, or press ENTER for the default
       Full Name []: Raspi Admin
       Room Number []:
       Work Phone []:
       Home Phone []:
       Other []:
Is the information correct? [Y/n] Y
  • Add the new user to the sudo group in order to allow the user to become root
usermod -a -G sudo admin

Add a new user to SMB/CIFS

pi@raspberrypi:~ $ sudo -i
root@raspberrypi:~# smbpasswd -a admin
New SMB password:
Retype new SMB password:
  • Add the new user to the samba group
usermod -a -G sambagrp admin

Add a new user to HTTP/WebDav

htpasswd /etc/apache2/.htpasswd admin
New password:
Re-type new password:
Adding password for user admin

Change the WiFi SID and Password

OR

  • SSH to the Raspberry, then edit /etc/hostapd/hostapd.conf

Unexpected Shutdown

The Raspberry should never get shutdown unexpected during a write operation (eg by pulling the power cable),
this may result in a data loss or filesystem damage.

The reason for this is the behavior of the SD card, see a very good explanation for this here

For security reasons the syslog facility has been turned off, this way there is less writing activity which protects the filesystem in case of a unexpected shutdown.
To enable syslog in case of debugging:

systemctl enable syslog.socket rsyslog.service 
systemctl start syslog.socket rsyslog.service

Graceful Shutdown

Raspi-Mobile has a preconfigured udev rule configured to allow a greaceful shutdown by conneting a special prepared USB flash drive,

  • The drive label RASPI-CLEAN-SHUTDOWN will instantly shut down the device.

  • Example of changing the drive label on Windows
Raspi-clean-shutdown.png



  • Once connected then please give the device a few seconds to complete the shutdown

Known Problems

Problem:
In case of unplugging eth0 while wlan0 is active then it can happen that the SID is no more visible even after reboot
Solution:
Shut down the Raspi and start again without eth0, then shutdown again, plugin eth0 and start again.


Download

Links


Rb01a.png


Rb-bundle01.png
Rb-back01.png