Làm cách nào để buộc NetworkManager tạo kết nối trước khi đăng nhập?


8

Tôi để máy tính xách tay ở nhà 95% thời gian. Tôi muốn nó kết nối với mạng không dây của tôi mà không cần tôi phải đăng nhập. Và, cũng quan trọng, tôi muốn nó KHÔNG bị ngắt kết nối khi tôi đăng xuất.

Tôi đang sử dụng Fedora, nhưng hướng dẫn Ubuntu cũng được chào đón.

Câu trả lời:


5

Tôi đoán câu hỏi này đã được hỏi cách đây một thời gian, nhưng tính năng này đã được thêm vào các phiên bản gần đây của Trình quản lý mạng. Xem đây .


Kể từ tháng 5 năm 2011, liên kết đó cho biết: Trên phiên bản 0.7.1 trở lên, hãy chỉnh sửa cấu hình của kết nối mà bạn bắt đầu trước khi đăng nhập và chọn hộp ở phía dưới bên trái "Có sẵn cho tất cả người dùng"
Joe

Ngoài ra, nó không hoạt động đối với tôi trên một odroid chạy hình ảnh Ubuntu 14.04 được cung cấp.
Andrew Wagner

Câu trả lời này (và tài liệu được liên kết) đã lỗi thời, ít nhất là từ Ubuntu 14.04. Tất nhiên, thông tin lỗi thời trong Câu hỏi thường gặp đó chưa bị xóa.
Andrew Wagner

3

Vấn đề với ý tưởng này là dịch vụ NetworkManager nhận các lệnh của nó từ nm-applet (hoặc tương tự KDE, nếu bạn đang ở KDE. Để tránh nhầm lẫn, tôi sẽ cho rằng bạn đang ở trong Gnome). Có một giao diện NetworkManager dòng lệnh trong các kho lưu trữ được gọi là cNetworkManager (điều đó, thật kỳ lạ, được viết bằng Python). Bạn có thể thử gắn một lệnh để kết nối với mạng của mình bằng cNetworkManager trong tập lệnh khởi động (Tôi không hoàn toàn chắc chắn nơi bạn phải đặt tập lệnh này, nhưng tôi biết điều đó là có thể: D). Tôi không biết liệu phương pháp này sẽ kết nối hay liệu nó sẽ được kết nối sau khi bạn đăng xuất, nhưng tôi biết rằng có ít nhất 2 vấn đề bạn sẽ phải giải quyết.

1) Bạn sẽ có kịch bản này chiến đấu với applet nm. Nếu bạn muốn thực hiện điều này, tôi sẽ vô hiệu hóa ứng dụng bắt đầu tự động (có thể định cấu hình theo tùy chọn - & gt; phiên hoặc tùy chọn - & gt; chương trình khởi động, tùy thuộc vào việc bạn có sử dụng fedora 11 hay không).

2) nếu bạn muốn thay đổi mạng (và thực hiện những điều ưa thích như tự động phát hiện chúng), bạn sẽ phải làm như vậy bằng cách sử dụng cNetworkManager (đó là một nỗi đau thực sự), hoặc khởi động nm-applet và mất khả năng giữ kết nối mở sau khi bạn đăng xuất.

Tốt nhất của may mắn, và cho chúng tôi biết nếu điều này làm việc!


Tôi đang dùng máy Windows đang làm việc; Tôi sẽ kiểm tra điều đó khi tôi về nhà. Sẽ thật tuyệt nếu NetworkManager và nm-applet nằm trong các gói khác nhau.
JCCyC

Tôi nghĩ rằng có chúng trong cùng một gói là thực sự cần thiết; điểm cung cấp cho chúng tôi một dịch vụ là gì nếu bạn không cho chúng tôi một phương pháp để kiểm soát nó? Tôi sẽ tranh luận theo hướng ngược lại; cNetworkManager cũng phải có trong gói NetworkManager, vì khi bạn cần kiểm soát thẻ không dây của mình khi X không chạy (điều này đã xảy ra với tôi một số lần lớn không đáng kể)
Babu

Tôi không chắc chắn liệu cNetworkManager này có tồn tại kể từ năm 2015. Có một công cụ "nmcli" mà theo tôi được cài đặt theo mặc định và cho phép bạn làm việc với trình quản lý mạng từ cli.
Andrew Wagner

2

Tôi đã có cùng một vấn đề và cuối cùng tôi đã loại bỏ hoàn toàn NetworkManager và sử dụng wpa_supplicant trực tiếp. Nó hoạt động theo cách ngược lại - bạn có một tệp cấu hình với tất cả các mạng bạn muốn kết nối tự động và GUI có thể ghi đè lên nó trong thời gian chạy (và kết nối với một mạng khác) hoặc để thay đổi tệp cấu hình .

Tôi đã sử dụng hướng dẫn này để thiết lập Debian của mình và tôi không gặp quá nhiều vấn đề với nó (giống như Ubuntu): http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/branches/unurdy/debian/README.Debian?op=file&rev=0&sc=0


1

Tôi đã sử dụng phương pháp của Andrew Wagner trên Fedora 22 để kết nối với bảo mật WPA.

  1. Tạo kết nối "demo" thông thường bằng GUI.

  2. Khi root tạo một tập tin / etc / NetworkManager / wifipw với mục nhập một dòng:

    802-11-wireless-security.psk:wpa-pw 
    

Ở đâu wpa-pw là mật khẩu wifi.

  1. Thêm dòng sau vào crontab cho gốc:

    @reboot sleep 10; /usr/bin/nmcli conn up id demo passwd-file etc/NetworkManager/wifipw
    

Hệ thống ngủ 10 là cần thiết trên hệ thống của tôi để cho thiết bị có thời gian khởi tạo trước khi thử kết nối.


0

Có thể đó không phải là một tùy chọn cho bạn, nhưng bạn có thể thiết lập mạng thông qua các tệp cấu hình như trong hướng dẫn . Nó dành cho Ubuntu, nhưng tôi không nhận thấy sự khác biệt. Mạng sẽ được bật trong quá trình khởi động hệ điều hành.


Đây là một giải pháp tốt, nhưng cũng có những cảnh báo với điều này. NetworkManager và các dịch vụ mạng không nên được chạy cùng một lúc; cả hai sẽ cố gắng kiểm soát phần cứng không dây cùng một lúc và làm những điều kỳ lạ. Những gì bạn có thể làm là kích hoạt dịch vụ mạng theo mặc định và chỉ kích hoạt tính năng mạng khi có yêu cầu.
Babu


0

Đây là những gì tôi đã làm (trên một bảng điều khiển odroid chạy Ubuntu 14.04):

Thiết lập kết nối mạng bằng cách sử dụng, ví dụ như nm-applet, như người dùng bình thường của bạn, đặt tên cho nó, tức là "Bản trình diễn Decktop". Bạn có thể cần kiểm tra hộp Chung- & gt; "Tất cả người dùng có thể kết nối với mạng này".

Chỉnh sửa "cron" thành siêu người dùng:

sudo crontab -e

chọn trình soạn thảo bạn chọn nếu được nhắc và thêm một dòng ở dưới cùng:

@startup / usr / bin / nmcli kết nối id "Desktop Demo"

hiến tế một con vật nhỏ cho các vị thần quản lý mạng và khởi động lại.

Phương pháp này có lợi thế là thực hiện mọi thứ thông qua trình quản lý mạng, vì vậy nó nên chơi tốt các applet quản lý mạng gui cho các máy tính để bàn khác nhau, ví dụ như nm-applet.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.