{% macro log_output(logs) -%} {% if logs|length > 0 %} {% endif %} {%- endmacro %}

Preface

TL;DR researches ways to make sense of the hidden labour that goes on in a feminist server through log files and unlogged activity.

The unlogged activity of a server includes the physical labour, the decisions about shared spaces, the different knowledges that depend on each other for the network to exis

Activity that is logged, is often compiled in inaccessible log files that track the work a server performs as data. They're both hard to retrieve, hard to decipher, and have a bias towards the technological ecology, prioritizing the labour of machines.

Chopchop is a a Raspberry Pi that is configured, maintained and used as a community server by XPUB1

This EPUB is a generated compilation of logs with annotations that provide context to the situatedness of this technology. With one book a day, a diary of chopchop is kept, stored and shared.

The state of chopchop on {{now}}


tldr@chopchop:~ $whoami

{{ device_info if device_info else '' }}

{{ hostname if hostname else '' }}

{{ ip_address if ip_address else '' }}

XPUB 1 users use chopchop as a shared community server. chopchop is usually located in the Piet Zwart Wijnhaven building, although for this occassion it is resting on the shelf bellow this e-reader. {% if since_last_boot %}

tldr@chopchop:~ $uptime -s

Uptime is the amount of time a server has been up, available, running, working, executing. This is time that is not spent idle, but time spent busy serving.

{{ since_last_boot }}

{% if days_since_last_boot|int > 14 %}This is unusual, we are used to our server crashing quite often, especially when we are all sharing the space and editing at the same time. Our server, chopchop, chops up time into small bits of surprise in which we learn that the technologies we rely on are never just up and running on their own. They require people to care for them, to put in the time and the mindspace to figure out how to keep them running and available.{% else %}This short of an uptime is common, the fragility of these machines are more prominent than any cloud user expects. Partially because of scale, partially because a lot of labour that happens in datacenters just escapes us all when we want to just upload an image, or just send a message, or just open a webpage.{% endif %} {% endif %} {% if users_created_today is defined %}

tldr@chopchop:~ $sudo journalctl -S today _COMM=useradd -r

Users are assigned to groups, which allow them rights to read or edit files, run commands or apply infrastructural changes. For chopchop, we all have 'sudo rights': the ability to perform any command, including the more sensitive ones. Sudo is a command that's short for 'superuser do', with it, a user has more privileges, like installing or updating a package or performing a restart. {{ log_output(users_created_today) }} {% if users_created_today|length > 0 %} {{ last_user_added_name | replace(", ", "") }} user was added, and the network of trust grew ever so slightly. Users will be trusted with not just the keys and passwords to the "house" which is the server, but with a portion of responsibility to keep it afloat and contribute to what makes it a community of practices (and network of knowledge and dependence). {% else %} No new users were created today. The trust network remains the same size. {% endif %} {% endif %}

tldr@chopchop:~ $ grep 'install' /var/log/dpkg.log

Packages are often installed to use different software or coding languages or build alternative tools. Often users have to talk about and consider which packages they need and why, as well as how much storage they take up and how they will change their interactions with and on their shared server. {{ log_output(list_package_installs) }} {% if list_package_installs|length == 0 %} Today no new packages were installed... {% endif %} {% if list_package_upgrade|length > 0 %}

tldr@chopchop:~ $ grep 'upgrade' /var/log/dpkg.log

Out of the existing packages, these were upgraded: {{ log_output(list_package_upgrade) }} Packages are upgraded to fix previous bugs they had, or allow new options for usage they did not have prior. {% else %} No existing packages were upgraded today. {% endif %} {% if list_package_remove|length > 0 %}

tldr@chopchop:~ $ grep 'remove' /var/log/dpkg.log

These package were removed today: {{ log_output(list_package_remove) }} Packages could be removed because of consuming too much storage, not being used by the people who share the server, or they are no longer secure. It is often good practice to 'do some spring cleaning' every now and then and remove the packages that no longer serve you any purpose. {% else %} No packages were removed today. {% endif %} These actions are only a portion of the work... There's also the relationships of the people who care for the server enough to maintain it... The hours they put into meeting each other, discussing and deciding on how to move forward... They are sharing a digital landscape in which there are no hierarchies of landlords and renters... So, they find different ways to make a space for learning and co-habitation... This list is not exhaustive.

tldr@chopchop:~ $sudo journalctl _COMM=systemd-login --output-fields=MESSAGE -S today -g "New session" | grep -v 'Boot'

Users can login to the server using the SSH (secure shell) protocol. This allows a user to explore files, make changes, run commands and speak to the server from their own machine. This is useful when working remotely, and also to allow multiple users logging into the server simultaneously. Current XPUB1 students have a chopchop user, as well as the tutors. Additionally, there are some users not associated with a person, like our shared user 'chipchip' and users for running specific processes or creating projects. {% if logins_today is defined %} {{ log_output(logins_today) }} {% if logins_today|length > 0 %} These users have logged into our shared server chopchop, during the course of this day. {% else %} it was quiet today. {% endif %} {% endif %} {% if groups_created|length > 0 %}

tldr@chopchop:~ $sudo journalctl _COMM=groupadd -r --output-fields=MESSAGE

{{ log_output(groups_created) }} These new working groups were added today. They might be used for creating new projects, maintaining or managing parts of the server, or for organizational purposes. {% endif %} {% if groups_removed|length > 0 %}

tldr@chopchop:~ $sudo journalctl _COMM=grouPremove -r --output-fields=MES

{{ log_output(groups_removed) }} These new groups were removed today. Most likely they were no longer relevant or purposeful. {% endif %} {% if user_modified|length > 0 %}

tldr@chopchop:~ $sudo journalctl _COMM=usermod -r

{{ log_output(user_modified) }} These users have been modified. Probably because someone changed their password, keys, or other settings, or given new permissions. {% endif %} {% if user_deleted|length > 0 %}

tldr@chopchop:~ $sudo journalctl _COMM=userdel -r

{{ log_output(user_deleted) }} It seems that a user was removed. This doesn't happen too often... It could be that they have done something to lose the trust of the community. The circle of trust shrunk ever so slightly. {% endif %} {% if list_active_services %}

tldr@chopchop:~ $sudo service --status-all

These are all of the services that are active, running, working to execute requests that enable everything on the server. They are marked with an [+]. The rest, marked with a [-], are idle, not running, or waiting to be activating upon sending a request. {{ log_output(list_active_services) }} {% endif %}

tldr@chopchop:~ $sudo journalctl -S today -u kitchen-stove.service -u kitchen-bin.service -u kitchen-fridge.service -r -n

{{ log_output(kitchen_services) }}