Chuyển tới nội dung

Cách chạy tập lệnh khi khởi động trên Raspberry Pi

    1652400602

    Có rất nhiều lý do khiến bạn muốn chạy một tập lệnh Python, một ứng dụng hoặc một loại tập lệnh khác (ví dụ: tập lệnh Bash) mỗi khi Raspberry Pi của bạn khởi động. Có lẽ bạn có một robot hoặc thiết bị IoT phải sẵn sàng thực hiện một tác vụ ngay khi Raspberry Pi cấp nguồn cho nó khởi động. Hoặc có thể bạn chỉ muốn có một chương trình cụ thể luôn chạy trong nền và không muốn phải khởi chạy chương trình đó theo cách thủ công ở mỗi phiên.

    Có một số cách để tự động khởi động tập lệnh khi khởi động Raspberry Pi, nhưng cách dễ nhất là sử dụng crontab, một tính năng lập lịch cũng cho phép bạn đặt tập lệnh chạy vào những thời điểm cụ thể.

    Cách chạy Script tại Raspberry Pi Boot

    1. Chỉnh sửa danh sách crontab của bạn bằng cách nhập:

    Bạn có thể khởi chạy crontab mà không cần nhập sudo, nhưng nếu làm vậy, bạn sẽ không thể chạy các tập lệnh yêu cầu đặc quyền quản trị viên. Trên thực tế, bạn sẽ có một danh sách crontabs khác nếu bạn không sử dụng sudo, vì vậy đừng quên tiếp tục sử dụng hoặc không sử dụng.

    2. Chọn nano nếu bạn được nhắc yêu cầu trình chỉnh sửa.

    Một tệp sẽ mở ra.

    3. Thêm một dòng ở cuối tệp có nội dung như sau:

    Dòng phải bắt đầu bằng @reboot cho biết nó chạy mỗi khi bạn khởi động Raspberry Pi. Nếu đó là một tập lệnh Python, bạn sẽ muốn đặt lệnh để khởi chạy trình thông dịch python hoặc python3, theo sau là đường dẫn đầy đủ đến tập lệnh Python của bạn. 

    Nếu đó là một tập lệnh Bash hoặc một ứng dụng khác, chỉ cần đặt đường dẫn đầy đủ đến nó.

    4. Lưu và thoát. Trong nano, bạn làm điều đó bằng cách nhấn CTRL + X, trả lời Y và nhấn Enter khi được nhắc.

    5. Làm cho tập lệnh của bạn có thể thực thi được nếu nó là tập lệnh Bash. Các tập lệnh Python sẽ không cần phải thực thi được vì đã có trình thông dịch Python. Bạn có thể thực thi bất kỳ tập lệnh nào bằng cách nhập 

    Nếu bạn muốn xóa tập lệnh của mình khỏi crontab, chỉ cần nhập lại sudo crontab -e và xóa hoặc nhận xét dòng đó. Lưu ý rằng, nếu bạn đang xây dựng một dự án không yêu cầu bạn sử dụng môi trường cửa sổ, bạn có thể tiết kiệm tài nguyên hệ thống bằng cách định cấu hình Raspberry Pi để khởi động vào dòng lệnh bằng cách nhập sudo raspi-config và sau đó điều hướng đến Tùy chọn khởi động – > Desktop / CLI và chọn Console Autologin.

    Cách tự động chạy tập lệnh hoặc ứng dụng trong GUI Raspberry Pi

    Nếu bạn muốn tập lệnh hoặc ứng dụng của mình chạy khi khởi động Raspberry Pi trong GUI cửa sổ, hãy làm theo các bước sau.

    1. Tạo một tệp có tên myapp.desktop (hoặc một cái gì đó khác .desktop) trong thư mục / etc / xdg / autostart /.

    2. Sử dụng bố cục sau trong tệp myapp.desktop. 

    Đặt lệnh và bất kỳ tham số nào trên dòng Exec =. Ví dụ: để trình duyệt Chrome mở đến một trang web, bạn phải đặt “chrome-browser [URL].” Nếu ứng dụng của bạn yêu cầu quyền sudo, bạn có thể đặt sudo trong lệnh Exec. 

    Để chạy tập lệnh trong cửa sổ đầu cuối, hãy sử dụng lxterminal theo sau là tham số –command và dấu ngoặc kép với “/ bin / bash -c ‘MYCOMMANDS HERE; / bin / bash ”’. Ví dụ: để khởi chạy tập lệnh python3 yêu cầu quyền sudo, bạn sẽ sử dụng: 

    Điều đó sẽ khởi chạy một cửa sổ đầu cuối trong môi trường cửa sổ khi khởi động với tập lệnh của bạn đang chạy trong đó. Sau khi tập lệnh kết thúc (hoặc bạn hủy bỏ nó bằng cách nhấn CTRL + C), bạn cửa sổ đầu cuối sẽ quay trở lại lời nhắc. Nếu bạn muốn cửa sổ đầu cuối tự đóng khi hoàn thành tập lệnh, bạn có thể bỏ dấu; / bin / bash ở cuối.

    Chạy một tập lệnh trong cửa sổ đầu cuối như thế này có thể hữu ích, bởi vì nếu đó là tập lệnh Python trên vòng lặp vô tận (chẳng hạn như bạn có cho rô bốt), bạn có thể dễ dàng hủy tập lệnh bằng cách nhấn CTRL + C. Nếu không, để giết tập lệnh, bạn cần tìm quy trình mà chúng tôi mô tả bên dưới.

    Giết kịch bản

    Điều gì sẽ xảy ra nếu bạn muốn dừng tập lệnh chạy tự động của mình sau khi Raspberry Pi của bạn đã khởi động? Nếu tập lệnh của bạn đã chạy xong, nó sẽ biến mất khỏi bộ nhớ nhưng nếu nó được thiết kế để làm một việc gì đó liên tục, bạn sẽ cần phải tìm kiếm và kết thúc tác vụ.

    1. Tìm kiếm tập lệnh của bạn bằng cách sử dụng lệnh ps aux và đặt tên của tập lệnh của bạn (hoặc ít nhất là một phần tên) sau grep.

    Thay thế app.py bằng tên tập lệnh của bạn. Bạn sẽ thấy một danh sách các số quy trình.

    2. Diệt từng số tiến trình bằng lệnh sudo kill -9. Ví dụ,

    Hướng dẫn khác:

    Cách chụp ảnh màn hình trên Raspberry Pi
    Cách thiết lập máy chủ web Raspberry Pi
    Cách chạy Raspberry Pi 4 hoặc 3 ngoài ổ SSD hoặc ổ đĩa Flash
    Cách tạo phím tắt tùy chỉnh trên Raspberry Pi
    Cách chạy trình giả lập trên Raspberry Pi 4
    25+ lệnh Linux Người dùng Raspberry Pi cần biết
    Cách tạo áo sơ mi News Ticker với Raspberry Pi

    0 0 đánh giá
    Rating post
    Theo dõi
    Thông báo của
    guest
    0 comments
    Phản hồi nội tuyến
    Xem tất cả bình luận
    0
    Rất thích suy nghĩ của bạn, hãy bình luận.x