How to start gparted with root privileges on Debian when gksu has been removed from the system.

The Problem

Debian and Ubuntu have removed gksu from their repositories, making it more challenging to run GUI applications like gparted with root privileges. When you try to run gparted as root, you may encounter X11 permission issues.

The Solution

Follow these steps to properly start gparted with root privileges:

Step 1: Allow Root Access to X11

As a regular user, run:

xhost +si:localuser:root

This command allows the root user to access your X11 display.

Step 2: Switch to Root

su -

Step 3: Start gparted

DISPLAY=:0 gparted

How It Works

  1. xhost +si:localuser:root: Grants the root user permission to access your X11 session
  2. su -: Switches to root user with a clean environment
  3. DISPLAY=:0 gparted: Explicitly sets the display environment variable and starts gparted

Why This is Necessary

  • Modern Debian/Ubuntu systems have enhanced security that prevents root from directly accessing user X11 sessions
  • The removal of gksu means we need manual permission management
  • This approach maintains security while allowing necessary administrative GUI access

Alternative Approaches

You could also use:

# Using sudo with preserved environment
sudo -E gparted

# Or using pkexec (if available)
pkexec gparted

However, the xhost approach is more reliable across different system configurations and ensures proper X11 access for the root user.

Security Note

Remember to revoke the X11 access after you’re done:

xhost -si:localuser:root

This removes the permission granted to root, maintaining system security.