> For the complete documentation index, see [llms.txt](https://mrinalghimire.com.np/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://mrinalghimire.com.np/assignment-1/assignment-1-questions.md).

# Assignment 1 - Questions

**Author:** Mrinal Ghimire

{% stepper %}
{% step %}

## SSH to the Server

SSH to your local server using the provided private key or public key with the user **ubuntu**.
{% endstep %}

{% step %}

## Find Out the Following

* a) CPU core
* b) Memory
* c) Total disk space
* d) Disk partition
* e) Private IP address
* f) Hostname
* g) OS name
* h) Kernel version
  {% endstep %}

{% step %}

## Cron Job

Check if the server has cron installed. Find out its purpose.
{% endstep %}

{% step %}

## Listening Ports

Find all the listening ports and the service associated with each port.
{% endstep %}

{% step %}

## Web Server

Find out if any web server is running and show its output.
{% endstep %}

{% step %}

## Users

Find out if any additional user has been added to the system.
{% endstep %}

{% step %}

## Ubuntu User Status

You have logged in using the **ubuntu** user. Find out its account status, including:

* Expiry date
* Password age
* Password expiry information
* Other relevant account details
  {% endstep %}

{% step %}

## Shell Scripts

Find all script files ending with `.sh`.
{% endstep %}

{% step %}

## Date and Time Synchronization

The server date appears to be incorrect compared to Nepal Standard Time (GMT +5:45).

As a System Administrator, recommend a permanent solution to keep the system time synchronized automatically.

{% hint style="info" %}
Do not manually change the date. Prepare documentation explaining how to keep the correct time forever.
{% endhint %}
{% endstep %}

{% step %}

## Backup Script

Someone attempted to create a backup script for the `/data` directory, but it appears to be incorrect.

* Find the existing backup script on the system.
* Prepare proper documentation explaining how to create a correct backup script.
  {% endstep %}

{% step %}

## CPU Usage

Find the current CPU usage of the system.

Also explain which factors you consider when analyzing CPU load.
{% endstep %}

{% step %}

## Last Boot Time

Find out when the server was last booted.
{% endstep %}

{% step %}

## System Updates

Check whether the server is fully up to date.

If it is not, explain what should be done.
{% endstep %}

{% step %}

## Folder Permissions

Determine who can perform what actions inside the `/test` directory.
{% endstep %}

{% step %}

## Documentation

Prepare documentation containing answers to all of the above questions.

Save the file as:

```
/home/ubuntu/[yourname]/revision.txt
```

{% endstep %}
{% endstepper %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://mrinalghimire.com.np/assignment-1/assignment-1-questions.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
