[apol in advance for such a long, and whinging post
Setting up a raspberry pi -disability
I have a new model of Raspberry Pi, but have not set it up yet, it's been sitting round for quite a few weeks. The reason is that when I read up on the setup procedure to install an OS, Linux xxx, BSD xxx, or Windows 10 IOT, I realised that I don't necessarily have all of the required hardware. But more importantly, I can't sit or stand for long periods
, sometimes I can't use my hands
because of pain
and numbness and I am dizzy, often in pain
. Because of pain and confusion I am effectively confined to bed all the time
, although I can physically make it unaided to the adjoining bathroom by reaching out and holding on to things.
I wonder if practically the best thing to do is
1. buy a raspberry pi from somewhere (where?) that (a) comes with an o/s pre installed on a large SD card or whatever. I don't know if this is possible. For this to be usable, it would have to also (b) be preconfigured to allow remote access over Ethernet. I don't know if that second requirement is a killer.
2. Try and find a setup procedure that allows os installation from nothing using remote control using some sort of hardware that interfaces peripherals to Bluetooth (less preferred) or to an Ethernet remote access protocol. The second option would be better. I have no idea if this is feasible and in any case, it might be too much practically for someone who is in pain and very fuzzy, too much cognitive load. A possible recipe for failure, frustration and disappointment, coupled with financial outlay for extra peripheral interface conversion kit.
3. Finding a good soul who would be willing to install an OS for me, for suitable payment for the work done. This person would have to be trustworthy, technically suitably capable to do the job well, and trusted not to install anything broken or malicious
. This latter point is very important as blind trust might be a way of importing a malicious agent into my network.
Regarding point 3, I don't know if it is possible to check a eg Linux installation including its kernel for malicious content. It would be necessary to have a rootkit-capable low level, bare metal scanner that did not run under the OS in question, so that it had physical access to all disks’ contents, and could not be fooled by a lying, concealing rootkitted OS.
In all cases, a killer requirement is (4) to be able to administer and have admin shell access to an OS remotely over Ethernet
ideally, and also (5) remote access has to be available using an iOS client
, as I'm confined to using an iPad
these days. All of my various PCs and laptops using MS Windows are no longer accessible, because I can't sit at a desk for long periods
and my hands are no good
- I'm writing a lot of my text on an iPad
by using voice dictation
and then using my hands sparingly to correct all the errors.
So options 1 to 3 are also conditional on extra requirements (4) and (5). So all told, it's quite a tall order. This is basically an awkward kind of bootstrapping problem: how do I get from nothing to a remote admin-capable system with access from an iPad client over Ethernet. (Or over Bluetooth? - far less desirable and probably unworkable because of the presumed lack of a suitable iOS app).So any thoughts?
* Which o/s? * Would like advice.
a. Linux *: Good apps, well adapted to pi hardware presumably, mature. But which distro
? Requirements 4 & 5. Many experts, friends, acquaintances for support.
b. BSD: Like the idea, possibly no apps. Less support as fewer experts available close by. No idea about Pi support.
c. Windows 10 IOT: A completely unknown quantity, no apps. A plus point is familiarity with WinNT architecture although this package may be so unlike traditional Windows, stripped down too much or different in so many ways that the term ‘Windows’ is just marketing/farketing fluff. No support. Probably a ‘no’ straight up.
So much as I like the idea of BSD, I think it has to be Linux. But again which distro
? No idea. Requirements (4) and (5) are the killer for distro choice. The system will be a server, to play with in various roles, and also used for running the GCC and GDC compilers to learn. Probably no GUI necessary, nor graphics, so X client not a requirement. I need plenty of storage on it, no mechanical hard disk, too unreliable.
Important: I definitely want to just wait
and do nothing until an Aarch64 kernel is available for Raspberry Pi. I don't care about a delay. I believe current Pi Linuxes are 32-bit ARM code? The reason is that I want to do some ARM Aarch64 asm on the box, for self-education. There's no point in having to do a new o/s overwrite installation and lose a load of work when a 32-bit OS is upgraded to an Aarch64 kernel. I've used a version of GCC that builds for Aarch64 targets, but I think it was a cross-compiler hosted on Linux/AMD64. Would obviously need a native Aarch64 version of GCC, to run on the Pi itself. (Someone having of course originally built the first Aarch64 OS using a cross-compiler, to bootstrap the whole idea.)
Ideas for usage:
I might try to use it as a storage server, don't know what that might mean yet. Don't know for example if iOS clients can somehow be enabled to access SMB / Samba. Recent iOS releases can
allow apps to access file systems through various other apps’ services (eg ‘Documents’ app by Readdle, Textastic text editor app) that expose file system services. However, the pathetic iOS doesn't seem to be extensible to add in remote file systems at a system-wide level. This may be a non-starter.
I certainly want to use it as a DHCP6 server if possible, to aid in system admin and config.
I don't know if it is possible to use it as a second DNS server - for naming
hosts on the LAN only, not resolving Internet queries in general - because the Firebrick router that I use already provides relay DNS (and presumably caching), and can't have two servers fighting, so the DNS server thing is probably nonsensical / unrealistic.
(6) I can't have the LAN config fail or hosts unhappy because a pi isn't up, so that's also a general requirement.
I suspect that having the pi set up with a static IPv4 address would be simplest. It has to (7) support IPv6 more-or-less from day one, or help be available to get IPv6 configured. Is it possible to get help to set it up with two static, known addresses for each interface? That is, both a link-local (iirc, ff80:: is it?) and a global routable address (within my 2001:xxxx:xxxx::/64, at somewhere suitable for a server) per interface. (It's got Ethernet and Wifi NICs as I understand it, and USB is possibly usable, depending on software stack - tip from kindly person in earlier thread re hardware i/f for this.
Sorry it's such a long post. I'm really stuck and I've made the mistake of underestimating the physical and cognitive requirements of pulling myself up by my bootstraps with a pi, when I know absolutely zilch about *nix admin or she'll usage,
Apart from being an extremely experienced (10 yrs) C programmer which doesn't count at all as none of it was on *nix, all for various processor targets, and targets were various new o/s developments and bare metal, other targets: VAX/VMS, MS-DOS, Win16. Admin of WinNT, lots of. Always used VMS, DOS and WinNT as development platforms, never *nix unfortunately. Four years full-time in various different assemblers and nothing else. Also masses of shell scripting for wrong OS: WinNT cmd language tons of shell programming (ugly, but getting better), also VAX/VMS DCL shell scripting languages (quite nice). Tried PowerShell: fail, got completed lost, just too stupid and too many commands to look up all the time; would need two windows open, one for code, the other to look things up somehow all the time.
So hacking and protocols literate, zero *nix (always wrong OS, WinNT for 16 yrs) and zero UNIX shells experience, although I'm sure I can pick that up, I've done so much other foreign shell stuff. In my heart I'm an asm programmer, love modern C compilers as they are fantastically clever and take a lot of the work out of things. Am learning D (DLang) as fast as I can.
God, this is a long post, apol. It's grown and grown into a monster.