Điểm:2

Ubuntu 20.04.3 Sự cố khi chạy Firefox từ thiết bị đầu cuối

lá cờ ru

Tôi là người dùng mới của Ubuntu 20.04.3. Tôi đã gặp một vấn đề với việc chạy firefox trình duyệt web từ thiết bị đầu cuối.

Khi tôi gõ 'firefox' trong thiết bị đầu cuối, tôi nhận được thông báo:

CHÚ Ý: giá trị mặc định của tùy chọn mesa_glthread bị ghi đè bởi môi trường.

CHÚ Ý: giá trị mặc định của tùy chọn mesa_glthread bị ghi đè bởi môi trường.

CHÚ Ý: giá trị mặc định của tùy chọn mesa_glthread bị ghi đè bởi môi trường.

CHÚ Ý: giá trị mặc định của tùy chọn mesa_glthread bị ghi đè bởi môi trường.

Firefox cuối cùng cũng khởi chạy, nhưng nếu tôi đóng cửa sổ đầu cuối thì nó cũng tắt firefox của tôi.

lá cờ us
Vui lòng chỉnh sửa câu hỏi để thêm đầu ra của thiết bị đầu cuối dưới dạng mã, thay vì đăng ảnh chụp màn hình.
Điểm:3
lá cờ cn

Có một số cách để làm cho quy trình nền của bạn có khả năng phục hồi treo lên đầu tiên, bạn có nohup hướng dẫn các dấu hiệu chức năng bỏ qua ĐĂNG KÍ trước khi tự thay thế bằng quy trình mới (execvp). Tuy nhiên, đối với các ứng dụng thực hiện lại việc xử lý tín hiệu, điều này là không thể.

Tiếp theo, các bộ định lệnh hoạt động theo cùng một cách, nhưng thay vì điều khiển tín hiệu, thiết lập() được sử dụng để tạo phiên mới, điều này sẽ không làm cho ứng dụng của bạn trở nên miễn nhiễm, nhưng ít nhất nó sẽ không nhận thêm bất kỳ tín hiệu nào từ thiết bị đầu cuối. Bây giờ, hai lệnh này có thể được kết hợp, ví dụ: nếu SIGHUP được vinh danh hoặc Nohup sẽ dư thừa.

Cuối cùng, với từ chối bạn có thể xóa ứng dụng của mình khỏi các công việc đang hoạt động hoặc đánh dấu ứng dụng bằng cách sử dụng -h để không nhận SIGHUP được gửi từ trình bao. Bây giờ, như với bộ định, điều này sẽ không làm cho ứng dụng của bạn trở nên miễn nhiễm, nhưng miễn là SIGHUP không được gửi trực tiếp đến quy trình, bạn sẽ ổn thôi.

firefox &>/dev/null & disown

Bạn cũng có thể từ chối một ứng dụng đang chạy.

$firefox
ctrl + z
^Z
[1]+ Đã dừng firefox
$ bg
$ từ chối

từ chối cũng lấy jobspec hoặc pid làm đối số.

sudodus avatar
lá cờ jp
+1, Cảm ơn, đây là câu trả lời rất hữu ích :-)
Điểm:2
lá cờ us

Nếu bạn muốn có thể đóng thiết bị đầu cuối sau khi khởi chạy phần mềm đồ họa, bạn cần sử dụng --tách.

Ví dụ:

firefox --detach
N0rbert avatar
lá cờ zw
Tôi không thấy `--detach` trên [trang man của firefox](http://manpages.ubuntu.com/manpages/focal/en/man1/firefox.1.html). Ý bạn là `Ctrl`+`Z`, tiếp theo là `bg` ?
sudodus avatar
lá cờ jp
Bạn có biết sự khác biệt giữa việc sử dụng `firefox --detach &` và `nohup firefox &` (ngoại trừ việc Nohup sẽ lưu đầu ra của thiết bị đầu cuối vào `nohup.out`)?
sudodus avatar
lá cờ jp
@ N0rbert, bạn nói đúng, nhưng nó vẫn hoạt động.
ChanganAuto avatar
lá cờ us
@ N0rbert Đây là cùng một tham số được sử dụng bởi trình duyệt Gói TOR dựa trên Firefox ESR, đó là lý do tại sao nó hoạt động và đủ đơn giản để OP sử dụng.
lá cờ ru
@ChanganAuto sau khi sử dụng firefox --detach, khi cố gắng đóng thiết bị đầu cuối, nó vẫn đóng trình duyệt web
ChanganAuto avatar
lá cờ us
@kowczarek Nói một cách đơn giản là không thể. Bạn đã nhập sai thứ gì đó hoặc có thể bạn đang cố chạy nó với quyền root, điều mà bạn không bao giờ nên làm.
sudodus avatar
lá cờ jp
@kowczarek, `--detach` hoạt động với tôi, nhưng phải có điều gì đó khác biệt giữa các hệ thống của chúng tôi. Dù sao đi nữa, vui lòng thử `nohup firefox &` và cho chúng tôi biết nó hoạt động như thế nào khi bạn đóng cửa sổ đầu cuối của mình. - Nhân tiện, làm thế nào để bạn đóng thiết bị đầu cuối của mình?
lá cờ ru
@sudodus Tôi đã thử 'nohup firefox &'. Nó khởi chạy firefox và tôi có thể đóng thiết bị đầu cuối, nhưng khi tôi làm như vậy, nó sẽ giết phiên firefox của tôi và tôi nhận được thông báo này: "Gah. Tab của bạn vừa bị lỗi. Chúng tôi có thể trợ giúp! Chọn Khôi phục Tab này để tải lại trang." Và đối với câu hỏi của bạn 'làm cách nào để đóng thiết bị đầu cuối', tôi chỉ cần nhấn X ở góc trên bên phải, đó có phải là cách tồi không? :(
bac0n avatar
lá cờ cn
thông thường, khi bạn thực sự muốn tách một quy trình, tôi nghĩ `setsid` hoạt động tốt nhất.
sudodus avatar
lá cờ jp
@kowczarek, Điều này thật lạ. Tôi đã thử nghiệm trên máy tính chính của mình với 18.04.x ​​LTS, nơi nó hoạt động. Bây giờ tôi đã thử nghiệm trong một hệ thống thử nghiệm với Ubuntu 20.04.3 tiêu chuẩn cập nhật và tôi cũng nhận được kết quả giống như bạn. ***Bạn nên đóng cửa sổ terminal bằng nút x :-( Nhưng khi tôi đóng terminal bằng cách gõ `exit` (từ bash trong cửa sổ terminal), firefox vẫn tồn tại mà không có khiếu nại :-)
sudodus avatar
lá cờ jp
Xem [liên kết này](https://paste.ubuntu.com/p/G4wNMBRYMY/) tới pastebin Ubuntu với đầu ra tới tab Firefox và tới `nohup.out`, khi thoát khỏi `gnome-terminal' trong Ubuntu 20.04.3 LTS.
sudodus avatar
lá cờ jp
Bạn nói đúng @bac0n, `setsid firefox &` hoạt động. Firefox vẫn tồn tại khi thoát khỏi `gnome-terminal' trong Ubuntu 20.04.3 LTS (cả khi nhấn nút x). Bạn có thể giải thích sự khác biệt? Tôi khuyên bạn nên viết câu trả lời (và tôi hứa sẽ ủng hộ nó).
bac0n avatar
lá cờ cn
có thể `setsid -f firefox` hoạt động.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.