Nohup hoặc màn hình - 副本
2024-10-16 13:34:54
tin tức
tiyusaishi
Tiêu đề: Nohup & Screen: Escorting Your Command Line Sessions
Trong cả môi trường Unix và Linux, các hoạt động dòng lệnh là một phần công việc hàng ngày của chúng tôi. Đôi khi chúng ta cần tạm thời rời khỏi thiết bị đầu cuối hoặc phiên từ xa, nhưng không muốn mất trạng thái phiên hiện tại hoặc các tác vụ nền. Lúc này, chúng ta có thể sử dụng hai công cụ mạnh mẽ: nohup và screen. Chúng đảm bảo rằng các phiên và quy trình của chúng tôi chạy liên tục trong nền, ngay cả khi chúng tôi tạm thời bị ngắt kết nối. Bài viết này sẽ trình bày chi tiết các tính năng và cách sử dụng của hai công cụ này.
1. nohup: Giữ cho các lệnh của bạn chạy trong nền
Đầu tiên, chúng ta hãy tìm hiểu về lệnh nohup. Khi bạn đăng nhập từ xa vào máy chủ thông qua SSH hoặc các phương tiện khác và thực hiện một số tác vụ nhất định, phiên và lệnh đang chạy của bạn thường bị chấm dứt sau khi bạn ngắt kết nối. Tuy nhiên, nếu bạn muốn tiếp tục chạy lệnh sau khi ngắt kết nối, bạn có thể sử dụng lệnh nohup. Đây là một công cụ rất hữu ích, đặc biệt là khi thực hiện các tác vụ dài.
Cú pháp cơ bản để sử dụng lệnh nohup như sau:
nohupcommand>/dev/null2>&1&
Các thông số ở đây được giải thích như sau:
lệnh: Lệnh bạn muốn chạy.
/dev/null: Chuyển hướng đầu ra đến một thiết bị trống, nghĩa là bạn sẽ không thấy bất kỳ đầu ra nào.
2>&1: Chuyển hướng đầu ra lỗi tiêu chuẩn sang đầu ra tiêu chuẩn. Bằng cách này, tất cả đầu ra sẽ được chuyển hướng đến tệp được chỉ định hoặc thiết bị trống.
&: Làm cho lệnh chạy trong nền.
Khi sử dụng lệnh nohup, bạn nên chuyển hướng đầu ra đến một tệp để bạn có thể xem tiến trình hoặc kết quả của tác vụ sau này. Điều này đặc biệt quan trọng đối với các nhiệm vụ dài hạn. Tuy nhiên, điều quan trọng cần lưu ý là các lệnh chạy với nohup không duy trì trạng thái phiên ở chế độ nền và chúng sẽ bị dừng nếu phiên bị chấm dứt hoặc mạng bị ngắt kết nối. Điều này đưa chúng ta đến công cụ tiếp theo, màn hình.
2. Màn hình: Một cách mới để quản lý các phiên thiết bị đầu cuối của bạn
Screen là một công cụ để quản lý phiên đầu cuối, có thể tạo một hoặc nhiều cửa sổ để chạy lệnh hoặc chương trình, cho phép người dùng chuyển đổi giữa nhiều cửa sổ và duy trì trạng thái phiên trong nền. Ngay cả khi bạn ngắt kết nối hoặc đóng cửa sổ terminal, phiên màn hình sẽ tiếp tục chạy. Điều này rất tốt cho nhiều giờ làm việc hoặc đa nhiệm. Dưới đây là một số bước cơ bản để sử dụng màn hình:
1. Màn hình cài đặt (nếu bạn chưa có): Hầu hết các bản phân phối Linux đều có công cụ màn hình tích hợp sẵn, nhưng nếu bạn chưa có, bạn có thể dễ dàng cài đặt nó thông qua trình quản lý gói. Ví dụ, trên một hệ thống dựa trên Debian, nó có thể được cài đặt bằng cách sử dụng lệnh apt-getinstallscreen.
2. Bắt đầu phiên màn hình: Chỉ cần nhập lệnh màn hình vào thiết bị đầu cuối để bắt đầu phiên màn hình mới. Bạn sẽ thấy một giao diện dòng lệnh hoàn toàn mới, nơi bạn có thể chạy các lệnh như bình thường. Tất cả các cửa sổ đang mở vẫn hoạt động trong phiên màn hình.
3. Quản lý cửa sổ: Bạn có thể sử dụng các phím tắt để tạo cửa sổ mới, chuyển đổi cửa sổ, đóng cửa sổ, v.v. Ví dụ: Ctrl-afollowedbyc có thể tạo một cửa sổ mới, Ctrl-afollowedbyn có thể chuyển đổi giữa các cửa sổ khác nhau, v.v. Bạn có thể xem tài liệu trợ giúp dành cho màn hình để tìm hiểu thêm về phím tắt và cách sử dụng chúng.
4. Ngắt kết nối và giữ trạng thái phiên: Phiên màn hình sẽ tiếp tục chạy ngay cả khi bạn đóng cửa sổ đầu cuối hoặc ngắt kết nối khỏi SSH. Khi bạn kết nối lại, chỉ cần khởi động lại màn hình và tiếp tục phiên để tiếp tục công việc trước đó của bạn. Điều này rất hữu ích cho việc quản lý máy chủ từ xa và các tập lệnh chạy dài. Để thoát khỏi phiên màn hình mà không cần đóng nó, bạn có thể nhập Ctrl-afollowedbyd để đặt phiên đang chạy ở chế độ nền và ngắt kết nối. Khi kết nối lại, chỉ cần thực hiện screen-r để tiếp tục phiên. Đây chỉ là một số tính năng cơ bản của Màn hình và cách sử dụng nó. Để biết thêm chi tiết và mẹo, vui lòng tham khảo tài liệu chính thức hoặc hướng dẫn liên quan. Nhìn chung, nohup và màn hình là những công cụ rất hữu ích trong môi trường dòng lệnh. Chúng cho phép chúng tôi chạy các tác vụ trong nền và duy trì phiên ngay cả khi bị ngắt kết nối, điều này mang lại sự tiện lợi lớn cho việc quản lý từ xa và các tác vụ dài của chúng tôi, thông qua phần giới thiệu bài viết này, bạn nên nắm vững cách sử dụng cơ bản của hai công cụ này, tôi hy vọng chúng có thể giúp bạn cải thiện năng suất và giải quyết nhiều thách thức trong công việc tương lai của bạn, hãy khám phá và sử dụng các công cụ dòng lệnh mạnh mẽ này sâu hơn, mang lại khả năng vô hạn cho thế giới dòng lệnh!