How to Install erlang on Ubuntu 18.04 LTS

本文详细介绍了在Ubuntu18.04 LTS上安装Erlang的步骤,包括添加签名密钥、源列表文件,更新包列表以及安装Erlang及其相关组件的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Install erlang to Ubuntu 18.04 LTS

1. Add Signing Key

wget -O - "https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc" | sudo apt-key add -

2. Add Source List File

sudo sh -c 'echo "deb http://dl.bintray.com/rabbitmq/debian bionic erlang" >> /etc/apt/sources.list.d/erlang.list'

3. Update

sudo apt update

4. Install

lwk@qwfys:~$ sudo apt install erlang
[sudo] password for ubuntu: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  emacsen-common erlang-asn1 erlang-base erlang-common-test erlang-crypto erlang-debugger erlang-dev erlang-dialyzer erlang-diameter erlang-edoc erlang-eldap erlang-erl-docgen erlang-et erlang-eunit erlang-examples erlang-inets
  erlang-jinterface erlang-megaco erlang-mnesia erlang-mode erlang-observer erlang-odbc erlang-os-mon erlang-parsetools erlang-public-key erlang-reltool erlang-runtime-tools erlang-snmp erlang-src erlang-ssh erlang-ssl
  erlang-syntax-tools erlang-tools erlang-wx erlang-xmerl javascript-common libglu1-mesa libjs-jquery libjs-jquery-metadata libjs-jquery-tablesorter libodbc1
Suggested packages:
  erlang-manpages erlang-doc xsltproc fop libmyodbc odbc-postgresql tdsodbc unixodbc-bin
The following NEW packages will be installed:
  emacsen-common erlang erlang-asn1 erlang-base erlang-common-test erlang-crypto erlang-debugger erlang-dev erlang-dialyzer erlang-diameter erlang-edoc erlang-eldap erlang-erl-docgen erlang-et erlang-eunit erlang-examples erlang-inets
  erlang-jinterface erlang-megaco erlang-mnesia erlang-mode erlang-observer erlang-odbc erlang-os-mon erlang-parsetools erlang-public-key erlang-reltool erlang-runtime-tools erlang-snmp erlang-src erlang-ssh erlang-ssl
  erlang-syntax-tools erlang-tools erlang-wx erlang-xmerl javascript-common libglu1-mesa libjs-jquery libjs-jquery-metadata libjs-jquery-tablesorter libodbc1
0 upgraded, 42 newly installed, 0 to remove and 10 not upgraded.
Need to get 21.6 MB/36.9 MB of archives.
After this operation, 106 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-inets amd64 1:21.1.1-1 [611 kB]
Get:2 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-et amd64 1:21.1.1-1 [177 kB]                                                                                                                                          
Get:3 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-observer amd64 1:21.1.1-1 [872 kB]                                                                                                                                    
Get:4 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-snmp amd64 1:21.1.1-1 [1564 kB]                                                                                                                                       
Get:5 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-ssh amd64 1:21.1.1-1 [662 kB]                                                                                                                                         
Get:6 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-syntax-tools amd64 1:21.1.1-1 [377 kB]                                                                                                                                
Get:7 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-tools amd64 1:21.1.1-1 [526 kB]                                                                                                                                       
Get:8 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-xmerl amd64 1:21.1.1-1 [994 kB]                                                                                                                                       
Get:9 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-common-test amd64 1:21.1.1-1 [1062 kB]                                                                                                                                
Get:10 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-dialyzer amd64 1:21.1.1-1 [704 kB]                                                                                                                                   
Get:11 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-diameter amd64 1:21.1.1-1 [677 kB]                                                                                                                                   
Get:12 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-edoc amd64 1:21.1.1-1 [314 kB]                                                                                                                                       
Get:13 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-eldap amd64 1:21.1.1-1 [132 kB]                                                                                                                                      
Get:14 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-erl-docgen amd64 1:21.1.1-1 [152 kB]                                                                                                                                 
Get:15 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-eunit amd64 1:21.1.1-1 [166 kB]                                                                                                                                      
Get:16 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-megaco amd64 1:21.1.1-1 [5484 kB]                                                                                                                                    
Get:17 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-odbc amd64 1:21.1.1-1 [78.2 kB]                                                                                                                                      
Get:18 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-os-mon amd64 1:21.1.1-1 [123 kB]                                                                                                                                     
Get:19 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-parsetools amd64 1:21.1.1-1 [183 kB]                                                                                                                                 
Get:20 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-reltool amd64 1:21.1.1-1 [360 kB]                                                                                                                                    
Get:21 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang all 1:21.1.1-1 [36.0 kB]                                                                                                                                             
Get:22 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-examples all 1:21.1.1-1 [937 kB]                                                                                                                                     
Get:23 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-jinterface all 1:21.1.1-1 [129 kB]                                                                                                                                   
Get:24 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-mode all 1:21.1.1-1 [108 kB]                                                                                                                                         
Get:25 http://dl.bintray.com/rabbitmq/debian bionic/erlang amd64 erlang-src all 1:21.1.1-1 [5159 kB]                                                                                                                                         
Fetched 21.6 MB in 12min 2s (29.9 kB/s)                                                                                                                                                                                                      
Extracting templates from packages: 100%
Selecting previously unselected package emacsen-common.
(Reading database ... 204688 files and directories currently installed.)
Preparing to unpack .../00-emacsen-common_2.0.8_all.deb ...
Unpacking emacsen-common (2.0.8) ...
Selecting previously unselected package erlang-base.
Preparing to unpack .../01-erlang-base_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-base (1:21.1.1-1) ...
Selecting previously unselected package erlang-dev.
Preparing to unpack .../02-erlang-dev_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-dev (1:21.1.1-1) ...
Selecting previously unselected package erlang-asn1.
Preparing to unpack .../03-erlang-asn1_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-asn1 (1:21.1.1-1) ...
Selecting previously unselected package erlang-crypto.
Preparing to unpack .../04-erlang-crypto_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-crypto (1:21.1.1-1) ...
Selecting previously unselected package libglu1-mesa:amd64.
Preparing to unpack .../05-libglu1-mesa_9.0.0-2.1build1_amd64.deb ...
Unpacking libglu1-mesa:amd64 (9.0.0-2.1build1) ...
Selecting previously unselected package erlang-wx.
Preparing to unpack .../06-erlang-wx_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-wx (1:21.1.1-1) ...
Selecting previously unselected package erlang-debugger.
Preparing to unpack .../07-erlang-debugger_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-debugger (1:21.1.1-1) ...
Selecting previously unselected package erlang-mnesia.
Preparing to unpack .../08-erlang-mnesia_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-mnesia (1:21.1.1-1) ...
Selecting previously unselected package erlang-runtime-tools.
Preparing to unpack .../09-erlang-runtime-tools_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-runtime-tools (1:21.1.1-1) ...
Selecting previously unselected package erlang-public-key.
Preparing to unpack .../10-erlang-public-key_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-public-key (1:21.1.1-1) ...
Selecting previously unselected package erlang-ssl.
Preparing to unpack .../11-erlang-ssl_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-ssl (1:21.1.1-1) ...
Selecting previously unselected package erlang-inets.
Preparing to unpack .../12-erlang-inets_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-inets (1:21.1.1-1) ...
Selecting previously unselected package erlang-et.
Preparing to unpack .../13-erlang-et_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-et (1:21.1.1-1) ...
Selecting previously unselected package erlang-observer.
Preparing to unpack .../14-erlang-observer_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-observer (1:21.1.1-1) ...
Selecting previously unselected package erlang-snmp.
Preparing to unpack .../15-erlang-snmp_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-snmp (1:21.1.1-1) ...
Selecting previously unselected package erlang-ssh.
Preparing to unpack .../16-erlang-ssh_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-ssh (1:21.1.1-1) ...
Selecting previously unselected package erlang-syntax-tools.
Preparing to unpack .../17-erlang-syntax-tools_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-syntax-tools (1:21.1.1-1) ...
Selecting previously unselected package erlang-tools.
Preparing to unpack .../18-erlang-tools_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-tools (1:21.1.1-1) ...
Selecting previously unselected package erlang-xmerl.
Preparing to unpack .../19-erlang-xmerl_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-xmerl (1:21.1.1-1) ...
Selecting previously unselected package libjs-jquery.
Preparing to unpack .../20-libjs-jquery_3.2.1-1_all.deb ...
Unpacking libjs-jquery (3.2.1-1) ...
Selecting previously unselected package libjs-jquery-metadata.
Preparing to unpack .../21-libjs-jquery-metadata_12-1_all.deb ...
Unpacking libjs-jquery-metadata (12-1) ...
Selecting previously unselected package libjs-jquery-tablesorter.
Preparing to unpack .../22-libjs-jquery-tablesorter_1%3a2.29.5+dfsg1-1_all.deb ...
Unpacking libjs-jquery-tablesorter (1:2.29.5+dfsg1-1) ...
Selecting previously unselected package erlang-common-test.
Preparing to unpack .../23-erlang-common-test_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-common-test (1:21.1.1-1) ...
Selecting previously unselected package erlang-dialyzer.
Preparing to unpack .../24-erlang-dialyzer_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-dialyzer (1:21.1.1-1) ...
Selecting previously unselected package erlang-diameter.
Preparing to unpack .../25-erlang-diameter_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-diameter (1:21.1.1-1) ...
Selecting previously unselected package erlang-edoc.
Preparing to unpack .../26-erlang-edoc_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-edoc (1:21.1.1-1) ...
Selecting previously unselected package erlang-eldap.
Preparing to unpack .../27-erlang-eldap_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-eldap (1:21.1.1-1) ...
Selecting previously unselected package erlang-erl-docgen.
Preparing to unpack .../28-erlang-erl-docgen_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-erl-docgen (1:21.1.1-1) ...
Selecting previously unselected package erlang-eunit.
Preparing to unpack .../29-erlang-eunit_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-eunit (1:21.1.1-1) ...
Selecting previously unselected package erlang-megaco.
Preparing to unpack .../30-erlang-megaco_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-megaco (1:21.1.1-1) ...
Selecting previously unselected package libodbc1:amd64.
Preparing to unpack .../31-libodbc1_2.3.4-1.1ubuntu3_amd64.deb ...
Unpacking libodbc1:amd64 (2.3.4-1.1ubuntu3) ...
Selecting previously unselected package erlang-odbc.
Preparing to unpack .../32-erlang-odbc_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-odbc (1:21.1.1-1) ...
Selecting previously unselected package erlang-os-mon.
Preparing to unpack .../33-erlang-os-mon_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-os-mon (1:21.1.1-1) ...
Selecting previously unselected package erlang-parsetools.
Preparing to unpack .../34-erlang-parsetools_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-parsetools (1:21.1.1-1) ...
Selecting previously unselected package erlang-reltool.
Preparing to unpack .../35-erlang-reltool_1%3a21.1.1-1_amd64.deb ...
Unpacking erlang-reltool (1:21.1.1-1) ...
Selecting previously unselected package erlang.
Preparing to unpack .../36-erlang_1%3a21.1.1-1_all.deb ...
Unpacking erlang (1:21.1.1-1) ...
Selecting previously unselected package erlang-examples.
Preparing to unpack .../37-erlang-examples_1%3a21.1.1-1_all.deb ...
Unpacking erlang-examples (1:21.1.1-1) ...
Selecting previously unselected package erlang-jinterface.
Preparing to unpack .../38-erlang-jinterface_1%3a21.1.1-1_all.deb ...
Unpacking erlang-jinterface (1:21.1.1-1) ...
Selecting previously unselected package erlang-mode.
Preparing to unpack .../39-erlang-mode_1%3a21.1.1-1_all.deb ...
Unpacking erlang-mode (1:21.1.1-1) ...
Selecting previously unselected package erlang-src.
Preparing to unpack .../40-erlang-src_1%3a21.1.1-1_all.deb ...
Unpacking erlang-src (1:21.1.1-1) ...
Selecting previously unselected package javascript-common.
Preparing to unpack .../41-javascript-common_11_all.deb ...
Unpacking javascript-common (11) ...
Setting up libjs-jquery (3.2.1-1) ...
Setting up libodbc1:amd64 (2.3.4-1.1ubuntu3) ...
Setting up erlang-base (1:21.1.1-1) ...
Searching for services which depend on erlang and should be started...none found.
Setting up erlang-dev (1:21.1.1-1) ...
Setting up emacsen-common (2.0.8) ...
Setting up erlang-examples (1:21.1.1-1) ...
Setting up erlang-xmerl (1:21.1.1-1) ...
Setting up erlang-crypto (1:21.1.1-1) ...
Setting up erlang-asn1 (1:21.1.1-1) ...
Setting up erlang-mnesia (1:21.1.1-1) ...
Setting up erlang-eunit (1:21.1.1-1) ...
Processing triggers for libc-bin (2.27-3ubuntu1) ...
Setting up erlang-jinterface (1:21.1.1-1) ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
Setting up libglu1-mesa:amd64 (9.0.0-2.1build1) ...
Setting up erlang-runtime-tools (1:21.1.1-1) ...
Setting up erlang-syntax-tools (1:21.1.1-1) ...
Setting up javascript-common (11) ...
Setting up erlang-odbc (1:21.1.1-1) ...
Setting up libjs-jquery-metadata (12-1) ...
Setting up erlang-dialyzer (1:21.1.1-1) ...
Setting up erlang-parsetools (1:21.1.1-1) ...
Setting up erlang-megaco (1:21.1.1-1) ...
Setting up erlang-wx (1:21.1.1-1) ...
Setting up erlang-src (1:21.1.1-1) ...
Setting up libjs-jquery-tablesorter (1:2.29.5+dfsg1-1) ...
Setting up erlang-mode (1:21.1.1-1) ...
Setting up erlang-public-key (1:21.1.1-1) ...
Setting up erlang-snmp (1:21.1.1-1) ...
Setting up erlang-ssl (1:21.1.1-1) ...
Setting up erlang-debugger (1:21.1.1-1) ...
Setting up erlang-inets (1:21.1.1-1) ...
Setting up erlang-tools (1:21.1.1-1) ...
Setting up erlang-reltool (1:21.1.1-1) ...
Setting up erlang-et (1:21.1.1-1) ...
Setting up erlang-observer (1:21.1.1-1) ...
Setting up erlang-diameter (1:21.1.1-1) ...
Setting up erlang-ssh (1:21.1.1-1) ...
Setting up erlang-os-mon (1:21.1.1-1) ...
Setting up erlang-eldap (1:21.1.1-1) ...
Setting up erlang-edoc (1:21.1.1-1) ...
Setting up erlang-common-test (1:21.1.1-1) ...
Setting up erlang-erl-docgen (1:21.1.1-1) ...
Setting up erlang (1:21.1.1-1) ...
Processing triggers for libc-bin (2.27-3ubuntu1) ...
ubuntu@ecs8000:~$ 

Renfernce

### 解决 Ubuntu 18.04 登录或启动问题 当遇到无法正常登录或启动的情况时,可能的原因多种多样,包括但不限于显卡驱动配置错误、文件系统损坏、依赖库缺失或其他软件冲突等问题。以下是针对该情况的具体分析和解决方案。 #### 显卡驱动相关问题排查 如果用户的系统涉及 NVIDIA 显卡并尝试禁用 `nouveau` 驱动,则需要确认 `/etc/modprobe.d/nvidia-installer-disable-nouveau.conf` 文件的内容是否正确设置。此文件应包含以下两行以确保 `nouveau` 被成功黑名单化[^1]: ```bash blacklist nouveau options nouveau modeset=0 ``` 完成上述修改后,需更新 initramfs 并重启计算机: ```bash sudo update-initramfs -u sudo reboot ``` #### Erlang 安装引发的问题修复 对于某些情况下因安装 Erlang 或其他开发工具而导致的系统不稳定现象,在线环境下可以通过重新初始化 APT 源来解决问题。具体操作如下[^2]: 下载官方提供的 Erlang APT 仓库包并安装: ```bash wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb sudo dpkg -i erlang-solutions_1.0_all.deb ``` 随后刷新 APT 缓存并升级现有包: ```bash sudo apt-get update && sudo apt-get dist-upgrade ``` #### 启动模式调整 若以上方法未能有效恢复系统功能,可考虑通过 GRUB 引导菜单进入单用户模式进行手动修复。在 BIOS 中中断默认引导流程,选择高级选项中的内核版本,并附加参数 `init=/bin/bash` 来绕过标准服务加载过程。 一旦获得 shell 访问权限,执行必要的文件系统检查命令: ```bash mount -o remount,rw / fsck /dev/sdaX # 替换 sdaX 为实际根分区设备名 ``` 最后再次尝试常规方式重启机器恢复正常运行状态。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qwfys200

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值