Skip to content

ConfiScan - Collect basic information about Linux systems within seconds.

License

Notifications You must be signed in to change notification settings

AntonVanAssche/ConfiScan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ConfiScan

Collect basic information about Linux systems within seconds.
· Report Bug · Request Feature

About ConfiScan

⚠️ Currently, only Debian is supported. Support for other Linux distributions will be added soon.

ConfiScan is a Bash script designed to collect basic information about Linux systems and output it into a set of organized files (CSV and txt). This tool is intended to assist system administrators in documenting and managing their infrastructure, providing a clear and comprehensive overview of system configurations.

The tool was initially developed as part of a bachelor thesis aimed at exploring solutions to facilitate the transition to Infrastructur as Code environments. Recognizing the ongoing challenges that many small and medium-sized enterprises (SMEs) face, such as limited knowledge, time, and budget constraints, ConfiScan will continue to be developed within this repository. It provides a straightforward and effective method for collecting and organizing system information, simplifying the creation of a comprehensive configuration inventory.

More information about the initial script and backstory can be found at the repository containing the thesis.

Usage

Prerequisites

To use ConfiScan, you need the following:

  • Packages:
    • dmidecode
    • net-tools
  • Sudo privileges to execute system commands.

Execution

$ confiscan.sh -h
Usage: confiscan.sh [OPTION] [CONFIG_FILES]

Options:
    -h   Display help
    -v   Display version
    -f   Force overwrite of output directory/tarball
    -o   Specify output directory, default is hostname-configs
    -t   Create tarball of output directory

Note:
    Shell globbing is supported for [CONFIG_FILES]. They can be files or directories.

Examples:
    confiscan.sh -h
    confiscan.sh /etc/sysctl.conf
    confiscan.sh /etc/apache2/ /etc/sysctl.conf
    confiscan.sh -f -t /etc/machine-id
    confiscan.sh -o /path/to/output_dir
    confiscan.sh -t /etc/bash{.bashrc,_completion}
    confiscan.sh -t

Contributions

Contributions are welcome! Refer to CONTRIBUTING.md for more information on how to contribute.

License

ConfiScan is licensed under the GPLv3 License. See the LICENSE file for more details.

About

ConfiScan - Collect basic information about Linux systems within seconds.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Languages