# 总融资7.25亿 绝对不可错过的LINEA测试网交互+部署保姆级教程

By [0xdearmoon.eth](https://paragraph.com/@0xdearmoon) · 2023-04-03

---

MetaMask 的开发商 ConsenSys 前几天（3.28日）宣布了其以太坊 Layer2 网路 ConsenSys zkEVM 更名为 Linea。

去年 12 月 ConsenSys zkEVM 就推出过私人测试网，该测试网只运行了三个月，刚开测的前几周内就达到了 150 万笔交易。虽然目前并不知道 Linea 有没有什么空投，但对于撸毛党来说，提前参与一下肯定是没错的。

Linea 是一个新的 zk-rollup 网络，提供了完整的以太坊虚拟机 (EVM) 兼容性。借助 Linea，开发人员可以像在主网上一样构建复制的以太坊环境，比如使用熟悉的工具 (MetaMask, Truffle 和 Infura等） 部署和管理DApp，而且同时还能够体验到以太坊相同的安全保证。

Linea 背后有微软和软银等各大机构的投资，共融资7.25亿 。

![](https://storage.googleapis.com/papyrus_images/78bb2a6ac8692832bf3fb13ca0c75e4f9fc23622b837231993bdd24171e435b8.jpg)

**话不多说 , 开始教程! 我个人不喜欢看太多截图的教程，所以基本操作只有一些简单的文字。**

**\*点击蓝色字体转跳网站 。**

**1.首先就是先设置好钱包 ,** 到 [Chainlist](https://chainlist.org/) ,Connet Wallet 然后勾选 Include Testnet, 搜 Linea →Add to Metamask 就行了。然后到 [Goerli Faucet](https://goerlifaucet.com/) **领取 Goerli 测试币**。

**2\. 开始交互！** 到 [HOP EXCHANGE](https://goerli.hop.exchange/#/send?token=ETH&destNetwork=linea&sourceNetwork=ethereum) 连接钱包 (GOERLI网络) , 把 **GETH 跨链到 LINEA** 。链接转跳过去是设置好的流程，直接跨链就行了。 **据说 HOP 查女巫很严格 ？大家交互钱包记得隔离好。** (上面还有一个FAUCET功能，可以自己MINT USDC去"Send"将铸造好的 USDC 和 HOP跨链到 LINEA 测试网中**当作跨链交互的一部分**)

**3\. SWAP 。** 进入 [UNISWAP V3 FORK](https://swap.goerli.linea.build/#/swap) （这个是Linea自己的V3页面）, 这里钱包网络需要 **切换至Linea Testnet**，通过Swap 用 **ETH 买入任意代币** 。这crUSDC太多0了，有强迫症的小伙伴可以用我部署的这个token交互。

合约：0x4d0A24167BD2869733AE982DEFCa420bF1b5D3dD

**4\. 添加流动池子**。 到 [上面的POOL](https://swap.goerli.linea.build/#/pool) 添加流动性。(最低兑换率填1 ，最高兑换率一千亿往上)

### LINEA 上其他的 DAPP

1\. [FWDX](https://testnet.fwdx.xyz/) 先到 Faucet **Mint ETH或BTC** ，点右上角create , 交互ETH→BTC, 选择日期，CREAT. [官方推特](https://twitter.com/FWDX_Official)

![](https://storage.googleapis.com/papyrus_images/924bea44b0d0ec1353a238fb36b4dc394a4a1aa964852b5b9c6a065c8add3861.png)

2\. [INFURA](https://app.infura.io/register) 注册一个账号。（在官方文档看到的 ，大部分人都注册不到）[官方推特](https://twitter.com/infura_io)

3\. [GhostNFT](https://app.nft.ghostchain.io/#/zkevm) 连钱包, 然后随便选一个NFT, 点disperse collection， 输入金额 再点disperse 付gas 就好了。

4\. [MesProtocol](https://app.mesprotocol.com/spot/ETH-USDC) 一样先connet wallet, 然后右边有一个 **deposit/withdraw** 选ETH Vault 输入充值金额, 然后点Deposit ETH。然后就是交易， **充值ETH就先去SELL ETH， 充值 USDC 就是BUY ETH** 测试网交互直接选择 **Market (市价成交)** 。[官方推特](https://twitter.com/MESprotocol)

5\. Linea上的幽灵 NFT（gNFT）到[这里Mint](https://airdrop.ghostchain.io/#/linea/0xF550A5776791C270dd940c76Cf09BEDD46174Ce2)。

6\. Linea 在 op 发的 [纪念 NFT](https://linea.mirror.xyz/R1iFRaiwh6SDk8HJCZ2rUkXxAuauYGaZjbjNEFayfpQ) ，gas 差不多2刀。

7\. [EchoDEX](https://www.echodex.io/swap) 链接钱包，SWAP，加池子che'chi'zi，mintNFT。[官方推特](https://twitter.com/echo_dex)

![](https://storage.googleapis.com/papyrus_images/3567aed35b6d48bd30180671b7670e246d3c848d9ef724474e34ad96fa68d07f.png)

除了以上的这几项 , LINEA 上还有 [其他](https://goerli.linea.build/explore) 生态DAPP 可以去研究研究 但是我看了几眼可以交互的似乎也只有这几个 。有新的东西我会继续更新这个文档 ~

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

### 部署合约教程 (初学者 代码有错勿喷 ，顺便欢迎懂代码的人来指导两下子)

这里部署合约有两套方法，一个需要自己取名，另一个默认名字。

**方法1：我自己研究的操作（可取名）**

打开 [REMIX](https://remix.ethereum.org/), **创建文档** 后, 然后把 **代码粘贴进去右边**，然后就是编译, 发行，具体操作我粗略弄了几张图。

![token.sol](https://storage.googleapis.com/papyrus_images/fdd53b311962b5c1c8b400c8d9a341f988ed039ec4868215312fa8c6bf39bd99.jpg)

token.sol

粘贴代码后先到Solidity Compiler, 上面选0.8.0, 我把我用的代码贴在下面，代码里有**下划线的地方更改成自己想取的token名字**就OK，总共3个地方需要填。

**\*先在右边的代码填好想取的名字，再跟着左边的流程操作**。

![ ](https://storage.googleapis.com/papyrus_images/df37aecaff818f00175b7da014ddedb501ef9551a907a6e57b18ab3de5fad2ba.png)

到以太标签的这个 Deploy and run transaction，选Injected Provider-MetaMask，确保你的metamask登入在 Linea Testnet，然后点Deploy 付gas就部署好了。

![](https://storage.googleapis.com/papyrus_images/d3329dee2b841006215c1b577caa590be9ebc5e30f91b7c9c879d325df4a3e7f.png)

    // SPDX-License-Identifier: MIT
    pragma solidity ^0.8.0;
    
    contract ________ {
        string public name = "________";
        string public symbol = "________";
        uint8 public decimals = 18;
        uint256 public totalSupply = 10000000000 * 10 ** uint256(decimals);
    
        mapping(address => uint256) balances;
        mapping(address => mapping(address => uint256)) allowed;
    
        constructor() {
            balances[msg.sender] = totalSupply;
        }
    
        function balanceOf(address _owner) public view returns (uint256) {
            return balances[_owner];
        }
    
        function transfer(address _to, uint256 _value) public returns (bool success) {
            require(balances[msg.sender] >= _value, "Insufficient balance");
            balances[msg.sender] -= _value;
            balances[_to] += _value;
            emit Transfer(msg.sender, _to, _value);
            return true;
        }
    
        function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) {
            require(_value <= balances[_from], "Insufficient balance");
            require(_value <= allowed[_from][msg.sender], "Not enough allowance");
            balances[_from] -= _value;
            allowed[_from][msg.sender] -= _value;
            balances[_to] += _value;
            emit Transfer(_from, _to, _value);
            return true;
        }
    
        function approve(address _spender, uint256 _value) public returns (bool success) {
            allowed[msg.sender][_spender] = _value;
            emit Approval(msg.sender, _spender, _value);
            return true;
        }
    
        function allowance(address _owner, address _spender) public view returns (uint256) {
            return allowed[_owner][_spender];
        }
    
        event Transfer(address indexed _from, address indexed _to, uint256 _value);
        event Approval(address indexed _owner, address indexed _spender, uint256 _value);
    }
    

然后到钱包的活动里面点击 **合约部署**，点 **在区块链游览器上查看记录**，旁边有 **Created** 字眼的就是你部署token的合约地址，复制下来到 [UNISWAP POOL](https://swap.goerli.linea.build/#/pool) 点击 **+新仓位**，粘贴刚刚复制的合约地址进去。

起始兑换率我是这样设置的 ↓↓↓↓↓↓↓↓

![](https://storage.googleapis.com/papyrus_images/3a883214aa3e5e9b3379e7cdb507261536f3aa467a17fced07e7e123f3727a3d.jpg)

然后就是授权你的代币 点击预览 ，然后再确认加池子就ok了 ！！

**方法2：到** [**WeTransfer**](https://wetransfer.com/downloads/8c3df31a7138ccb0303f88be9e4078c820230329024736/6abfbc) **上下载代码 上传到** [**REMIX**](https://remix.ethereum.org/) **编译后直接部署。**

![](https://storage.googleapis.com/papyrus_images/6795fc4a2bd1dec8c75233715c54799de670ce4b0b97a142573a5dd03360c302.png)

![](https://storage.googleapis.com/papyrus_images/f796da0d591b361a41280f4f49e6aae9addca89e736564bcd35d9bef570dab26.png)

这里流程也跟前面一样 到链上找自己的合约地址 去加池子 。

最后就是在交互中遇到BUG什么的或者想提意见可以去填[反馈表](https://docs.google.com/forms/d/e/1FAIpQLSen0KN2uqKMJuUxBH8yTfwrb-xdN48kA-NmO-DSCJMYRdQyMA/viewform) 。

总结，本文主要介绍了什么是 Linea（ConsenSys zkEVM）、以及 Linea 测试网的一些交互和部署操作教程。希望今天的分享能够对大家有所帮助。

看不懂教程的可以到 [我的推特](https://twitter.com/HMay000) 提问 ~~~~~

---

*Originally published on [0xdearmoon.eth](https://paragraph.com/@0xdearmoon/7-25-linea)*
