Une solution, basée sur l'idée de samcarter, mais recourant aux fonctionnalités du package `xparse` (récemment intégrées dans le au noyau LaTeX).
\documentclass{article}
\usepackage{xparse} % Inutile avec les versions récentes de LaTeX
\usepackage{empheq}
\NewDocumentEnvironment { system } { +b }
{
\begin{subequations}
\begin{empheq}[left=\empheqlbrace]{alignat=2}
#1
\end{empheq}
\end{subequations}
}{
}
\begin{document}
\begin{system}
x & + y & & = 2 \\
x & & & = 1 \\
& & 2z & = 4
\end{system}
\end{document}