If entering the following command on a text console not running under X, gpg tries to use pinentry dialog for password entry: legolas / # echo Hallo | gpg -a --symmetric can't connect to `/root/.gnupg/S.gpg-agent': No such file or directory pinentry-gtk2: no LC_CTYPE known - assuming UTF-8 pinentry-gtk2: no LC_CTYPE known - assuming UTF-8 pinentry-gtk2: no LC_CTYPE known - assuming UTF-8 pinentry-gtk2: no LC_CTYPE known - assuming UTF-8 There is no chance to enter a password because the dialog box doesn't show up. When used without pipe, ncurses dialog is shown and everything works correctly: legolas / # gpg -a --symmetric +-----------------------------------------------------+ | Enter passphrase | | | | | | Passphrase ________________________________________ | | | | <OK> <Cancel> | +-----------------------------------------------------+ This happens as well with gnupg-2.0.9. Reproducible: Always Actual Results: eix gnupg [I] app-crypt/gnupg Available versions: 1.4.7-r1 ~1.4.8-r1 ~1.4.9 2.0.7-r1 ~2.0.9 {bindist bzip2 curl doc ecc idea ldap linguas_ru nls openct pcsc-lite readline selinux smartcard static usb zlib} Installed versions: 2.0.7-r1(08-04-14 15:13)(bzip2 ldap nls -doc -openct -pcsc-lite -selinux -smartcard) Portage 2.1.4.4 (default-linux/amd64/2007.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.24-gentoo_dazuko-patch-r4-devel x86_64) ================================================================= System uname: 2.6.24-gentoo_dazuko-patch-r4-devel x86_64 Intel(R) Core(TM)2 Duo CPU T8100 @ 2.10GHz Timestamp of tree: Mon, 14 Apr 2008 12:17:01 +0000 ccache version 2.4 [enabled] app-shells/bash: 3.2_p17-r1 dev-java/java-config: 1.3.7, 2.1.4 dev-lang/python: 2.5.1-r5 dev-util/ccache: 2.4-r7 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.61-r1 sys-devel/automake: 1.4_p6, 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1 sys-devel/binutils: 2.18-r1 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.23-r3 ACCEPT_KEYWORDS="amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=nocona -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/bin/mygenkernel /usr/sbin/run-crons" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-march=nocona -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="ccache collision-protect distlocks fixpackages metadata-transfer parallel-fetch sandbox sfperms strict test unmerge-orphans userfetch userpriv usersandbox" GENTOO_MIRRORS="ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ ftp://pandemonium.tiscali.de/pub/gentoo/ ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/ ftp://gd.tuwien.ac.at/opsys/linux/gentoo/ ftp://gentoo.inode.at/source/" LINGUAS="en de" MAKEOPTS="-j5" PKGDIR="/home/ftp/binpkg/" PORTAGE_COMPRESS="" PORTAGE_RSYNC_EXTRA_OPTS="--timeout=500" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage/layman/alon-barlev /usr/local/portage/layman/haskell /usr/local/portage/layman/sunrise /usr/local/portage/layman/science /usr/local/portage/layman/connectical-contrib /usr/local/portage/modified /usr/local/portage/own" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X Xaw3d a52 aac aalib accessibility acl acpi alsa amd64 amr amrnb amrr amrwb apm async audacious audiofile bash-completion berkdb bindist bl bluetooth branding bzip2 cairo cardbus cjk cli cpudetection cracklib crypt css ctype cups dbus dga divx dri dvd dvdr dvdread eds encode evo exif expat extensions fam fbcon fbcondecor fbsplash ffmpeg flac foomaticdb force-cgi-redirect fortran ftp gd gdbm gedit gif gimp gimpprint glade glibc-omitfp glitz gmedia gmp gnutls gphoto2 gs gsm gtk gtkhtml guile hddtemp hdf5 iconv icq icu idn ieee1394 imagemagick imap imlib iproute2 ipw4965 isdnlog jack java javascript jikes jpeg jpeg2k kerberos keyscrub kpathsea latex lcms ldap libcaca libnotify libwww live lm_sensors logrotate loop-aes lzo mad memlimit midi mikmod mime mmx mmxext mng motif mp2 mp3 mp4 mpeg mudflap musepack ncurses nls nntp nptl nptlonly nsplugin nvidia ogg opengl pam pch pcmcia pcre pda pdf perl plotutils png posix postgres ppds pppd print python quicktime readline realmedia reflection ruby rubytests samba sasl sdl server session simplexml slang sndfile soap sockets speex spell spl sse sse2 ssl ssse3 suhosin svg swat syslog tcpd tetex tga theora tiff truetype unicode usb userlocales v4l v4l2 vcd vim-syntax vim-with-x vorbis wifi winbind wma wmf wmp wxwindows x264 xanim xine xinetd xml xorg xpm xsl xulrunner xv xvid xvmc zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="fuji ptp2" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en de" USERLAND="GNU" VIDEO_CARDS="nvidia" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_COMPRESS_FLAGS
This is by design. Please discuss this on upstream mailing list. If there is no console stdin it will not able to show you dialogs. You can use something like: $ echo Hello | gpg -a --symmetric --batch --passphrase 'asd'
I had the same problem, and found this solution. Edit ~/.gnupg/gpg-agent.conf and add : pinentry-program /usr/bin/pinentry-curses This would pop up a command line interface for the password.