Làm cách nào tôi có thể cài đặt npm vào ngày 17.10?


10

Tôi chỉ muốn cài đặt npm qua thiết bị đầu cuối và bây giờ tôi chỉ bị mắc kẹt với một số phụ thuộc.

Nó muốn tôi cài đặt một vài phụ thuộc, ví dụ:

libssl1.0-dev
nodejs-dev
node-gyp

Ngay cả khi tôi cố gắng cài đặt những cái này trước, nó sẽ cho tôi biết tôi cần người tiền nhiệm trước.

Ví dụ cuối cùng của sự phụ thuộc là libssl-devvà điều này dường như đã được cài đặt.

Mục tiêu là cài đặt npm để làm cho ngã ba điện tử này chạy trên hệ thống của tôi.

Cảm ơn sự giúp đỡ của bạn.


@karel có nghĩa là tôi không có cơ hội cài đặt nó vào ngày 17.10 và tôi buộc phải hạ xuống 16.04 một lần nữa?
Deniz

Anh bạn, tôi chỉ muốn biết cách cài đặt npm trên hệ thống của tôi. Tôi không thể sử dụng đơn giản "sudo apt install npm" vì vấn đề tôi đã viết trong bình luận đầu tiên.
Deniz

Câu trả lời:


8

Lưu ý: Câu trả lời này đã được cập nhật kể từ khi nó được đăng lần đầu tiên vì giờ đây có cách cài đặt phiên bản npm mới nhất được tích hợp với gói snap nút để cài đặt Node.js. Sau khi chạy các lệnh dưới đây, chạy npm -vsẽ cho thấy phiên bản mới nhất của npm đã được cài đặt và đang được sử dụng.


Node.js có sẵn dưới dạng gói snap trong tất cả các phiên bản Ubuntu hiện được hỗ trợ. Cụ thể với Node.js, nhà phát triển có thể chọn từ một hoặc nhiều bản phát hành hiện được hỗ trợ và nhận cập nhật tự động thường xuyên trực tiếp từ NodeSource. Các phiên bản Node.js 6, 8, 9, 10, 11, 12 và 13 hiện đang có sẵn, với Snap Store được cập nhật trong vài giờ hoặc vài phút sau khi phát hành Node.js.

Nút có thể được cài đặt bằng một lệnh duy nhất, ví dụ:

sudo snap install node --classic --channel 11/stable # also install snapd in 14.04 

Nút snap có thể được truy cập bằng lệnh node, ví dụ:

$ nút -v  
v11.5.0

Một phiên bản cập nhật của npm sẽ được cài đặt như một phần của nút chụp. npm nên được chạy bên ngoài nút thay thế, trong vỏ bình thường của bạn. Sau khi cài đặt nút snap, hãy chạy lệnh sau để cho phép kiểm tra cập nhật npm:

sudo chown -R $ USER: $ (id -gn $ USER) / home / your-username /.config

Thay thế your-usernametrong lệnh trên bằng tên người dùng của riêng bạn. Sau đó chạy npm -vđể kiểm tra xem phiên bản của npm có được cập nhật hay không. Như một ví dụ tôi đã kiểm tra rằng npm đã được cập nhật, kiểm tra phiên bản của gói đã được cài đặt có tên là sợi bằng lệnh npm list yarnvà sau đó cập nhật gói sợi hiện có lên phiên bản mới nhất bằng lệnhnpm update yarn

Người dùng có thể chuyển đổi giữa các phiên bản của Node.js bất cứ lúc nào mà không cần liên quan đến các công cụ bổ sung như nvm (Trình quản lý phiên bản nút), ví dụ:

sudo snap refresh node --channel=10/stable

Người dùng có thể kiểm tra các phiên bản cạnh của Node.js có thể được cài đặt từ kênh cạnh mới nhất hiện đang theo dõi Node.js phiên bản 12 bằng cách chuyển đổi bằng:

sudo snap switch node --edge

Cách tiếp cận này chỉ được khuyến nghị cho những người dùng sẵn sàng tham gia thử nghiệm và báo cáo lỗi ngược dòng.

Lịch trình LTS của Node.js

Phát hành LTS Status Codename LTS Bắt đầu bảo trì Bắt đầu bảo trì Kết thúc
6.x Boron hoạt động 2016-10-18 tháng 4 năm 2018 tháng 4 năm 2019
7.x Không có LTS              
8.x Active Carbon 2017-10-31 tháng 4 năm 2019 tháng 12 năm 2019
9.x Không có LTS              
10.x Hoạt động Dubnium tháng 10 năm 2018 tháng 4 năm 2020 tháng 4 năm 2021  
11.x Không LTS 2019-04-01 2019-06-30
12.x 2019-10-22 2021-04-01 2022-04-01
13.x Không LTS 2020-04-20 2020-06-01

Không làm việc cho tôi
Jonathan

Gói Snap là khủng khiếp cho SSD. Chúng thường xuyên được cập nhật gây ra các hành động đọc / ghi nặng trên đĩa, điều này không tối ưu cho tuổi thọ của SSD. Tôi tránh chúng càng nhiều càng tốt. Ngoài ra còn có vấn đề bảo mật với Snaps, vì vậy hãy cẩn thận.
Seth Bergman

2

Tôi gặp vấn đề tương tự. libssl là rắc rối vì rất nhiều gói muốn các phiên bản khác nhau của nó. Những kẻ gây rối hàng đầu đối với tôi là Spotify, Viber, DotNet Core, php5.6 (hệ thống cũ).

Dù sao, giải pháp này dường như đã làm việc:

Dựa trên câu trả lời của Jonathan Leaders, nếu bạn nhìn vào đoạn script đang tải xuống, bạn sẽ thấy nó đề cập đến 2 điểm chính: kho lưu trữ và khóa.

Vì một số lý do sau khi chỉ chạy các lệnh đó, nodejs vẫn đề cập đến lệnh trong kho chính thức của Ubuntu và đây là phiên bản cũ, với các yêu cầu mâu thuẫn đối với libssl.

Thêm chúng thủ công để có kết quả đáng tin cậy (với quyền root):

echo 'deb https://deb.nodesource.com/node_9.x artful main' > /etc/apt/sources.list.d/nodesource.list
curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -

Sau đó, đơn giản apt-get updatevà sau đóapt-get install nodejs

Sau đó, bạn cũng sẽ có npm mà không cần cài đặt thêm bất cứ thứ gì.

Lưu ý rằng điều này cài đặt Nodejs 9.0, nhưng tôi chắc chắn rằng phương pháp tương tự cũng hoạt động cho các phiên bản khác. Bạn chỉ cần chuyển số phiên bản trong nguồn lưu trữ trong/etc/apt/sources.list.d/nodesource.list


1

Trước tiên hãy xem số phiên bản mới nhất tại đây: https://github.com/nodesource/distribution/tree/master/deb

Trong trường hợp của chúng tôi, nó là setup_9.x

sudo apt-get install python-software-properties curl
curl -sL https://deb.nodesource.com/setup_9.x | sudo -E bash -
sudo apt-get install nodejs

Chứng minh rằng nó đã được cài đặt

npm -v

Nguồn: https://tecadmin.net/install-latest-nodejs-npm-on-ub Ubuntu /

Chỉnh sửa : Đã thêm 'curl' cho các phụ thuộc ban đầu.


1

cài đặt n

Nút và npm được cài đặt với một dòng bash.

Cài đặt n , trình quản lý phiên bản Node.js, trên các nền tảng giống Unix, mà không cần cài đặt Node.js trước. Ngoài ra, cài đặt tập lệnh n-update để cập nhật theo yêu cầu sau này nn-uninstallđể gỡ cài đặt.

Trường hợp đơn giản nhất là cài đặt n với dấu nhắc xác nhận, với cài đặt tiếp theo của phiên bản LTS Node.js mới nhất:

curl -L https://git.io/n-install | bash

Đây là cách đơn giản nhất để bắt đầu với cả n và Node.js - ngay cả khi bạn chỉ muốn cài đặt phiên bản Node.js (hỗ trợ dài hạn) mới nhất, không có kế hoạch (ngay lập tức) để cài đặt nhiều phiên bản. Phần tốt nhất là bạn có thể cập nhật phiên bản nút một cách nhanh chóng. Nó phải là công cụ nút yêu thích của tôi. NVM tương tự, nhưng nlà sở thích của tôi.


0

Ngoài ra, bạn có thể sử dụng NVM. Trình quản lý phiên bản nút nào cho phép chuyển đổi giữa các phiên bản nút khác nhau theo cách rất đơn giản. Chỉ cần chạy các lệnh sau:

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash

command -v nvm

Sau đó, mở lại thiết bị đầu cuối của bạn và thực hiện:

nvm install lts/*

Điều đó sẽ tải mã nguồn Nodejs và cài đặt cho bạn.

Ngoài ra, một trong những lợi ích chính của NVM, là khả năng cài đặt các gói toàn cầu mà không cần sử dụng sudo

Nếu bạn muốn biết thêm thông tin về NVM, hãy kiểm tra Github Repo của họ:

https://github.com/creationix/nvm


Nếu gói snap Node.js được cài đặt, có thể chuyển đổi giữa các phiên bản Node.js khác nhau mà không cần liên quan đến các công cụ bổ sung như nvm.
karel

Đâ là một câu hỏi tuyệt vời. Tôi không tin rằng bạn có thể vì hiệu trưởng cốt lõi của snaps là có phiên bản phần mềm mới nhất, được tách biệt với phần còn lại của hệ thống tập tin.
Seth Bergman
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.