Giết quá trình php linux

Regarding what 'nytshadow' said, it's important to realize that max-execution-time and the set_time_limit functions measure the time that the CPU is working on the script.  If the script blocks, IE: for input, select, sleep, etc., then the time between blocking and returning is NOT measured.  This is the same when running scripts from the command line interface.  So if you've got a log parser written in PHP that tails a file, that program WILL fail eventually.  It just depends how long it takes to read in enough input to process for 30 seconds.

If you're writing a command line script that should run infinitely, setting max-execution-time to 0 [never stop] is HIGHLY recommended.

return may be preferable to exit in certain situations, especially when dealing with the PHP binary and the shell.

I have a script which is the recipient of a mail alias, i.e. mail sent to that alias is piped to the script instead of being delivered to a mailbox. Using exit in this script resulted in the sender of the email getting a delivery failure notice. This was not the desired behavior, I wanted to silently discard messages which did not satisfy the script's requirements.

After several hours of trying to figure out what integer value I should pass to exit[] to satisfy sendmail, I tried using return instead of exit. Worked like a charm. Sendmail didn't like exit but it was perfectly happy with return. So, if you're running into trouble with exit and other system binaries, try using return instead.

Giới thiệu

Một quy trình là một thuật ngữ máy tính diễn ra một ứng dụng hoặc một phần mềm. Ví dụ, khi mở trình duyệt như Chrome, chúng tôi gọi nó là tiến trình, chịu trách nhiệm cho việc chạy / thực thi Chrome, đã được mở và sẽ luôn chạy cho đến khi đóng trình duyệt. Kể cả khi chúng ta thực thi bất kỳ lệnh bash nào, một phiên bản mới của quy trình sẽ xuất hiện. Nếu ta mở cùng một ứng dụng 2 lần hoặc nếu bạn hoặc bạn của bạn mở nó trên cùng một máy tính, 2 quá trình sẽ khởi động. Trong bài viết hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách quản lý các Quy trình trên linux thông qua dòng lệnh. Việc này là cần thiết nếu bạn thấy có các tiến trình đang hoạt động đang chạy hoặc nếu bạn muốn xem tiến trình nào mà người dùng nào đang sử dụng hoặc chỉ cần biết tiến trình nào chiếm nhiều tài nguyên máy tính nhất

Bạn cần gì?

Trước khi bắt đầu, bạn có cần

  • Truy cập vào dòng lệnh

Bước 1 — Xem các process trong Linux

Từ khóa hữu dụng cần học trước khi đọc bài hướng dẫn này

  1. PID – ID quy trình. Mỗi Process có 5 ký tự số. Những số này có thể hết [hết số] và bắt đầu lại, nhưng tại bất kỳ thời điểm nào, không có hơn 1 PID trong hệ thống
  2. PPID – Xử lý ID gốc. ID của tiến trình khởi động tiến trình này

2 lệnh phổ biến nhất được sử dụng là xem các quy trình là trên cùng và ps. Khác biệt là top được sử dụng để tương tác nhiều còn ps được sử dụng trong các tập lệnh, kết hợp với các lệnh bash khác hoặc tương tự

top – lệnh top là đơn giản và phổ biến nhất để hiển thị các tiến trình sử dụng nhiều tài nguyên máy tính nhất. Khi thực hiện lệnh  top trong terminal, chúng ta sẽ thấy cửa sổ tương tự như sau

.

top là ứng dụng, sau khi thực hiện lệnh, bố cục hiện lên và danh sách quy trình liên tục được cập nhật từng giây. Bố cục mới này có thể tương tác với bàn phím. Ví dụ

  • h hay ?
  • không gian – Nhấn không gian trên bàn phím sẽ cập nhật bảng xử lý ngay lập tức thay vì phải đợi vài giây
  • f – Thêm trường mới để hiển thị bố cục hoặc xóa trường định sẵn nhất vì vậy bạn sẽ không thấy nó hiển thị.
  • q – thoát ứng dụng trên cùng hoặc mở thêm cửa sổ mới của ứng dụng trên cùng. Ví dụ,sau khi sử dụng tính năng f
  • l – Bật/tắt thông tin trung bình tải và thời gian hoạt động
  • m – Bật/tắt thông tin bộ nhớ
  • P [Shift + p] – Sắp xếp tiến trình bằng mức sử dụng CPU
  • s – Đổi xung đột giữa các lần làm mới [Bạn sẽ được hỏi bao nhiêu giây]

Với lệnh top, bạn có thể sử dụng các tùy chọn sau, ví dụ

  • -d delay – verify the setting
  • -n number – làm mới trang bao nhiêu lần, sau đó thoát
  • -p pid – chỉ hiển thị và giám sát quy trình với ID quy trình đúng được chọn
  • -q – làm mới mà không có độ trễ

Để sử dụng lệnh hữu ích hơn, hãy xem qua trang này trang web này

Ngoài ra, bạn có thể sử dụng lệnh man top để hiển thị những thông tin hữu ích khác liên quan đến lệnh này

Những lợi ích của việc sử dụng lệnh hàng đầu

Hiển thị các quy trình liên quan đến người dùng, bạn có thể sử dụng lệnh sau. người dùng hàng đầu

  • Để xóa các tiến trình đang chạy, sau khi vào ứng dụng trên cùng, tìm pid của tiến trình bạn muốn tắt, sau đó nhấn nút k [một lệnh bằng bàn phím khác]. Bạn cũng sẽ được hỏi ID tiến trình [điền số ID bạn muốn tắt]
  • Bạn có thể lưu lại cấu hình của lệnh trên cùng hiện tại bằng phím tắt Shift + W. Cài đặt sẽ được lưu trong  /root/. toprc

ps – Một lệnh hữu ích khác để hiển thị các tiến trình trong Linux. Sau đây là một số tùy chọn thường được sử dụng với lệnh ps

  • -e – Hiện tất cả các quy trình
  • -f – Toàn bộ danh sách được định dạng
  • -r – Chỉ hiện những tiến trình đang chạy
  • -u – chỉ định tên người dùng [hoặc nhiều tên người dùng]
  • –pid – filter based on PID
  • –ppid – filter based on parent PID
  • -C – filter based on name and command
  • -o – Hiện thông tin liên quan đến từ khóa cách nhau bởi khoảng trắng hoặc dấu ủy

Sau đây là một số ví dụ bạn có thể sử dụng với lệnh “ps”

  1. ps -ef – Listing process are running now. [Một lệnh tương tự là ps aux]
  2. ps -f -u user1,user2 – Sẽ hiển thị tất cả quá trình dựa trên UID [id người dùng hoặc tên người dùng]
  3. ps -f –pid id – Hiển thị tất cả các quy trình dựa trên ID quy trình [pid]. Điền PID hoặc PPID thay cho id. Cannot used with PPID to process based on parent ID
  4. ps -C command/name – Lọc Các quy trình dựa trên tên của nó hoặc lệnh
  5. ps aux –sort=-pcpu,+pmem – Hiển thị tiến trình đang sử dụng nhiều tài nguyên nhất của CPU
  6. ps -e -o pid,uname,pcpu,pmem,comm – Được dùng để lọc cột được chỉ định
  7. ps -e -o pid,comm,etime – Việc này sẽ hiển thị thời gian đã được sử dụng của tiến trình

Chúng tôi khuyên bạn nên xem qua trang này để có nhiều thông tin hơn về lệnh ps

Bước 2 — Tắt và ưu tiên Process

Chúng ta đã biết cách kill process bằng command top ở bước trước. Nhưng bạn cũng có thể làm như vậy với lệnh kill. Ví dụ

giết pid – Nhập số PID để thay thế pid. Nếu quá trình quá khó để giết, hãy sử dụng. giết -9 pid

Một câu lệnh hữu dụng khác để quản lý quy trình là NICE. Về cơ bản, nó cho bạn ưu tiên quy trình nào quan trọng trong trường hợp bạn chạy nhiều. Bằng cách này, máy tính sẽ biết process nào quan trọng hơn và sẽ chạy chúng trước. Quá trình với mức ưu tiên thấp hơn sẽ chỉ chạy khi nó được yêu cầu [nếu nguồn CPU hết mức sử dụng] Lệnh này có thể cho giá trị từ -20 đến 19. Giá trị càng thấp, thì ưu tiên càng cao. Default tất cả quy trình là 0. Constructor of command will as after

  • nice -n 'Nice value' tên quy trình – Ví dụ. tên đẹp -n 10. Lệnh này sẽ khởi động một quy trình mới với mức độ ưu tiên được chỉ định
  • Nếu có một số tiến trình đang chạy trên hệ thống, bạn có thể cần một giá trị khác với giá trị đang có, bạn có thể sử dụng lệnh. renice ‘Nice value’ -p ‘PID’ – Ví dụ. gia hạn '10' -p '54125'

Kết luận

Trong bài hướng dẫn này, bạn đã biết cách quản lý tiến trình trong Linux. Có nhiều cách kết hợp lệnh để sử dụng, các bạn hãy thử và trải nghiệm

Chủ Đề