{{Header}} {{title|title= Advanced Users }} {{#seo: |description=What is an advanced user? }} {{intro| What is an advanced user? }} = Skills = This list is non-exhaustive. * Download and save files: Save files to a specific folder and later locate them again. * Find files: Search for files and folders using the file manager and the command line. * Make a file executable: Set execute permissions and understand when this is appropriate. * Manage long running commands: Start a long running command and stop it by killing the process from the command line. * Check processes as a user: Determine whether a process is running as the current user. * Check processes as root: Determine whether a process is running with root privileges. * Open files with root rights: Edit system files safely with elevated permissions when required. * Open folders with root rights: Browse and modify protected directories using elevated permissions when required. * Understand the user home folder: Know where user configuration and data are stored and how permissions apply. * Understand the root home folder: Know where root configuration and data are stored and how permissions differ from user accounts. * Copy logs: Copy relevant journalctl output for troubleshooting and support requests. * Use systemd service status: Interpret systemctl status output and identify common failure causes. * Edit boot parameters: Edit boot parameters in the grub boot menu for one-time troubleshooting. * Mount disk images: Mount a virtual hard drive file on the host operating system to inspect or recover data. * Use a serial console: Connect to and use a serial console for debugging and recovery. * Use OpenPGP Web of Trust: Understand trust models, key signing, and basic verification workflows. * Understand Linux file permissions: Interpret and set permissions and ownership, including the effect of groups. * Use sudo safely: Understand when sudo is required and avoid running unnecessary commands as root. * Interpret exit codes: Recognize common non-zero exit codes and use them to troubleshoot failures. * Redirect and pipe output: Use >, >>, and pipes to capture, append, and filter command output. * Search text output: Use tools such as grep to find relevant lines in logs and command output. * Inspect disk usage: Identify large files and folders and understand free space vs used space reporting. * Verify file integrity: Check hashes (for example SHA256) to verify downloads and detect corruption. * Extract archives: Work with common archive formats and preserve permissions when extracting. * Understand networking basics: Inspect IP addresses, routes, and DNS configuration for troubleshooting. * Test connectivity: Diagnose network issues using basic tools and interpret common failure modes. * Understand firewall basics: Know how local firewall rules can affect connectivity and services. * Manage services: Start, stop, restart, enable, and disable services using systemctl. * Read system logs: Filter and interpret logs by time range, service, and priority. * Use text editors: Comfortably edit configuration files using a terminal editor. * Manage packages: Install, remove, and update software packages and understand repositories. * Handle dependencies: Recognize dependency conflicts and resolve common package management errors. * Use SSH: Connect to remote systems, copy files securely, and understand basic key handling. * Manage file ownership: Change ownership and groups and understand how this affects access. * Understand mounts: Inspect mounted filesystems and troubleshoot mount failures and permission issues. * Work with block devices: Identify disks and partitions and understand common naming conventions. * Use loop devices: Attach and detach disk images using loop devices for inspection and recovery. * Understand system resources: Check CPU, RAM, and I/O usage and identify common bottlenecks. * Use cron or timers: Schedule tasks and understand the difference between cron jobs and systemd timers. * Manage environment variables: Inspect and set environment variables for troubleshooting and configuration. * Understand PATH and executables: Know how commands are located and why scripts may not run as expected. * Handle permissions errors: Diagnose "permission denied" and "operation not permitted" errors correctly. * Use virtualization basics: Understand the difference between host and guest and common VM device concepts. * Backup and restore: Create backups, verify them, and perform a basic restore without data loss. * Recognize storage failure signs: Identify early warning signs and know when to run diagnostic tools and replace hardware. * GnuPG * Sequoia-PGP == Qubes only == * Understand the /rw folder: Know what persists across reboots and what does not. * Edit startup scripts: Use gsudoedit to edit /rw/config/rc.local safely and understand when it runs. * Understand TemplateVMs: Know what a TemplateVM is and how updates propagate to AppVMs. * Understand AppVMs vs StandaloneVMs: Choose the right VM type based on persistence and update needs. * Use DisposableVMs: Use DisposableVMs for risky activities and understand their lifecycle. * Understand qubes networking: Know how NetVMs and firewall settings affect connectivity. * Use Qubes firewall rules: Configure per-VM firewall rules and verify they take effect. * Manage VM storage: Understand private storage, template root, and how to resize VM volumes safely. * Troubleshoot qrexec basics: Recognize common qrexec policy issues and where to look for errors. * Use split GPG: Use split GPG workflows and understand trust boundaries. * Use split SSH: Use split SSH workflows and understand how agent forwarding is handled. * Recover from VM issues: Start VMs from the command line and troubleshoot common startup failures. {{reflist|close=1}} {{Footer}} [[Category:Documentation]] [[Category:MultiWiki]]