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

Debug fiesta!

last_user_added: {{ last_user_added}}
last_user_added_name: {{ last_user_added_name}}
users_created_today: {{ users_created_today}}
since_last_boot: {{ since_last_boot}}
list_package_installs: {{ list_package_installs}}
list_package_upgrade: {{ list_package_upgrade}}
list_package_remove: {{ list_package_remove}}
device_info: {{ device_info}}
days_since_last_boot : {{ days_since_last_boot }}
kitchen_services : {{ kitchen_services }}
ip_address : {{ ip_address }}
logins_today : {{ logins_today }}
list_groups : {{ list_groups }}
list_active_services : {{ list_active_services }}
debian_version : {{ debian_version }}
kernel_version : {{ kernel_version }}
hostname : {{ hostname }}

groups_created : {{ groups_created }}
groups_removed : {{ groups_removed }}
user_modified : {{ user_modified }}
user_deleted : {{ user_deleted }}

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 }}

{{ hostname }}

{{ ip_address }}

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.

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 since_last_boot is defined %} {% 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 %} does not show the users of logins_today These users have logged into our shared server chopchop, during the course of this day. {% endif %} {% if groups_created|length > 0 %}

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

This command shows whether groups were added today. {% endif %} {% if groups_created|length < 0 %} No groups were added today. {% endif %} For some reason this if statement is not working, i didn't apply it to the next 4 categories because i wanted to check it works first

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

This command shows whether groups were removed today.

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

This command shows whether users were modified today.

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

This command shows whether users were removed today.

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.

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

{% if kitchen_services|length > 0 %} {% endif %}