Khởi động ubfox không có môi trường máy tính để bàn nhưng khởi động ứng dụng X


29

Tôi muốn làm một máy tính nhỏ chỉ để duyệt internet. Tôi không muốn tải môi trường máy tính để bàn để giữ mức sử dụng RAM, CPU và GPU càng thấp càng tốt. Máy tính sẽ chạy trên CPU ARM. Tôi không quan tâm với Distro tôi sử dụng, tôi nghĩ về Debian đơn giản cũ.


Sau đó, tôi muốn đề xuất iso tối thiểu trên Ubuntu và cài đặt hộp đen DE
Tachyons

Tôi không thực sự là một chuyên gia, nhưng tôi khuyên bạn nên xem cấu hình xsession (có một trang dành cho xsession). Nếu bạn chỉ muốn hành vi này cho một người dùng, hãy tạo một tệp trong thư mục chính của người dùng có tên .xsession và đặt lệnh bạn muốn chạy trong đó. Sau đó, bạn có thể phải sử dụng trình quản lý đăng nhập cho phép bạn đăng nhập vào xsession mặc định thay vì một số môi trường máy tính để bàn khác (hoặc vô hiệu hóa trình quản lý đăng nhập và thay vào đó sử dụng startx). Tuy nhiên, thay vào đó, tôi khuyên bạn nên sử dụng trình quản lý cửa sổ tiết kiệm ressource (hộp đen đề xuất của Tachyons và có rất nhiều cái khác).
soulsource

Nếu bạn không tải môi trường máy tính để bàn, làm thế nào bạn có thể mở trình duyệt internet?
dlin

5
@Nick Bạn có thể. Với máy chủ X đơn giản là 'phiên' không có trình quản lý cửa sổ, bạn có thể chạy chính xác một ứng dụng toàn màn hình (không có viền hoặc trang trí khác). Đây là cách các bản phân phối XBMC tối thiểu này hoạt động chẳng hạn. Tôi đã làm điều này với Chromium một vài năm trước vào ngày 10.04 - nhưng tôi đã không lưu cấu hình chính xác.
gertvdijk

"Tôi đã nghĩ về Debian cũ đơn giản." Nếu bạn đang xem xét các bản phân phối khác ngoài Ubuntu, thì bạn nên hỏi điều này trên Unix & Linux StackExchange . Trang web Ask Ubuntu này chỉ dành cho Ubuntu - không liên quan đến các câu hỏi của Ubuntu được coi là lạc đề ở đây.
gertvdijk

Câu trả lời:


26
  1. Trong việc /usr/share/xsessions/tạo một tệp ở định dạng ".desktop" để tạo phiên tùy chỉnh, tối thiểu của bạn. Để chạy Google Chrome là ứng dụng duy nhất sau khi đăng nhập, hãy làm điều này:

    [Desktop Entry]
    Type=Application
    Exec=google-chrome
    Name=Google Chrome
    Comment=Testing
    
  2. Khởi động lại trình quản lý hiển thị của bạn, vd

    sudo restart lightdm  # or kdm, gdm, etc.
    

    Hoặc đơn giản là đăng xuất.

  3. "Google Chrome" sẽ xuất hiện trong danh sách phiên để chọn (bên cạnh Unity thông thường hoặc các DE khác mà bạn đã cài đặt).

    Đăng nhập và thưởng thức.

không bắt buộc

  • XDM là trình quản lý hiển thị rất tối thiểu - LightDM, GDM và KDM khá "lớn". Cài đặt mà sử dụng gói xdmCài đặt xdm và cấu hình lại mặc định khi hệ thống của bạn khởi động bằng cách sử dụng

    sudo dpkg-reconfigure lightdm
    
  • Định cấu hình trình quản lý hiển thị của bạn để tự động đăng nhập vào một người dùng cụ thể. Xem tài liệu cho trình quản lý hiển thị của bạn.


1
Nếu một người cần mang toàn bộ Máy tính để bàn, liệu người ta chỉ cần xóa tệp .desktop và khởi động lại?
nhiệt tình

1
@enthusiasticgeek Không cần. Trong trình quản lý đăng nhập, chỉ cần chọn máy tính để bàn đầy đủ để đăng nhập, như được giải thích trong bước 3.
gertvdijk

Có ai biết nóng để chuyển ngôn ngữ đầu vào hệ thống trong chế độ ứng dụng duy nhất không?
fnc12

Có ai phải đối mặt với vấn đề khi con trỏ chuột bị thiếu trong chế độ ứng dụng không?
fnc12

Tôi đã bắt đầu google-chrome --kiosk, nhưng nó không chiếm toàn bộ màn hình .. có cách nào để làm cho nó tối đa hóa không ..?
tumbudu

24

Tôi biết câu hỏi này đã lỗi thời, nhưng tôi không thể thấy câu trả lời chính xác cho yêu cầu khi tôi hiểu nó, vì vậy đây là:

Tôi đã có một dự án để tạo ra một hệ thống nhúng chạy một ứng dụng java đồ họa cụ thể trên một máy tính đơn giản với bộ xử lý Atom và màn hình cảm ứng. Quyết định của tôi là tránh sử dụng các trình quản lý cửa sổ như vậy, để giữ cho nó a) đơn giản, b) nhẹ và c) tránh tất cả các loại thông báo hệ thống xuất hiện trên màn hình.

Hệ thống trông như thế này:

  1. Cài đặt hệ thống Ubuntu cơ bản, biến thể nhẹ nhất 12.04 (vẫn gần 1GB, nhưng đối với tôi ngay cả trên đĩa flash 2 GB). Bạn có thể tra tấn nó một chút để thực hiện cài đặt nhỏ hơn, tất nhiên, có một số cách cho việc đó. Ngoài ra, bạn không phải sử dụng Ubuntu, nhưng sau đó nên xem lại hướng dẫn của tôi dưới đây - có sự khác biệt giữa các bản phân phối, đặc biệt là trên các tệp cấu hình và vị trí của chúng.

  2. Cài đặt xorg và một số phần mềm hữu ích khác, như bộ hiệu chỉnh xinput cho màn hình cảm ứng điện trở của tôi, ifplugd để phát hiện kết nối ethernet trực tiếp, acpid để phát hiện thao tác nút nguồn, v.v.

  3. Mở /etc/init/tty1.conf và thay đổi exec /sbin/getty -8 -i 38400 tty1dòng thành một cái gì đó như exec /sbin/getty -8 -i 38400 tty1 -a username, trong đó "tên người dùng" là tên của người dùng bạn muốn tự động đăng nhập.

  4. Để tự động bắt đầu phiên X, hãy mở tệp .bashrc của người dùng của bạn ~/.bashrcvà thêm một cái gì đó như thế này vào cuối tệp:

    if [ $(tty) == "/dev/tty1" ]; then
        while true; do startx -- -nocursor -depth 16; echo "Again [$?]..."; done
    fi

    (Công cụ -nocoder dành cho màn hình cảm ứng, loại bỏ nó cho màn hình bình thường để xem con trỏ chuột) Điều này sẽ hồi sinh máy chủ X, vì vậy nếu ứng dụng của bạn thoát vì bất kỳ lý do gì, nó sẽ tự động khởi động lại máy chủ X.

  5. Bây giờ trong tệp .xsession của người dùng của bạn, ~/.xsessionhãy viết một cái gì đó như thế này (hãy nhớ rằng mỗi lệnh ở đây được thực thi theo chuỗi, vì vậy hãy sử dụng ký hiệu & ở cuối dòng nếu bạn muốn khởi chạy máy chủ):

    xrandr --output VGA1 --mode 800x600      #For setting a video mode
    xrandr --fb 800x600                      #Not always required, sets the framebuffer size
    xsetbg -center background.png &          #To set the background, comes from the xloadimage package
    xset -dpms s off                         #To avoid screen going blank after a while
    ~username/start.sh                       #Start your application
    #You can put some other application calls here that will be run when your application exits

Có rất nhiều thứ khác để xem xét cho một hệ thống như vậy, đây chỉ là thiết lập cơ bản. Hy vọng nó sẽ giúp được ai đó. Chúc may mắn.


1

Vào thời xa xưa, bạn chỉ có thể chạy Xvà X sẽ khởi động với một màn hình trống. Sau đó, bạn có thể thiết lập DISPLAY=:0và chạy một cái gì đó ở đó. Có lẽ điều này vẫn hoạt động? Từ một cái vỏ bạn sẽ muốn X&làm nền cho nó.

Nhìn vào -geometrytham số dòng lệnh X tiêu chuẩn để điều chỉnh vị trí của cửa sổ, vì bạn sẽ không có trình quản lý cửa sổ để giúp bạn điều đó.

Để chạy một cái gì đó không phải là root, bạn sẽ cần xem xét xauthđể thiết lập ủy quyền X cho người dùng không root.


-3

Trước hết, tôi không hiểu làm thế nào bạn có nghĩa vụ mở trình duyệt web mà không tải Môi trường máy tính để bàn. Nó giống như muốn nấu một bữa ăn mà không cần bật lò nướng. . Được rồi, điều đó là có thể với X Server, đã trả lời sai câu hỏi.

Những gì bạn đang tìm kiếm là chọn ứng dụng nào sẽ khởi động trong quá trình khởi động.

  • Trong Ubuntu / Unity:

    Nhấp vào biểu tượng bánh răng ở góc trên bên phải của bảng trên cùng. Chọn Ứng dụng khởi động .

    Sau khi mở, bạn sẽ thấy một danh sách các ứng dụng mà hệ thống của bạn khởi động khi hệ điều hành của bạn khởi động.

    Nhấp vào Thêm ở trên cùng bên phải.

    Bạn sẽ được hiển thị một hộp thoại.

    Trong hộp thoại kết quả:

    1) Nhập tên của chương trình tại trường "tên" .

    2) Nhập lệnh để chạy chương trình tại trường lệnh Command .

    3) Nhập bất kỳ nhận xét nào bạn muốn tại trường "nhận xét" .

    Ví dụ:

    Nhấp vào lưuđóng .

  • Trong vỏ Gnome:

    Nhấn Alt+F2để hiển thị hộp thoại Run.

    Loại gnome-session-properties.

    Nhấp vào nút Thêm Add .

    Trong hộp thoại kết quả:

    1) Nhập tên của chương trình tại trường "tên" .

    2) Nhập lệnh để chạy chương trình tại trường lệnh Command .

    3) Nhập bất kỳ nhận xét nào bạn muốn tại trường "nhận xét" .

    Nhấp vào lưuđóng .

  • Trong KDE:

    Chuyển đến K-Menu> Máy tính> Cài đặt hệ thống.

    Chọn Khởi động và Tắt máy và bấm vào nút Thêm Chương trình .

    Gõ lệnh để chạy chương trình và nhấn OK .

  • Trong LXDE:

    Chạy các lệnh sau trong terminal:

    mkdir -p ~/.config/lxsession/LXDE/
    touch ~/.config/lxsessions/LXDE/autostart
    leafpad ~/.config/lxsessions/LXDE/autostart
    

    Thêm dòng này vào tệp tự khởi động:

    @program_command
    

    Nhấp vào lưuđóng .

  • IN LXDE / Lubfox:

    Một tệp tự khởi động đã tồn tại, trong ~./config/lxsession/Lubuntu/autostart.

    Chỉ cần sử dụng tệp này thay vì tạo một tệp mới, theo cách được mô tả ở trên.

  • Trong XFCE:

    Trong menu Ứng dụng, mở Trình quản lý cài đặt và chọn Phiên và Khởi động .

    Trên tab Tự khởi động ứng dụng, nhấp vào nút Thêm .

    1) Nhập tên của chương trình tại trường "tên" .

    2) Nhập lệnh để chạy chương trình tại trường lệnh Command .

    3) Nhập bất kỳ nhận xét nào bạn muốn tại trường "nhận xét" .

    Nhấp vào lưuđóng .

  • Vì bạn chỉ muốn khởi động trình duyệt web (tôi đoán là firefox), bạn có thể xóa danh sách các chương trình sau khỏi danh sách ứng dụng khởi động của mình:

    Trình quản lý -Bluetooth -Deja Dup -Gnome Do -Gnome Đăng nhập Âm thanh -Không gian làm việc -Ub Ubuntu One -Hỗ trợ hỗ trợ -Remote Desktop -Pulseaudio

    nhưng nó chắc chắn tùy thuộc vào bạn.


    12
    Tôi nghĩ rằng câu hỏi là về việc bắt đầu các ứng dụng khi khởi động mà không có môi trường máy tính để bàn . Câu trả lời của bạn là về các ứng dụng khởi động sau khi DE đã được khởi động.
    gertvdijk
    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.