Saving a payment receipt, documenting a bug, capturing lesson notes from a virtual class — whatever the reason, knowing how to take a screenshot on Linux is one of those skills that pays off regularly. Linux handles screenshots differently depending on your desktop environment and whether you are running an X11 or Wayland session. This guide covers keyboard shortcuts, command-line tools, and GUI apps so you can choose the approach that fits your workflow.

Keyboard Shortcuts to Take a Screenshot on Linux

The fastest way to capture your display is through built-in key combinations. All major Linux desktop environments recognize PrtScr as the default key for a full-screen capture, though what happens next varies by environment.

GNOME Screenshot Shortcuts

On GNOME, pressing PrtScr opens an interactive overlay. You can choose the full screen, a single window, or a drawn region before committing to the capture. The file saves automatically to ~/Pictures/Screenshots. Alt+PrtScr grabs only the active window. Ctrl+PrtScr sends the capture to the clipboard without saving a file.

Key CombinationWhat It CapturesWhere It Goes
PrtScrOpens capture overlay (full, window, or region)~/Pictures/Screenshots
Alt + PrtScrActive window only~/Pictures/Screenshots
Shift + PrtScrSelected region (drawn with mouse)~/Pictures/Screenshots
Ctrl + PrtScrFull screen to clipboardClipboard

KDE Plasma Shortcuts Using Spectacle

KDE Plasma ships Spectacle as its screenshot tool. PrtScr opens the Spectacle interface with a capture already taken. From there, you can crop, annotate with arrows or text, and save to a custom folder. Shift+PrtScr captures the current window. Meta+Shift+PrtScr saves the full desktop directly without opening the interface.

Xfce Shortcuts

Xfce uses xfce4-screenshooter. The default PrtScr key opens a dialog asking what to capture. If you want to skip the dialog entirely, navigate to Settings Manager > Keyboard > Application Shortcuts and bind xfce4-screenshooter -f to a key — this captures the full screen immediately without any prompt.

How to Take a Screenshot on Linux from the Command Line

Command-line tools give you more control over naming, timing, and automation. Two options work on X11 sessions: scrot and ImageMagick’s import command. For users who rely on a terminal emulator daily, either tool integrates well into shell scripts.

Taking a Screenshot with scrot

scrot (SCReenshOT) is a lightweight X11 utility. Running scrot with no flags captures the full screen and saves a PNG file with a timestamp name in the current directory. A few useful flags:

scrot -u screenshot.png          # captures the focused window
scrot -s screenshot.png          # draw a selection with the mouse
scrot -d 5 screenshot.png        # waits 5 seconds before capturing

The delay flag is especially useful for menus and tooltips that disappear on click. scrot also accepts strftime format strings for filenames, so scrot '%Y-%m-%d_$wx$h.png' generates a file named by date and resolution automatically.

Taking a Screenshot with ImageMagick import

The import command is part of the ImageMagick suite. Running import -window root screenshot.png grabs the entire screen. Without the -window root argument, the cursor becomes crosshairs for a manual region selection. It also accepts a window ID if you want to capture a specific application window.

Screenshot tools by primary use case — X11 vs Wayland compatibility

GNOME PrtScr overlay
X11 + Wayland
KDE Spectacle
X11 + Wayland
Flameshot
X11 + Wayland (config needed)
scrot
X11 only
ImageMagick import
X11 only
grim + slurp
Wayland only

Third-Party Linux Screenshot Tools

Flameshot

Flameshot works on both X11 and Wayland (with some portal configuration on Wayland). After installing, running flameshot gui launches an interactive overlay where you can highlight, blur sensitive data, draw arrows, and add text before saving. It also supports uploading directly to cloud storage from the same interface.

On GNOME Wayland, Flameshot requires permission via xdg-desktop-portal. Run flatpak permission-set screenshot screenshot org.flameshot.Flameshot yes if you installed it as a Flatpak.

GIMP

GIMP has a built-in screenshot function at File > Create > Screenshot. You can set a capture delay and choose between full screen, active window, or selected region. GIMP opens the result as a new editable image rather than saving immediately — useful when you need to crop or annotate before export.

Wayland Screenshot Tools: grim and slurp

X11-specific tools like scrot stop working when you switch to a Wayland session. For wlroots-based compositors such as Sway or Hyprland, grim handles full-screen and output captures while slurp provides the interactive region selection. A combined command looks like this:

grim -g "$(slurp)" ~/Pictures/screenshot.png

GNOME and KDE both handle Wayland screenshots natively through their built-in tools, so grim is mainly relevant for minimal window managers. The Xorg display server documentation covers why X11 and Wayland tools diverge at the protocol level, which matters if you are debugging capture issues on mixed setups.

Practical Tips for Linux Screen Captures

Close unnecessary windows before capturing to keep the frame clean. Adjust your screen resolution and brightness for sharper output. Use PNG for lossless quality — JPEG is fine for file size when exact pixel fidelity does not matter. Mask any private data visible on screen before sharing. Keep saved files in named subfolders rather than dumping everything into Pictures.

To capture dropdown menus or hover states that disappear on click, use a delay: scrot -d 3 gives you 3 seconds to trigger the state before capture. GNOME’s built-in tool also has a delay slider for the same purpose.

FAQs

How do I take a screenshot on Linux without installing anything?

Press PrtScr on GNOME, KDE, or Xfce. All three desktop environments include a built-in screenshot tool that activates immediately with that key — no installation needed. Captures save to ~/Pictures or ~/Pictures/Screenshots.

What is the best command-line screenshot tool for Linux?

scrot is the most widely used command-line option on X11 sessions. For Wayland, grim combined with slurp covers full-screen and region captures without a GUI.

Why does scrot not work on my Linux machine?

scrot requires an X11 session. If you are on Wayland, it will fail silently or throw an error. Run echo $XDG_SESSION_TYPE in a terminal to check which session you are on.

Where are screenshots saved on Linux by default?

GNOME saves to ~/Pictures/Screenshots. Spectacle on KDE saves to ~/Pictures by default, with an option to change the folder in settings. scrot and ImageMagick save to the current working directory unless you specify a path.

Can I take a full scrolling page screenshot on Linux?

Firefox on Linux supports full-page screenshots via right-click > Take Screenshot, then selecting “Save full page.” For Chrome or Chromium, open DevTools with Ctrl+Shift+I, press Ctrl+Shift+P, type “screenshot,” and select “Capture full size screenshot.”

Willie has over 15 years of experience in Linux system administration and DevOps. After managing infrastructure for startups and enterprises alike, he founded Command Linux to share the practical knowledge he wished he had when starting out. He oversees content strategy and contributes guides on server management, automation, and security.