Euler is ETH Zurich's shared research-computing service. A connection can fail on your computer, at the SSH login, or after Slurm assigns a compute node. Start with the observed error and the named step rather than replacing keys or files.
Goal: identify the failing step, run only safe diagnostics, and return to the main numbered procedure without overwriting working configuration or data.
Prerequisites: record the exact symptom and whether it occurred on the local computer, Euler login node, or allocated compute node.
New to text commands? Read how to open a terminal and run one command before using a command block. It explains the labels used below and what to copy.
Execution context: use the computer and command window stated in the linked main guide. Command blocks containing angle-bracket values are templates, not literal copy-paste commands. On your own terminal, replace each value with the actual username, path, or job ID needed by that command. Redact personal information and private paths only from the copy you share for help, after running it.
Never paste passwords, tokens, private keys, or confidential data into an issue or agent chat. Record job IDs and error text only after removing credentials, personal information, private paths, and research data.
SSH Times Out#
Likely cause: the computer is outside the ETH network.
- Connect to ETH VPN.
- Retry
ssh <eth-username>@euler.ethz.ch. - Check the Euler system status.
Password Login Works But key-ok Fails#
Do not generate another key immediately.
- Return to step 5 of the numbered Euler access mission.
- Compare the two fingerprints without changing either key file.
- If they match, keep the pair and install only its existing
.pubfile. - Repeat the direct key-only test with the same short ETH username.
- Stop and request help if the pair is incomplete, the fingerprints differ, or the private key cannot be read.
Do not add another IdentityFile, invent a timestamped replacement, or use a
file ending in .pub as the private key.
Windows Public-Key Installation Reports grep Errors#
Symptom: after the ETH password, the older install command prints
grep: ... No such file or directory, possibly followed by
public-key-installedn. This is a command-quoting failure, not evidence that
the Windows profile must be renamed. The old success message could appear
even when installation failed.
Goal: install the existing public key while preserving other authorized keys. Use the same Windows computer and PowerShell window as the access mission, with the existing key pair and working password login.
- Keep both local key files and Euler's existing
authorized_keysfile. Do not generate another pair, move the keys, or delete existing entries. - Open the current
Euler access mission
and run its corrected Install only the public key Windows block.
The corrected block contains
$ScriptData; do not repeat the older block. - Expect
public-key-installedwith no error. Repeating the corrected block does not duplicate an exact key line. It preserves any malformed lines left by the older command rather than guessing which entries to remove. - Run the mission's Prove direct key-only access step. Continue only
after
key-ok, then configure and test theeuleralias as instructed. A key passphrase prompt is normal; an ETH password prompt is not.
If either step fails, stop and request help with the sanitized error and the
outputs of $PSVersionTable.PSVersion.ToString() and ssh -V. Do not share
key contents, passwords, or unredacted personal paths. An installation marker
alone does not prove that SSH authentication works.
Bad configuration option Or Extra arguments#
The SSH config has malformed syntax, commonly two host blocks joined on one line or a misspelled keyword.
- Stop adding configuration.
- Read the exact filename and line number in the error.
- Open the backup made by the numbered procedure.
- Ensure every
Host,HostName,User, and option starts on a separate line. - Validate with
ssh -G eulerbefore retrying a connection.
Do not replace the whole .ssh directory.
UNPROTECTED PRIVATE KEY FILE#
If the warning names a .pub file, the configuration incorrectly treats the
public key as the private key. Correct IdentityFile; do not make the public
key secret.
If it names the actual private key, apply the operating-system permission step from Euler access.
Tunnel Requests An ETH Password#
euler-tunnel uses the verified euler alias for its proxy connection. Stop
and make the final public-key-only config-ok alias test pass first. The SSH
key passphrase is expected; the ETH account password is not.
VS Code Appears To Install Software On Euler#
Remote - SSH installs VS Code Server under ~/.vscode-server in your Euler
home. Output containing Downloading, Starting VS Code CLI, and
listeningOn==127.0.0.1:... is normal. Wait for startup. This is not a GPU job
or a system-wide installation.
Terminal Tunnel Works But VS Code Fails#
Do not regenerate keys or replace SSH configuration that already passes the
local hostname test. Follow the
VS Code config-file check,
then retry the same euler-tunnel host. Do not enable password authentication
as a workaround.
Job Remains Pending#
Replace the placeholders before running these command templates:
myjobs -j <job-id>
squeue -j <job-id> -o '%.18i %.2t %.30R'
Read the pending reason. Do not submit duplicates. Large/specific requests may wait longer. A QOS/account limit clears only when relevant capacity is free or an administrator changes policy.
An array cap applies only to that one array. Five active arrays capped at %1
can still make five tasks eligible at once. Inspect your complete queue before
submitting another array.
Job Fails Immediately#
Replace both placeholders before running these command templates:
sacct -j <job-id> --format=JobID,State,ExitCode,Elapsed,ReqMem,MaxRSS
cat logs/<job-log>
Check paths, environment activation, executable names, input files, and the first real error. Do not hide the failure by requesting more resources.
OUT_OF_MEMORY#
Inspect MaxRSS, application behavior, task count, and input size. Fix an
unexpected memory leak or duplication before increasing memory. Then run a
small representative case and add justified headroom.
GPU Is Allocated But Mostly Idle#
Confirm the program placed tensors/work on the GPU. Inspect nvidia-smi, CPU
utilization, data-loader workers, storage throughput, and preprocessing. Do not
request another GPU until the single-GPU bottleneck is understood.
Quota Or File-Creation Failure#
lquota
lquota /cluster/work/fuge
Check both capacity and file-count limits. Avoid deleting unfamiliar shared data. Contact the data owner when ownership is unclear.
Shared Folder Is Not Writable#
Replace the placeholder with the exact approved project path:
ls -ld <project-path>
getfacl <project-path>
id
Ask the data owner to repair the specific project directory. Do not run
recursive chmod 777 or change the group of the whole share.
Escalation Packet#
Provide:
Local OS and shell:
Where command ran:
Documentation section:
Command with private information removed:
Exact error:
Job ID, if relevant:
Safe checks already attempted:
Contact ETH HPC support for account, service, or scheduler issues outside lab control.
Verification#
- The symptom is attached to the correct local/login/compute context.
- No credential, private key, confidential data, or unrelated job history was exposed while diagnosing it.
- The fix returns to the main access, Slurm, storage, or tunnel procedure.
- Any job or tunnel started for diagnosis is accounted for and stopped when no longer needed.