Commit Graph

162 Commits

Author SHA1 Message Date
Christopher
521780d02a feat(healthcheck): add dmesg error check (#17)
Adds a new function to check the system dmesg logs for any critical errors or warnings. This
helps identify potential hardware or kernel issues that may impact the system stability.
The function will print out the last 10 errors found in the dmesg logs, and indicate if
there are more errors. It also warns the user if they don't have the required permissions
to read the dmesg logs.

This change is important to provide a more comprehensive health check for CasaOS systems,
as dmesg logs can often contain valuable information about underlying system issues.
2024-10-25 11:10:01 -05:00
Christopher
39eefd9d8f 🔍 feat(casaos-healthcheck): Improve root and sudo privileges checks (#14)
Adds two new functions, `check_root_privileges()` and `check_sudo_privileges()`, to handle
the cases where the script is run with insufficient privileges. The script now
provides clearer instructions and prompts the user to either continue with the
limited functionality or exit and run the script with the required privileges.
2024-10-23 13:35:34 -05:00
Christopher
222e6af258 🔧 refactor: Use #!/usr/bin/env bash in all shell scripts (#16)
This commit refactors all the shell scripts to use `#!/usr/bin/env bash` instead of `#!/bin/bash`. This change ensures that the scripts will run with the system's default Bash interpreter, even if it is not located at the standard `/bin/bash` path.
2024-10-23 13:32:15 -05:00
Christopher
337227be4a feat: Improve portability of CasaOS healthcheck script (#15)
Replaces the hardcoded shebang `#!/bin/bash` with `#!/usr/bin/env bash` to
ensure the script can be executed on systems where the Bash binary is not
located at the default path `/bin/bash`.
2024-10-23 13:27:54 -05:00
Christopher
ba560a2471 feat(healthcheck): Add sudo check and improve version display (#13)
This commit introduces the following changes:

- Checks if the script is running with sudo privileges. If not, it prompts the
  user to continue without sudo or exit the script.
- Updates the version display of the BigBearCasaOS Healthcheck to V3.2.

The sudo check is added to ensure that the script can perform all necessary
checks and provide complete information, as some checks may require elevated
privileges. The version update reflects the latest release of the healthcheck
tool.
2024-10-11 21:28:56 -05:00
Christopher
512bd258f7 🔧 feat: Update Ubuntu/Debian server update script (#12)
This commit introduces several improvements to the server update script:

- Added branding message and decorative lines for better presentation
- Implemented an unattended mode to allow for automated updates without user prompts
- Added functions to check disk space and handle known problematic packages
- Divided the update process into multiple steps (update package list, upgrade packages, full upgrade, remove unnecessary packages, clean cache) with user confirmation prompts
- Improved logging to a log file for better troubleshooting
- Added instructions on how to support the project

The goal of these changes is to provide a more user-friendly and reliable server update script for Ubuntu and Debian systems.
2024-10-10 10:09:16 -05:00
Christopher
1fc9511cb6 🎨 style(run.sh): Add color and formatting for console output (#6)
This commit introduces a set of functions and variables to provide colorful and formatted console output for the `run.sh` script. It includes the following changes:

- Added color variables for ANSI escape codes (BLUE, GREEN, YELLOW, RED, BOLD, NC).
- Added Unicode characters for various symbols (CHECK_MARK, CROSS_MARK, RIGHT_ARROW, INFO_MARK).
- Created print functions for success, warning, and error messages.
- Displayed a welcome message with community links and support information.
- Formatted the memory output to display in MB or GB as appropriate.
- Improved the formatting and readability of the script's output.

The primary goal of these changes is to enhance the user experience and make the script's output more visually appealing and informative.
2024-10-05 12:34:26 -05:00
Christopher
7c38996391 feat(casaos-healthcheck): Add Docker port check and improve version display (#11)
This commit introduces the following changes:

1. Adds a new function `check_docker_ports` to the `casaos-healthcheck/run.sh` script. This
   function checks if Docker is installed and running, and if UFW (Uncomplicated Firewall)
   is installed and active. It then retrieves all running Docker containers and checks if
   the ports exposed by these containers are allowed by the UFW rules. If a port is not
   allowed, a warning is displayed.

2. Updates the version display in the `print_header` function from "BigBearCasaOS Healthcheck
   V3.0" to "BigBearCasaOS Healthcheck V3.1".

The Docker port check is an important addition to the healthcheck script, as it helps
identify potential issues with firewall rules that may be blocking Docker container ports.
This can be especially useful in troubleshooting network-related problems.

The version update reflects the changes introduced in this commit.
2024-10-05 11:45:44 -05:00
Christopher
7bc592ad4a 🔑 feat(reset-password): Add fallback for missing user.db (#10)
* 🔑 feat(reset-password): Add fallback for missing user.db

This change adds a fallback mechanism to handle cases where the
`/var/lib/casaos/db/user.db` file is not found. If the file is
missing, the script attempts to check if the file exists in an
alternative location. If found, it backs up the file and restarts
the CasaOS user service to ensure the password reset functionality
works correctly.

* 🔐 feat(reset-password-for-casaos): Remove user.db existence

check and provide alternative method

The changes remove the check for the existence of the `user.db` file
and provide an alternative method to handle the case where the file is
not found. This change is intended to make the password reset process
more robust and accommodate systems where the `user.db` file may not be
present.
2024-09-29 09:49:54 -05:00
Christopher
1162c3f5e4 🚀 feat(reset-password): Enhance CasaOS password reset script (#9)
This commit introduces several improvements to the CasaOS password reset script:

- Adds functions to print headers, check service status, and backup the user database.
- Checks if the script is run with sudo privileges.
- Displays a welcome message with links and information about supporting the project.
- Checks if the CasaOS service is active before proceeding.
- Prompts the user for confirmation before resetting the password.
- Backs up the user database before removing the original file.
- Restarts the CasaOS user service to reflect the changes.
- Provides clear success and error messages to the user.

These changes aim to make the password reset process more robust, user-friendly, and informative.
2024-09-29 09:41:51 -05:00
Christopher
66283166f1 update-casaos-healthcheck-to-3.0 (#8)
* 🎨 feat(healthcheck): add new health checks for Docker and storage

This commit introduces two new health checks to the BigBearCasaOS
Healthcheck script:

1. `check_docker_status()`: This function checks if Docker is installed and
   running on the system. It provides clear feedback based on the Docker
   status.

2. `check_storage_health()`: This function checks the health of all storage
   devices (disks) connected to the system using the `smartctl` tool. It
   reports the health status of each disk, indicating if it has passed the
   SMART health check or if there may be potential issues.

These new health checks provide a more comprehensive overview of the system's
overall health and help identify any potential issues related to Docker or
storage-related problems.

* 📄 feat(casaos-healthcheck): Enhance DNS resolution and add system health checks

This change enhances the DNS resolution checks in the casaos-healthcheck script and adds new system health checks for disk space, CPU load, memory usage, and system temperature.

The key changes include:

- Improve DNS resolution by trying multiple DNS servers and retrying on failure
- Add a check for basic network connectivity before attempting DNS lookups
- Implement a check for disk space usage, with a configurable threshold
- Implement a check for CPU load, with a configurable threshold based on the number of cores
- Implement a check for memory usage, with a configurable threshold based on total memory
- Implement a check for system temperature, using the `sensors` command or `/sys/class/thermal` when available
- Add a check for available system updates using `apt-get`

These new checks provide a more comprehensive health monitoring solution for the CasaOS system.

*  feat: Bump healthcheck version to 3.0

Bumped the version of the BigBearCasaOS Healthcheck tool from 2.3 to 3.0.
This change reflects the latest updates and improvements made to the
healthcheck script.
2024-09-27 09:56:57 -05:00
Christopher
3618385fe9 feat: Enhance Docker cleanup script (#7)
This commit introduces several improvements to the Docker cleanup script:

- Adds a verbose mode to print detailed messages during the cleanup process.
- Implements a dry run mode to simulate the cleanup without actually removing any resources.
- Improves the container, image, volume, and network cleanup functions to better handle the cleanup process and provide more informative output.
- Adds a summary of the cleanup results at the end of the script.
- Includes a help message to explain the available options.
- Refactors the script to improve readability and maintainability.

The main goal of these changes is to provide a more user-friendly and robust Docker cleanup solution.
2024-09-26 10:48:56 -05:00
Christopher
7ac7d17233 feat(update-portainer-ce): Preserve current Portainer ports (#5)
This change ensures that the new Portainer container is created with the same ports as the
current configuration. It first checks the existing Portainer container to get the
current port mappings, and then uses those values when starting the new container.
This way, clients do not need to update any of their configurations when the Portainer
version is updated.
2024-09-05 23:25:13 -05:00
Christopher
c7d482b757 feat: Enhance run.sh with improved app listing and editor selection, adding error handling and user-friendly prompts 2024-08-14 11:56:20 -05:00
Christopher
e470f0e829 feat: Add GitLab registry to DNS resolution check in healthcheck script for improved coverage and troubleshooting 2024-08-12 13:32:58 -05:00
Christopher
578dfab6b8 feat: Add DNS resolution check for Docker registries in healthcheck script to enhance troubleshooting capabilities 2024-08-12 13:27:37 -05:00
Christopher
015dba2795 feat: Update healthcheck script header to reflect version change for clarity and better version tracking 2024-08-12 13:15:20 -05:00
Christopher
ea6dccb8d9 feat: Refactor error detection in healthcheck script to use configurable non-error patterns for improved flexibility and maintenance 2024-08-12 13:14:17 -05:00
Christopher
add3bb0cd3 feat: Update healthcheck script to include warning for inactive casaos-local-storage-first.service to improve service monitoring 2024-08-12 13:10:32 -05:00
Christopher
f8559dbdd7 feat: Enhance CasaOS healthcheck script with service status checks, colored output, and improved logging for better error visibility 2024-08-12 13:00:58 -05:00
Christopher
daaa05fdbd feat: Refactor run script for Invoice Ninja setup by separating environment file copy into its own command for clarity 2024-08-11 21:24:17 -05:00
Christopher
f967249292 feat: Add README and run script for Invoice Ninja setup on CasaOS, including branding and support information 2024-08-11 21:11:38 -05:00
Christopher
237d52aae2 feat: Add setup script and README for Invoice Ninja integration with CasaOS, including file downloads and verification steps 2024-08-11 21:10:52 -05:00
Christopher
782fa54d87 feat: Improve version selection logic in Portainer CE update script for clearer user input handling and default selection 2024-08-11 15:27:56 -05:00
Christopher
d5e65adab8 feat: Enhance Portainer CE update script with version selection, image removal, and improved informational prompts 2024-08-11 15:20:49 -05:00
Christopher
13ad1c1b9e feat: Add branding message and improve comments for clarity in Portainer CE update script 2024-08-11 15:09:26 -05:00
Christopher
8c406f26ac feat: Enhance Portainer CE update script with decorative intro and support message for user engagement 2024-08-11 15:01:14 -05:00
Christopher
51f78e03e5 feat: Add README and script to update Portainer CE with version check and user confirmation 2024-08-11 13:12:40 -05:00
Christopher
8e540677e8 feat: Add README and script to save Unifi network application MongoDB config file with user prompt and URL download 2024-08-06 21:31:18 -05:00
Christopher
831d9199bf feat: Add README and script to list and restart USB devices interactively 2024-08-02 16:49:57 -05:00
Christopher
688269f473 Update run.sh script to check and ensure NTP is running 2024-07-26 23:28:50 -05:00
Christopher
502cb9403c feat: Add script to update time and timezone 2024-07-26 18:59:24 -05:00
Christopher
ed52a5037e chore: Update download-zim-files script URL 2024-07-12 12:32:33 -05:00
Christopher
e494ad9480 chore: Apply changes to big-bear-kiwix-serve using casaos-cli 2024-07-12 12:29:13 -05:00
Christopher
adbd318ff7 chore: Update download-zim-files script with decorative message and support link 2024-07-12 12:22:56 -05:00
Christopher
7816130a14 Update download-zim-files script URL 2024-07-12 12:17:47 -05:00
Christopher
205a485ff8 feat: add download-zim-files script 2024-07-12 12:15:50 -05:00
Christopher
fd09bc224e chore: Update URL for downloading init-data.sh script in run.sh 2024-06-14 11:08:25 -05:00
Christopher
163bcb3dc1 feat: Add script to generate n8n initialization data 2024-06-14 11:07:39 -05:00
Christopher
34bd9d4c0c feat: Add script to check for Docker port usage 2024-06-02 13:49:51 -05:00
Christopher
d98401b795 chore: Add more comments to the blocking websites script 2024-06-01 15:03:34 -05:00
Christopher
41a06c65d9 Refactor start and end markers in run.sh script for website blocking 2024-06-01 14:58:44 -05:00
Christopher
37ea6e73cd feat: Update toggle-website-blocking script to use relative path for CONFIG_FILE 2024-06-01 14:57:54 -05:00
Christopher
3fab85c26b feat: Update toggle-website-blocking script to use sudo for running the script 2024-06-01 14:57:34 -05:00
Christopher
e1dc535d6b Refactor run.sh script to use relative path for CONFIG_FILE 2024-06-01 14:55:02 -05:00
Christopher
764e828f8e feat: Improve welcome message and settings handling in toggle-website-blocking script 2024-06-01 14:50:26 -05:00
Christopher
bbd207a513 feat: Update toggle-website-blocking script to use curl or wget for downloading and running the script 2024-06-01 14:06:59 -05:00
Christopher
9da3308074 Refactor website blocking script and settings configuration 2024-06-01 14:02:14 -05:00
Christopher
c619939d96 feat: Add script to toggle website blocking 2024-06-01 13:46:20 -05:00
Christopher
6f54010a49 feat: Add disk usage monitoring script 2024-05-19 20:45:29 -05:00