Welcome to Etherbox!
This pad text is synchronized as you type, so that everyone viewing this page sees the same text. Add __NOPUBLISH__ to prevent this pad from being archived.
---
*D*A*Y*1* (Tuesday)
---
Roaming Server
http://relearn.be/
Where did it all start?
From a desire to split the organisational weight, we decided to organise shorter sessions in different places.
Not specifically with a specific theme, but based on the interest of the different organisers of the different sessions.
It's not a "collect them all effort" in the sense that the series of sessions don't function as a coherent series.
How can the groups in different cities stay in touch?
Relearn server infrastructure has been localised in the past: the infrastructure is taken away once the session is over > nobody owns it
Nobody maintains.
nobody owns Relearn?
The questions were asked: can we start from your experiences?
How to spread the "Relearn knowlegde" or even "method" .... ?
This touches questions about sharing knowlegde in an "universal" way.
What about the metaphor of a letter?
Documenting, responding to specific moments, with specific messages for a specific
(maybe the next)
group.
enveloppe with messages
Not for every*, but for a specific group?
Perhaps the infrastructure is generic (works for every* in the different sessions).
But the context is NOT every*.
all the attempt for archiving
There was an attempt to archive Relearn
in 2016 in Calafou.
The 2016 group gave the minnestrone recipe as a present to a budding Calafou catering service + ...
How can we take the aspect of roaming as a way to relearn our understanding of networks?
Roaming?
expérience with telephone networks now. extraterritoriality
You don't have a contact with "this" network provider, but the current network has a contact with another provider.
Not only a learning situation for humans, but also a place where the server can resituate itself.
Resituating itself withing networks.
What are the conditions that allow for the relearn network to reconfigure itself in order to exist in the first place?
Does the drifter have attachment points?
Stinky, suspicious smelling server - not a clean device
Something being in an unknown environment.
Set of tools to capture electro-magnetic fields, to show something of its situation.
a network that tries to make connection. a way to generate promiscuity
Bring in the promiscuity of the device.
Attachment points
in situ in the city
from inside the network, participants attaching to the files and messages being left
the role of the pub for people on ships
multiple place of inquiry around relearn ?
Like Calafou, Constant, OSP, Varia, Lag
We are learning, but the server is also learning
Maybe the server can speak (in first person)
Like a discussion partner
The server is not only serving tea. It's an active servant. You need to feed it something in order to get something out of it.
the server as an aggressive server?
client/server
master/server
host
maybe for Relearn, we (we + our computers) are the servers
(but also the clients)
we still need a server/router as a companion (to be able to speak to eachother)
OSP's first iteration of Relearn took teachers == learners as a starting point.
users/developers
Is the server connected to the internet during the session? (So other peers can follows)
enveloppes are often closed along the way
"server" mail art - Mediengruppe Bitnik's work Letter to Assange
What happens in between sessions?
possible link with news server (possible to have multiple threads)
The Relearn curve is already very curvy ;)
.
Constellations are points of activations
Examples of moving access points
mesh networks, sneaker nets
Sync-ing when Relearn computers meet again
synced
unsynced moments
Can we have a sync button? Syncing moments?
Oe....... there will be so many merge conflicts!
Michael looked into how Etherpad handles conflict: there is an algorithm constantly working to resolve conflicts
How to deal with conflicts? ;) How to keep the conflicts on the table.
How to sync for the first time?
Where to sync with for the first time?
Option to sync with the dump of material from previous years.
sink
sync
synchronous
staying afloat
not everything needs to be at the same level
, short text introducing a Relearn session on the website
what are other syncing tools?
these are varied and multiple
multiple languages could be a way to address multiplicity
syncing/synchronisity
s
i
n
king
/forgetting
sinking
in/into
/embodying knowlegde, forgetting that you can do something
synci/choosing what to keep and what not. Tries to be in sync, but is not always. Loss in the process
Stinky
synqi
syncki
learners
serv
ing
leaky synqi server
un-synced serving clients
(!!)
a server that forgets and leaks and looses stuff
find places to host the S; eg someone's SmartTV
data magnetism
not afraid to lose knowledge
How heavy is your sync?
data migrates to other servers, as it feels more comfortable on another server.
Not really peer-2-peer as in technosolutionist scenario, but as a way of thinking about exchange.
Martino: need to think of "Net-splits"
some users disappear from a room, as they disconnect from the server
Are you being syn
c ?
How to make a little prototype?
rsync
public folder
syncing is a form of copying
?
rqlite - distributed database software, "gracefully handling leader elections"
https://github.com/rqlite/rqlite
copy/paste on a usb stick - also a fragile process
usb-network
the task of the sync-er
the syncer as a mediator
mediating practices
multiplier
How could we "see" eachother on the network?
----
Prototyping
----
dav://tp.local
using the filesystem as a network interface
Samba? What does it do? smb://
dav:// = WebDav?
distributed file system / clustered file system
https://en.wikipedia.org/wiki/Clustered_file_system
scp (password required)
https://en.wikipedia.org/wiki/WebDAV
https://tools.ietf.org/html/rfc4918
WebDAV extends the set of standard HTTP verbs and headers allowed for request methods.
The added verbs include:
-
COPY copy a resource from one URI to another
-
LOCK put a lock on a resource. WebDAV supports both shared and exclusive locks.
-
MKCOL create collections (a.k.a. a directory)
-
MOVE move a resource from one URI to another
-
PROPFIND retrieve properties, stored as XML, from a web resource. It is also overloaded to allow one to retrieve the collection structure (also known as directory hierarchy) of a remote system.
-
PROPPATCH change and delete multiple properties on a resource in a single atomic act
-
UNLOCK remove a lock from a resource
File system network
smb://peter-hp.local
dav://tp.local
trying to rsync our public folders
https://rsync.samba.org/
https://everythinglinux.org/rsync/
"Rsync is a fast and extraordinarily versatile file copying tool. It can copy locally, to/from another host over any remote shell, or to/from a remote rsync daemon."
$ rsync
---
*D*A*Y*2* (Wednesday)
---
Vocabulary
-
syncing
-
mirroring
-
from > to (one directional)
-
peer-to-peer
-
syncing=copying=downloading=pulling
Rsync with Jogi
Rsync is an
one way protocol: syncs from -> to
from one location to another
from > to relation
it works like a copy
before it copies any file, it checks if a file exist on the target file
If there is a copy already, it checks the difference between the two files and updates the file if needed.
It does it very efficiently, looking at blocks of data.
You can probably see the diffs somewhere, what is synced, and how much is etherbox.
it's used in software mirrors. ex of the debian servers : debian
where it works in a tree structure, starting to sync from the "master" server, slowly spreading out
For example, we can make one user
with the same credentials
on each of our machines, with one password.
you can run rsync over ssh
you can run a rsync server on your machine, and use rsync in an anynomous way. Using the rsync://
(anonymous version)
IPFS
works with addresses, but it is not super easy to use.
but it fits in the wishes to work between computers, instead of between many computers and one server
dat:// is another protocol that we could explore.
One application is
the
beaker browser, but there are also others.
unison is built on top of rsync
it works like peer-to-peer
rsync also have the option to sync only certain files, or to exclude certain files.
like handshakes
On the French Wikipedia, the image shows parachutists in WWII, syncing their watches
synchronous is coming from thinking about time
"keeping things in time"
like a conductor of an orchestra
synchronisation beyond thinking about time
We could write a tiny shell script
triggered by cron
to run rsync
we could start with a setup where we run rsync on your machine, and pull from all the other computers
syncing logic of rsync: latest version
rsync man page :
https://linux.die.net/man/1/rsync
setting up a rsync server
1. set up a common account
(same username, same password)
2. using the home directory of the user as its base to sync from/to
3. run a rsync service under the new username
4. pull the files from the other servers/computers
rsync between hosts
using a rsync server
Hostnames in this syncing session:
tp.local = 10.9.10.122 (on networkswithanattitude)
pc5.local
peter-hp.local
10.9.10.255
ana
r
chronisme.local
poffertjes.local
=
10.9.10.107
$ rsync hostname.local:: .
Step 0 - Requirements
Things you should have installed (if not: install) on your machine:
sudo apt update && sudo apt install --yes rsync nmap logger
Step 1 - basic setup
-
create a user 'relearn' on your machine
Step 2 - inital sync
-
become the user 'relearn'
-
create a directory 'Public' in this users's home
-
get the current state of 'Public' from one of the machines in the above list
-
rsync -ruvi HOSTNAME::relearn .
Step 3 - automatic sync
-
edit crontab for user 'relearn'
-
this opens a file in an editor of your choosing; add this line at the end of the file:
-
*5/ * * * * /home/relearn/Public/relearnsync
Step 4 - start serving files
-
copy 'rsyncd.config' from /home/relearn/Public to /etc
-
cp /home/relearn/Public/rsyncd.config /etc
-
start the rsync server
-
systemctl start rsync.service
Logging
-
cd /var/log/
-
tail -f syslog
$ rsync -
r
uvi
HOSTNAME
.local::
relearn
.
Running a rsync server
create the file called "/etc/rsyncd.conf"
$ nano /etc/rsyncd.conf
uid = relearn
gid = nogroup
log file = /var/log/rsync.log
[relearn]
rsync
path = /home/relearn
/Public
Save the username and password in the file "/etc/rsyncd.secrets"
in the format "username:password"
$ nano /etc/rsyncd.secrets
$ sudo service rsync.service start
Read the server logs
$ tail -f /var/log/rsync
d
.log
Or (if you did not specify a dedicated server logfile)
$ sudo tail -f /var/log/syslog
Make a cron job
(as relearn user)
$ crontab -e
-
*/5 * * * * /home/relearn/Public/relearnsync
Edit the hostlist
$ nano hostlists
Jogi made a script called relearnsync
the script doesn't output anything to stdout, but logs to your syslog file
To copy files from an rsync server:
$ rsync -auvi pc5.local::relearn .
where pc5.local is the server address that's serving
$ sudo cp rsyncd.conf /etc/
sudo systemctl start rsync
sudo systemctl status rsync
--> or you can use:
sudo service rsync start
sudo service rsync status
ip a (to find out one's ip address)
---
Why the Synqi server does not mirror.
auteurschap in timing
synqiness, lineair timestamp logic
having the last word
timing is triggering action
diffraction & time
multiple continuities at the same time
rsync syncing
on
the last e
dit
the last e
dit
is the master
"i think you're syncing your own file system"
syncing as an act of copying, multiplying
, hoarding
is there a choice to delete files after a certain time, or if a data is not used for a long time?
__________________
__________________
Notes via david@totalism.org on syncthing
Installation and pairing
Basics:
* this is for Ubuntu - others similar
* Syncthing is P2P - no servers and clients
* this means to add a New user, you need to find an Existing user
Process:
0) $ apt-get install syncthing
1) if you run a firewall - open ports (more info here if needed)
22000 (Sync Protocol Listen Address)
21025 (Discovery Broadcasts)
You can check this with:
$ sudo ufw status #is Ubuntu firewall inactive?
$ nmap -p 21025 localhost #is port open?
2) run as root:
$ sudo syncthing
this is simplest, if you get it running as non-root, more power to you
(OSX does not need sudo/root.)
3) web interface lives on
http://localhost:8343
(by default)
usually opens a window automatically
4) new user (YOU) pairs with existing user (NOT YOU), under "Add device":
a) entering long Syncthing ID, from some Existing user (see list below!)
b) by scanning QR code from some existing user
--------------
Also:
* use "Device name" for NOT YOU as you want
* leave all other stuff as is
* "Introducer" option:
* maybe turn this on? <-------- #TODO
* (but then YOU see other people UNCHECKED in a folder to sync with) ... make sense.
* Currently we: Add the current maintainer as Introducer
5) OK, now the Existing user (NOT YOU):
* gets a pop-up in Web Interface to confirm connection + check to share relevant folders (CHT, CHT_SUBSET, etc)!
* restarts Syncthing !!! (this looks neccessary for whatever reason)
6) YOU: gets prompt to add the folder(s):
* accepts:
you only have to enter "Folder Path". Use something like "~/Syncthing/CHT" or whatever.
(different for every subfolder, of course.)
* waits a bit. stuff is syncthing! mission accomplished!!
* make sure speed makes sense (slow on bad wifi links, LAN reccomended)
7) YOU: Add your long ID to list of Syncthing ID's (optional)
Syncthing todo:
* sync speed:
* how to have proper speed?
* speed over android hotspot = slow as shit (<5 KB/s)
__________________
__________________
port 873: well-known port for rsync
rsync: the system is totally conflict unaware
blissfully conflict unaware
has it ever been aware?
is it conflict sensitive? or is it conflict ignorant?
discussion, coming back to relearn and a server
everybody with the same user "relearn", the server included
writing a message together for the first group
working on the server until the end of relearn this year
try to work a text together as a cadavre exquis