# Install Failed - email not configured

**URL:** https://meta.discourse.org/t/install-failed-email-not-configured/27245
**Category:** Self-hosting
**Created:** [2015年四月6日 13:32 UTC](https://meta.discourse.org/t/install-failed-email-not-configured/27245 "2015-04-06T13:32:45Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![WaltGiroir](https://avatars.discourse-cdn.com/v4/letter/w/b9e5f3/32.png) [@WaltGiroir](https://meta.discourse.org/u/WaltGiroir)
#### Post date: [2015年四月6日 13:32 UTC](https://meta.discourse.org/t/install-failed-email-not-configured/27245/1 "2015-04-06T13:32:45Z")

</div>

From clean version of Ubuntu 14.04 LTS, here is the error from the install

* * *

```
Success. You can now start the database server using:

    /usr/lib/postgresql/9.3/bin/postgres -D /shared/postgres_data
or
    /usr/lib/postgresql/9.3/bin/pg_ctl -D /shared/postgres_data -l logfile start

I, [2015-04-06T13:04:51.648386 #45] INFO -- : > chown -R postgres:postgres /shared/postgres_data
I, [2015-04-06T13:04:51.664015 #45] INFO -- : 
I, [2015-04-06T13:04:51.664199 #45] INFO -- : > chown -R postgres:postgres /var/run/postgresql
I, [2015-04-06T13:04:51.678834 #45] INFO -- : 
I, [2015-04-06T13:04:51.679594 #45] INFO -- : > /root/upgrade_postgres
I, [2015-04-06T13:04:51.694165 #45] INFO -- : 
I, [2015-04-06T13:04:51.694733 #45] INFO -- : > rm /root/upgrade_postgres
I, [2015-04-06T13:04:51.704441 #45] INFO -- : 
I, [2015-04-06T13:04:51.706267 #45] INFO -- : Replacing data_directory = '/var/lib/postgresql/9.3/main' with data_directory = '/shared/postgres_data' in /etc/postgresql/9.3/main/postgresql.conf
I, [2015-04-06T13:04:51.707298 #45] INFO -- : Replacing (?-mix:#?listen_addresses *=.*) with listen_addresses = '*' in /etc/postgresql/9.3/main/postgresql.conf
I, [2015-04-06T13:04:51.708702 #45] INFO -- : Replacing (?-mix:#?synchronous_commit *=.*) with synchronous_commit = $db_synchronous_commit in /etc/postgresql/9.3/main/postgresql.conf
I, [2015-04-06T13:04:51.709394 #45] INFO -- : Replacing (?-mix:#?shared_buffers *=.*) with shared_buffers = $db_shared_buffers in /etc/postgresql/9.3/main/postgresql.conf
I, [2015-04-06T13:04:51.709981 #45] INFO -- : Replacing (?-mix:#?work_mem *=.*) with work_mem = $db_work_mem in /etc/postgresql/9.3/main/postgresql.conf
I, [2015-04-06T13:04:51.710597 #45] INFO -- : Replacing (?-mix:#?default_text_search_config *=.*) with default_text_search_config = '$db_default_text_search_config' in /etc/postgresql/9.3/main/postgresql.conf
I, [2015-04-06T13:04:51.711392 #45] INFO -- : > install -d -m 0755 -o postgres -g postgres /shared/postgres_backup
I, [2015-04-06T13:04:51.721940 #45] INFO -- : 
I, [2015-04-06T13:04:51.722459 #45] INFO -- : Replacing (?-mix:#?max_wal_senders *=.*) with max_wal_senders = 4 in /etc/postgresql/9.3/main/postgresql.conf
I, [2015-04-06T13:04:51.723326 #45] INFO -- : Replacing (?-mix:#?wal_level *=.*) with wal_level = hot_standby in /etc/postgresql/9.3/main/postgresql.conf
I, [2015-04-06T13:04:51.724513 #45] INFO -- : Replacing (?-mix:^#local +replication +postgres +peer$) with local replication postgres peer in /etc/postgresql/9.3/main/pg_hba.conf
I, [2015-04-06T13:04:51.725340 #45] INFO -- : Replacing (?-mix:^host.*all.*all.*127.*$) with host all all 0.0.0.0/0 md5 in /etc/postgresql/9.3/main/pg_hba.conf
I, [2015-04-06T13:04:51.726423 #45] INFO -- : > HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/9.3/bin/postmaster -D /etc/postgresql/9.3/main
I, [2015-04-06T13:04:51.753588 #45] INFO -- : > sleep 5
2015-04-06 13:04:51 UTC [118-1] LOG: database system was shut down at 2015-04-06 13:04:51 UTC
2015-04-06 13:04:51 UTC [122-1] LOG: autovacuum launcher started
2015-04-06 13:04:51 UTC [115-1] LOG: database system is ready to accept connections
I, [2015-04-06T13:04:56.769954 #45] INFO -- : 
I, [2015-04-06T13:04:56.772768 #45] INFO -- : > su postgres -c 'createdb discourse' || true
I, [2015-04-06T13:04:57.097411 #45] INFO -- : 
I, [2015-04-06T13:04:57.098704 #45] INFO -- : > su postgres -c 'psql discourse -c "create user discourse;"' || true
I, [2015-04-06T13:04:57.204210 #45] INFO -- : CREATE ROLE

I, [2015-04-06T13:04:57.205478 #45] INFO -- : > su postgres -c 'psql discourse -c "grant all privileges on database discourse to discourse;"' || true
I, [2015-04-06T13:04:57.306197 #45] INFO -- : GRANT

I, [2015-04-06T13:04:57.307553 #45] INFO -- : > su postgres -c 'psql discourse -c "alter schema public owner to discourse;"'
I, [2015-04-06T13:04:57.406860 #45] INFO -- : ALTER SCHEMA

I, [2015-04-06T13:04:57.408347 #45] INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists hstore;"'
I, [2015-04-06T13:04:57.534395 #45] INFO -- : CREATE EXTENSION

I, [2015-04-06T13:04:57.536087 #45] INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists pg_trgm;"'
I, [2015-04-06T13:04:57.646119 #45] INFO -- : CREATE EXTENSION

I, [2015-04-06T13:04:57.647680 #45] INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists hstore;"'
I, [2015-04-06T13:04:57.773218 #45] INFO -- : CREATE EXTENSION

I, [2015-04-06T13:04:57.774521 #45] INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists pg_trgm;"'
I, [2015-04-06T13:04:57.885054 #45] INFO -- : CREATE EXTENSION

I, [2015-04-06T13:04:57.887659 #45] INFO -- : > sudo -u postgres psql discourse
I, [2015-04-06T13:04:57.901331 #45] INFO -- : update pg_database set encoding = pg_char_to_encoding('UTF8') where datname = 'discourse' AND encoding = pg_encoding_to_char('SQL_ASCII');

2015-04-06 13:04:57 UTC [214-1] postgres@discourse ERROR: invalid input syntax for integer: "SQL_ASCII" at character 126
2015-04-06 13:04:57 UTC [214-2] postgres@discourse STATEMENT: update pg_database set encoding = pg_char_to_encoding('UTF8') where datname = 'discourse' AND encoding = pg_encoding_to_char('SQL_ASCII');
ERROR: invalid input syntax for integer: "SQL_ASCII"
LINE 1: ... = 'discourse' AND encoding = pg_encoding_to_char('SQL_ASCII...
                                                             ^
I, [2015-04-06T13:04:58.024196 #45] INFO -- : File > /var/lib/postgresql/take-database-backup chmod: +x
I, [2015-04-06T13:04:58.040752 #45] INFO -- : File > /var/spool/cron/crontabs/postgres chmod: 
I, [2015-04-06T13:04:58.041634 #45] INFO -- : > echo postgres installed!
I, [2015-04-06T13:04:58.056435 #45] INFO -- : postgres installed!

I, [2015-04-06T13:04:58.087539 #45] INFO -- : File > /etc/service/redis/run chmod: +x
I, [2015-04-06T13:04:58.117823 #45] INFO -- : File > /etc/runit/3.d/10-redis chmod: +x
I, [2015-04-06T13:04:58.119364 #45] INFO -- : Replacing daemonize yes with in /etc/redis/redis.conf
I, [2015-04-06T13:04:58.120657 #45] INFO -- : Replacing (?-mix:^pidfile.*$) with in /etc/redis/redis.conf
I, [2015-04-06T13:04:58.122196 #45] INFO -- : > install -d -m 0755 -o redis -g redis /shared/redis_data
I, [2015-04-06T13:04:58.137861 #45] INFO -- : 
I, [2015-04-06T13:04:58.138601 #45] INFO -- : Replacing (?-mix:^logfile.*$) with logfile "" in /etc/redis/redis.conf
I, [2015-04-06T13:04:58.139669 #45] INFO -- : Replacing (?-mix:^dir .*$) with dir /shared/redis_data in /etc/redis/redis.conf
I, [2015-04-06T13:04:58.141051 #45] INFO -- : > echo redis installed
I, [2015-04-06T13:04:58.154658 #45] INFO -- : redis installed

I, [2015-04-06T13:04:58.155731 #45] INFO -- : > /usr/local/bin/ruby -e 'if ENV["DISCOURSE_SMTP_ADDRESS"] == "smtp.example.com"; puts "Aborting! Mail is not configured!"; exit 1; end'
I, [2015-04-06T13:04:58.242444 #45] INFO -- : Aborting! Mail is not configured!

I, [2015-04-06T13:04:58.242960 #45] INFO -- : Terminating async processes
I, [2015-04-06T13:04:58.243120 #45] INFO -- : Sending INT to HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/9.3/bin/postmaster -D /etc/postgresql/9.3/main pid: 115
2015-04-06 13:04:58 UTC [115-2] LOG: received fast shutdown request
2015-04-06 13:04:58 UTC [115-3] LOG: aborting any active transactions
2015-04-06 13:04:58 UTC [122-2] LOG: autovacuum launcher shutting down
2015-04-06 13:04:58 UTC [119-1] LOG: shutting down
2015-04-06 13:04:58 UTC [119-2] LOG: database system is shut down

FAILED
--------------------
RuntimeError: /usr/local/bin/ruby -e 'if ENV["DISCOURSE_SMTP_ADDRESS"] == "smtp.example.com"; puts "Aborting! Mail is not configured!"; exit 1; end' failed with return #<Process::Status: pid 225 exit 1>
Location of failure: /pups/lib/pups/exec_command.rb:105:in `spawn'
exec failed with the params "/usr/local/bin/ruby -e 'if ENV[\"DISCOURSE_SMTP_ADDRESS\"] == \"smtp.example.com\"; puts \"Aborting! Mail is not configured!\"; exit 1; end'"
2a8849eeaf33bc6a452bdf0bcc6427707ed7e05873719f70a60cbc896f2d570e
FAILED TO BOOTSTRAP

```

---

<div class="post-metadata">

### Author: ![riking](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/riking/32/170938_2.png) [@riking](https://meta.discourse.org/u/riking)
#### Post date: [2015年四月6日 16:56 UTC](https://meta.discourse.org/t/install-failed-email-not-configured/27245/2 "2015-04-06T16:56:32Z")

</div>

> [@WaltGiroir](#):
>
> `I, [2015-04-06T13:04:58.155731 #45] INFO -- : &gt; /usr/local/bin/ruby -e 'if ENV["DISCOURSE_SMTP_ADDRESS"] == "smtp.example.com"; puts "Aborting! Mail is not configured!"; exit 1; end'`  
> `I, [2015-04-06T13:04:58.242444 #45] INFO -- : Aborting! Mail is not configured!`

Here’s the real error. Your mail is not configured.

---

<div class="post-metadata">

### Author: ![WaltGiroir](https://avatars.discourse-cdn.com/v4/letter/w/b9e5f3/32.png) [@WaltGiroir](https://meta.discourse.org/u/WaltGiroir)
#### Post date: [2015年四月6日 20:26 UTC](https://meta.discourse.org/t/install-failed-email-not-configured/27245/3 "2015-04-06T20:26:05Z")

</div>

Yes Indeed. Having a correct configuration works. I had made the changes but left the fields commented.

Another Id10t error

---

<div class="post-metadata">

### Author: ![codinghorror](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/codinghorror/32/110067_2.png) [@codinghorror](https://meta.discourse.org/u/codinghorror)
#### Post date: [2015年四月7日 03:36 UTC](https://meta.discourse.org/t/install-failed-email-not-configured/27245/4 "2015-04-07T03:36:48Z")

</div>

As @riking has pointed out, we bury the actual error in Unix console line noise bullshit. Any way to suppress the noise here and have the error stand out more @sam?

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [2017年二月28日 18:13 UTC](https://meta.discourse.org/t/install-failed-email-not-configured/27245/5 "2017-02-28T18:13:25Z")

</div>

I think now that we use the `discourse-setup` script this issue is mostly sorted.
