Chắc hẳn bạn đã từng gặp phải thông báo lỗi “bash: yarn: command not found” khi đang làm việc trên môi trường Linux. Đây là một trong những sự cố phổ biến nhất đối với các nhà phát triển frontend và Node.js, đặc biệt là khi thiết lập một môi trường làm việc mới. Yarn, với vai trò là một trình quản lý gói nhanh chóng và đáng tin cậy, đã trở thành công cụ không thể thiếu trong hệ sinh thái JavaScript hiện đại. Lỗi này không chỉ gây gián đoạn công việc mà còn khiến bạn bối rối không biết nên bắt đầu khắc phục từ đâu. Tuy nhiên, đừng quá lo lắng, vì đây là một vấn đề hoàn toàn có thể giải quyết được.
Trong bài viết này, AZWEB sẽ hướng dẫn bạn một cách chi tiết và dễ hiểu nhất để “bắt bệnh” và “chữa trị” triệt để lỗi “command not found” này. Chúng tôi sẽ cùng bạn đi qua từng bước, từ việc nhận diện nguyên nhân gốc rễ, kiểm tra tình trạng cài đặt của Yarn, cho đến các phương pháp cài đặt chuẩn xác trên những bản phân phối Linux phổ biến. Hơn thế nữa, bài viết sẽ đi sâu vào cách cấu hình biến môi trường PATH – một khái niệm quan trọng nhưng thường bị bỏ qua. Với cấu trúc rõ ràng, bạn sẽ dễ dàng theo dõi và áp dụng để nhanh chóng quay trở lại với công việc của mình.
Nguyên nhân gây ra lỗi “bash yarn command not found”
Khi terminal trên Linux trả về thông báo “bash: yarn: command not found”, nó đang gửi đến bạn một thông điệp rất rõ ràng: “Tôi không thể tìm thấy chương trình nào tên là ‘yarn’ để thực thi”. Lỗi này tuy đơn giản nhưng lại xuất phát từ hai nguyên nhân chính mà chúng ta cần xác định rõ để có hướng giải quyết phù hợp.

Yarn chưa được cài đặt trên hệ thống Linux
Đây là nguyên nhân hiển nhiên và phổ biến nhất. Giống như việc bạn không thể lái một chiếc xe không tồn tại, hệ điều hành của bạn cũng không thể chạy một lệnh chưa bao giờ được cài đặt. Mỗi lệnh bạn gõ vào terminal (như ls, cd, hay yarn) thực chất là một tệp thực thi nằm ở đâu đó trong hệ thống. Khi bạn mới cài đặt hệ điều hành Linux hoặc thiết lập một môi trường phát triển mới, Yarn không phải là một gói được tích hợp sẵn.
Bạn có thể đang làm việc trên một máy chủ ảo (VPS) mới hoặc một bản cài đặt Ubuntu, CentOS tối giản. Trong những trường hợp này, bạn phải chủ động cài đặt Yarn. Việc nhầm lẫn rằng Yarn đã có sẵn sau khi cài đặt Node.js (thông qua một số phương thức) cũng là một lý do thường gặp. Do đó, bước đầu tiên và quan trọng nhất luôn là xác nhận xem Yarn đã thực sự tồn tại trên hệ thống của bạn hay chưa.
Biến môi trường PATH không chứa đường dẫn của Yarn
Đây là một nguyên nhân mang tính kỹ thuật hơn và thường gây bối rối cho những người mới làm quen với Linux. Hãy tưởng tượng biến môi trường PATH giống như một cuốn danh bạ mà Bash (hoặc bất kỳ shell nào khác) sử dụng. Khi bạn gõ một lệnh, Bash sẽ không tìm kiếm toàn bộ ổ cứng mà chỉ dò qua các thư mục đã được liệt kê trong “cuốn danh bạ” PATH này.
Nếu Yarn đã được cài đặt nhưng đường dẫn đến thư mục chứa tệp thực thi của nó (ví dụ: ~/.yarn/bin) không có trong PATH, Bash sẽ tìm và không thấy, dẫn đến thông báo lỗi “command not found”. Tình huống này thường xảy ra khi bạn cài đặt Yarn thông qua một phương pháp không chính thống, chẳng hạn như cài đặt thủ công qua npm global mà không cấu hình shell tự động, hoặc sử dụng các script cài đặt không cập nhật file cấu hình shell (.bashrc, .zshrc,…). Hiểu rõ vai trò của PATH là chìa khóa để giải quyết không chỉ lỗi với Yarn mà còn nhiều vấn đề tương tự khác.

Hướng dẫn kiểm tra và cài đặt Yarn trên Linux
Sau khi đã hiểu rõ các nguyên nhân có thể gây ra lỗi, bước tiếp theo là hành động. Chúng ta sẽ bắt đầu bằng việc kiểm tra một cách chắc chắn xem Yarn đã được cài đặt hay chưa, sau đó tiến hành cài đặt nó theo phương pháp chuẩn cho từng bản phân phối Linux.
Cách kiểm tra Yarn đã cài đặt hay chưa
Để không phải phỏng đoán, bạn hãy sử dụng terminal và thực hiện một trong hai lệnh đơn giản sau đây. Đây là cách nhanh nhất để chẩn đoán tình trạng của Yarn trên hệ thống.
Cách thứ nhất và trực tiếp nhất là yêu cầu Yarn tự báo cáo phiên bản của nó:
yarn --version
Nếu Yarn đã được cài đặt và cấu hình đúng, terminal sẽ trả về một chuỗi số phiên bản, ví dụ: 1.22.19. Đây là tín hiệu tốt, cho thấy vấn đề của bạn có thể không nằm ở việc cài đặt mà là ở ngữ cảnh thực thi (sẽ được đề cập sau). Ngược lại, nếu bạn nhận lại chính thông báo bash: yarn: command not found, điều này gần như chắc chắn khẳng định Yarn chưa được cài đặt hoặc chưa được cấu hình đúng trong PATH.

Cách thứ hai là sử dụng lệnh which để hỏi hệ thống xem tệp thực thi yarn nằm ở đâu:
which yarn
Nếu lệnh này trả về một đường dẫn (ví dụ: /usr/bin/yarn hoặc /home/user/.yarn/bin/yarn), điều đó có nghĩa là Yarn đã được cài đặt. Nếu không có gì được trả về hoặc báo lỗi, thì hệ thống không tìm thấy lệnh này. Việc kết hợp cả hai lệnh trên sẽ cho bạn một bức tranh toàn cảnh và chính xác nhất.
Hướng dẫn cài đặt Yarn chuẩn trên các bản phân phối Linux phổ biến
Nếu kết quả kiểm tra cho thấy Yarn chưa được cài đặt, bạn cần tiến hành cài đặt nó. Điều quan trọng là sử dụng phương pháp cài đặt được khuyến nghị cho hệ điều hành của bạn để đảm bảo tính ổn định và dễ dàng cập nhật sau này.
Dành cho Ubuntu/Debian:
Đây là một trong những họ hệ điều hành phổ biến nhất. Cách cài đặt chính thức và được khuyến nghị là thông qua repository của Yarn.
- Thêm GPG key của Yarn:
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - - Thêm Yarn repository vào danh sách nguồn của apt:
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list - Cập nhật danh sách gói và cài đặt Yarn:
sudo apt update && sudo apt install yarn
Sau khi hoàn tất, hãy kiểm tra lại bằng lệnh yarn --version để xác nhận cài đặt thành công.

Dành cho CentOS/Fedora/RHEL:
Đối với các hệ điều hành thuộc họ Red Hat, bạn cũng sẽ sử dụng phương pháp thêm repository tương tự.
- Thêm Yarn repository:
curl -sL https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo - Cài đặt Yarn:
Nếu bạn đang dùng CentOS/RHEL, sử dụngyum:sudo yum install yarnNếu bạn đang dùng Fedora, sử dụng
dnf:sudo dnf install yarn
Một lưu ý quan trọng là trước khi cài đặt Yarn, bạn cần đảm bảo Node.js đã được cài đặt trên hệ thống. Yarn hoạt động dựa trên môi trường Node.js. Bạn nên cài đặt Node.js thông qua NodeSource hoặc sử dụng trình quản lý phiên bản như NVM để có sự linh hoạt cao nhất.
Cách thiết lập biến môi trường để Bash nhận diện lệnh yarn
Trong trường hợp bạn đã cài đặt Yarn (đặc biệt là thông qua npm install -g yarn) nhưng vẫn gặp lỗi “command not found”, khả năng cao vấn đề nằm ở biến môi trường PATH. Bash không biết tìm Yarn ở đâu. Chúng ta cần chỉ đường cho nó.
Xác định đường dẫn cài đặt Yarn trên hệ thống
Trước khi có thể thêm đường dẫn vào PATH, chúng ta cần biết chính xác Yarn đang nằm ở đâu. Các vị trí cài đặt phổ biến có thể là:
/usr/local/bin: Khi cài đặt global với quyền root./usr/bin: Khi cài đặt qua các trình quản lý gói hệ thống như apt hoặc yum.~/.yarn/bin: Khi cài đặt Yarn theo cách riêng của nó.~/.npm-global/binhoặc một thư mục tương tự nếu bạn cài đặt qua npm global.
Để tìm kiếm một cách tự động, bạn có thể sử dụng lệnh find. Lệnh này sẽ tìm kiếm từ thư mục gốc (/) tất cả các tệp có tên là yarn.
sudo find / -name yarn
Lệnh này có thể mất một chút thời gian và trả về nhiều kết quả, nhưng hãy chú ý đến các đường dẫn chứa thư mục bin. Ví dụ: /usr/local/bin/yarn. Thư mục mà chúng ta cần thêm vào PATH chính là /usr/local/bin.
Một cách khác để kiểm tra là xem nội dung hiện tại của biến PATH:
echo $PATH
Lệnh này sẽ in ra một danh sách các thư mục được phân tách bởi dấu hai chấm (:). Hãy kiểm tra xem thư mục chứa tệp thực thi yarn có nằm trong danh sách này không. Nếu không, đó chính là lúc chúng ta cần hành động.
Thêm Yarn vào biến môi trường PATH
Để Bash có thể tìm thấy Yarn mỗi khi bạn mở một terminal mới, bạn cần thêm đường dẫn của nó vào file cấu hình của Bash. Các file này được đọc mỗi khi một phiên làm việc mới của shell bắt đầu.
Các file cấu hình phổ biến bao gồm:
~/.bashrc: Được thực thi cho mỗi interactive non-login shell (ví dụ: khi bạn mở một cửa sổ terminal mới). Đây là nơi phổ biến nhất để đặt cấu hình.~/.bash_profilehoặc~/.profile: Được thực thi cho login shell (ví dụ: khi bạn đăng nhập vào hệ thống qua SSH). Thường thì~/.bash_profilesẽ gọi~/.bashrc.
Hướng dẫn các bước:
- Mở file cấu hình bằng một trình soạn thảo văn bản, ví dụ
nano:
nano ~/.bashrc
- Di chuyển đến cuối file và thêm dòng lệnh sau. Thay thế
/path/to/yarn/binbằng đường dẫn thực tế bạn đã tìm thấy ở bước trên (ví dụ:~/.yarn/bin).
export PATH="$PATH:/path/to/yarn/bin"
Dòng lệnh này có nghĩa là: “Lấy giá trị hiện tại của PATH, nối thêm đường dẫn của Yarn vào cuối, và cập nhật lại PATH với giá trị mới này.”

- Lưu file và thoát khỏi trình soạn thảo. (Trong
nano, nhấnCtrl + X, sau đóY, vàEnter). - Áp dụng thay đổi. Thay đổi trong
.bashrcsẽ không có hiệu lực ngay lập tức trong phiên terminal hiện tại. Bạn có hai lựa chọn:
- Đóng và mở lại cửa sổ terminal.
- Hoặc, chạy lệnh
sourceđể nạp lại file cấu hình:
source ~/.bashrc
Sau khi hoàn tất, hãy thử lại lệnh yarn --version. Nếu mọi thứ được cấu hình chính xác, bạn sẽ thấy phiên bản của Yarn hiện ra và lỗi “command not found” sẽ biến mất.
Khắc phục và xử lý lỗi khi lệnh yarn không được nhận diện
Ngay cả khi bạn đã cài đặt Yarn và cấu hình PATH đúng cách, đôi khi vẫn có những vấn đề tiềm ẩn khác ngăn cản lệnh yarn hoạt động. Đây là những bước xử lý sự cố nâng cao hơn để giải quyết các trường hợp cứng đầu.

Kiểm tra lỗi cài đặt và quyền truy cập
Một khả năng là tệp thực thi yarn tồn tại nhưng không có quyền thực thi. Trong thế giới Linux, mỗi tệp đều có các quyền đi kèm, quy định ai có thể đọc, ghi hoặc thực thi nó.
- Tìm vị trí của tệp
yarn: Sử dụngwhich yarnhoặcfindnhư đã hướng dẫn. Giả sử bạn tìm thấy nó ở/usr/local/bin/yarn. - Kiểm tra quyền của tệp: Sử dụng lệnh
ls -lđể xem chi tiết.
ls -l /usr/local/bin/yarn
Bạn sẽ thấy một chuỗi ký tự như -rwxr-xr-x. Chữ x trong chuỗi này đại diện cho quyền thực thi (execute). Nếu bạn không thấy chữ x ở các vị trí cần thiết, đó chính là vấn đề.
- Sửa lỗi quyền: Nếu tệp không có quyền thực thi, bạn có thể cấp quyền cho nó bằng lệnh
chmod. Lệnh sau đây sẽ cấp quyền thực thi cho tất cả người dùng.
sudo chmod +x /usr/local/bin/yarn
Đôi khi, vấn đề cũng có thể liên quan đến quyền sở hữu tệp (owner). Bạn có thể sử dụng lệnh chown để thay đổi chủ sở hữu nếu cần, nhưng trường hợp này ít phổ biến hơn. Đảm bảo rằng người dùng hiện tại của bạn có quyền truy cập và thực thi tệp là điều quan trọng nhất.
Xóa cache và cài đặt lại Yarn khi gặp lỗi nghiêm trọng
Nếu mọi nỗ lực trên đều thất bại, có thể bản cài đặt Yarn của bạn đã bị lỗi hoặc xung đột với một gói nào đó. Giải pháp cuối cùng nhưng rất hiệu quả là thực hiện một cuộc “tổng vệ sinh”: gỡ bỏ hoàn toàn và cài đặt lại từ đầu.
- Xóa cache (Tùy chọn nhưng được khuyến nghị):
Yarn và npm đều lưu trữ các gói đã tải về trong một bộ nhớ đệm (cache) để tăng tốc độ cài đặt trong tương lai. Việc xóa cache đảm bảo bạn sẽ có một khởi đầu hoàn toàn mới.
# Xóa cache của Yarn
yarn cache clean
# Nếu bạn đã cài Yarn qua npm, cũng nên xóa cache npm
npm cache clean --force
- Gỡ bỏ Yarn:
Phương pháp gỡ bỏ phụ thuộc vào cách bạn đã cài đặt nó.
- Nếu cài qua
apt(Ubuntu/Debian):sudo apt remove yarn && sudo apt purge yarn - Nếu cài qua
yum/dnf(CentOS/Fedora):sudo yum remove yarnhoặcsudo dnf remove yarn - Nếu cài qua
npm:npm uninstall -g yarn
- Cài đặt lại Yarn từ đầu:
Sau khi đã gỡ bỏ hoàn toàn, hãy quay lại phần hướng dẫn cài đặt chuẩn ở trên và thực hiện lại các bước một cách cẩn thận. Lần này, hãy chọn phương pháp cài đặt chính thức thông qua trình quản lý gói hệ thống (apthoặcyum/dnf) để có kết quả ổn định nhất.
Quá trình gỡ bỏ và cài đặt lại này thường giải quyết được các lỗi cài đặt bị hỏng, các tệp bị thiếu hoặc các xung đột phiên bản khó chẩn đoán.
Các lưu ý khi sử dụng lệnh yarn trong môi trường Bash
Để quá trình phát triển của bạn diễn ra suôn sẻ và tránh gặp lại lỗi “command not found” trong tương lai, hãy ghi nhớ một vài quy tắc và thực hành tốt khi làm việc với Yarn và Bash trên Linux.

- Luôn kiểm tra biến môi trường PATH sau khi cài đặt: Hãy tạo thói quen sau khi cài đặt bất kỳ công cụ dòng lệnh nào mới bằng một phương pháp không chuẩn (như tải về file nhị phân, cài qua npm global), hãy chạy ngay lệnh
echo $PATHđể kiểm tra xem đường dẫn cài đặt đã được tự động thêm vào hay chưa. Nếu chưa, hãy chủ động thêm nó vào file.bashrccủa bạn. - Tránh xung đột phiên bản Node.js và Yarn: Các dự án khác nhau có thể yêu cầu các phiên bản Node.js khác nhau. Việc cài đặt Node.js trực tiếp vào hệ thống có thể gây ra xung đột. Hãy cân nhắc sử dụng một trình quản lý phiên bản như NVM (Node Version Manager). NVM cho phép bạn dễ dàng cài đặt và chuyển đổi giữa nhiều phiên bản Node.js khác nhau, và mỗi phiên bản sẽ có một hệ sinh thái gói global (bao gồm cả Yarn) riêng, giúp cô lập môi trường giữa các dự án.
- Sử dụng quyền
sudomột cách cẩn trọng: Lệnhsudo(Super User Do) cấp cho bạn quyền quản trị cao nhất. Bạn chỉ nên sử dụngsudokhi thực sự cần thiết, chẳng hạn như khi cài đặt các gói vào thư mục hệ thống (sudo apt install,sudo yum install). Tránh sử dụngsudovới các lệnh Yarn thông thường nhưsudo yarn installhaysudo yarn add. Việc này có thể tạo ra các tệp với quyền sở hữu củaroottrong thư mục dự án của bạn, gây ra các vấn đề về quyền truy cập sau này. - Cập nhật Yarn định kỳ: Giống như mọi phần mềm khác, Yarn thường xuyên được cập nhật để vá lỗi bảo mật và bổ sung các tính năng mới. Hãy định kỳ chạy lệnh nâng cấp để đảm bảo bạn đang sử dụng phiên bản mới nhất và ổn định nhất.
- Nếu cài qua
apt:sudo apt update && sudo apt upgrade yarn - Nếu cài qua
npm global:npm install -g yarn@latest
- Nếu cài qua
Việc tuân thủ những lưu ý này không chỉ giúp bạn tránh được lỗi mà còn góp phần xây dựng một môi trường phát triển chuyên nghiệp, có tổ chức và dễ bảo trì hơn.

Kết luận
Lỗi “bash: yarn: command not found” trên Linux, dù gây khó chịu, thực chất là một vấn đề khá đơn giản và dễ khắc phục khi bạn hiểu rõ nguyên nhân gốc rễ của nó. Thông qua bài viết này, chúng ta đã cùng nhau phân tích hai nguyên nhân chính: Yarn chưa được cài đặt trên hệ thống, hoặc đã được cài đặt nhưng đường dẫn của nó chưa được thêm vào biến môi trường PATH.
AZWEB đã cung cấp cho bạn một lộ trình xử lý rõ ràng: từ việc sử dụng các lệnh như yarn --version và which yarn để chẩn đoán chính xác, đến các hướng dẫn cài đặt chuẩn xác cho các bản phân phối Linux phổ biến như Ubuntu/Debian và CentOS/Fedora. Quan trọng hơn, chúng ta đã đi sâu vào cách hoạt động của biến môi trường PATH và cách cấu hình nó một cách đúng đắn trong file .bashrc để Bash luôn “nhìn thấy” lệnh yarn. Bằng cách thực hành các bước kiểm tra, cài đặt và cấu hình này, bạn không chỉ giải quyết được vấn đề trước mắt mà còn trang bị cho mình kiến thức nền tảng để tự tin quản lý môi trường phát triển của mình.
Hãy nhớ rằng, việc xây dựng một môi trường làm việc ổn định là bước đầu tiên và quan trọng nhất cho mọi dự án thành công. Đừng để những lỗi nhỏ như thế này làm gián đoạn dòng chảy công việc của bạn. Chúc bạn thành công