Mulai ubuntu tanpa lingkungan desktop tetapi mulai aplikasi X

29

Saya ingin melakukan komputer kecil hanya untuk browsing internet. Saya tidak ingin memuat lingkungan desktop untuk menjaga penggunaan RAM, CPU dan GPU serendah mungkin. Komputer akan berjalan pada CPU ARM. Saya tidak peduli dengan Distro yang saya gunakan, saya berpikir tentang Debian polos tua yang baik.

RaverTiny
sumber
Maka saya ingin menyarankan ubuntu minimal iso dan menginstal blackbox DE
Tachyons
Saya bukan benar-benar ahli, tapi saya sarankan untuk melihat konfigurasi xsession (ada halaman manual untuk xsession). Jika Anda hanya menginginkan perilaku ini untuk satu pengguna, buat file di direktori home pengguna bernama .xsession dan masukkan perintah yang ingin Anda jalankan di dalamnya. Maka Anda mungkin harus menggunakan manajer login yang memungkinkan Anda untuk login ke default xsession alih-alih beberapa lingkungan desktop lainnya (atau nonaktifkan manajer login dan gunakan startx sebagai gantinya). Namun demikian, saya akan merekomendasikan untuk menggunakan window manager hemat sumber daya (Tachyons menyarankan blackbox, dan ada banyak lainnya).
soulsource
Jika Anda tidak memuat lingkungan desktop, bagaimana seharusnya Anda membuka browser internet?
dlin
5
@Nick Anda bisa. Dengan server X polos sebagai 'sesi' tanpa window manager, Anda dapat menjalankan satu layar penuh aplikasi dengan tepat (tanpa batas atau hiasan lainnya). Ini adalah cara distribusi XBMC minimal ini bekerja misalnya. Saya melakukan ini dengan Chromium sekali beberapa tahun yang lalu di 10,04 - tetapi saya tidak menyimpan konfigurasi yang tepat.
gertvdijk
"Aku memikirkan tentang Debian tua yang baik hati." Jika Anda mempertimbangkan distribusi lain selain Ubuntu, maka Anda harus menanyakan ini di Unix & Linux StackExchange . Situs Tanya Ubuntu ini hanya untuk Ubuntu - tidak terkait dengan pertanyaan Ubuntu dianggap di luar topik di sini.
gertvdijk

Jawaban:

26
  1. Dalam /usr/share/xsessions/membuat file dalam format ".desktop" untuk membuat sesi khusus Anda yang minimal. Untuk menjalankan Google Chrome sebagai satu-satunya aplikasi setelah masuk, lakukan ini:

    [Desktop Entry]
    Type=Application
    Exec=google-chrome
    Name=Google Chrome
    Comment=Testing
    
  2. Mulai ulang manajer tampilan Anda, mis

    sudo restart lightdm  # or kdm, gdm, etc.
    

    Atau cukup logout.

  3. "Google Chrome" akan muncul di daftar sesi untuk dipilih (di sebelah Persatuan reguler atau DE yang telah Anda instal).

    Masuk dan nikmati.

pilihan

  • XDM adalah manajer tampilan yang sangat minim - LightDM, GDM dan KDM cukup "besar". Instal yang menggunakan paket xdmInstal xdm dan konfigurasi ulang default ketika sistem Anda menggunakan

    sudo dpkg-reconfigure lightdm
    
  • Konfigurasikan manajer tampilan Anda untuk secara otomatis masuk ke pengguna tertentu. Lihat dokumentasi untuk manajer tampilan Anda.

gertvdijk
sumber
1
Jika seseorang perlu membawa seluruh Desktop, apakah orang hanya menghapus file .desktop dan restart?
Antusiasme
1
@enthusiasticgeek Tidak perlu. Di manajer login cukup pilih desktop penuh untuk login, seperti yang dijelaskan pada langkah 3.
gertvdijk
Adakah yang tahu hot untuk mengganti bahasa input sistem dalam mode aplikasi tunggal?
fnc12
Adakah yang menghadapi masalah ketika penunjuk tetikus hilang dalam mode aplikasi tunggal?
fnc12
Saya sudah mulai google-chrome --kiosk, tetapi tidak menempati layar lengkap .. cara apa saja untuk membuatnya dimaksimalkan ..?
tumbudu
24

Saya tahu ini sudah usang, tetapi saya tidak bisa melihat jawaban yang benar untuk permintaan seperti yang saya mengerti, jadi begini:

Saya sudah punya proyek untuk membuat sistem tertanam menjalankan aplikasi java grafis tertentu pada komputer sederhana dengan prosesor Atom dan layar sentuh. Keputusan saya adalah untuk menghindari penggunaan window manager seperti itu, untuk membuatnya a) sederhana, b) ringan, dan c) menghindari semua jenis pesan sistem meledak ke layar.

Sistemnya terlihat seperti ini:

  1. Menginstal sistem dasar Ubuntu, varian paling ringan 12,04 (masih dekat dengan 1GB, tapi ok untuk saya bahkan pada flash disk 2GB). Anda dapat menyiksanya sedikit untuk membuat instalasi yang lebih kecil, tentu saja, ada beberapa cara untuk itu. Juga, Anda tidak harus menggunakan Ubuntu, tetapi kemudian instruksi saya di bawah ini harus ditinjau - ada perbedaan antara distribusi, terutama pada file konfigurasi dan lokasinya.

  2. Menginstal xorg dan beberapa perangkat lunak bermanfaat lainnya, seperti xinput-calibrator untuk layar sentuh resistif saya, ifplugd untuk deteksi koneksi ethernet langsung, acpid untuk deteksi operasi tombol daya dan sebagainya.

  3. Buka /etc/init/tty1.conf dan ubah exec /sbin/getty -8 -i 38400 tty1baris menjadi sesuatu seperti exec /sbin/getty -8 -i 38400 tty1 -a username, di mana "nama pengguna" adalah nama pengguna yang ingin Anda masuk otomatis.

  4. Untuk memulai sesi X secara otomatis, buka file .bashrc pengguna Anda ~/.bashrcdan tambahkan sesuatu seperti ini di akhir file:

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

    (Item -nocursor adalah untuk layar sentuh, hapus untuk layar normal untuk melihat pointer mouse) Ini akan respawn server X, jadi jika aplikasi Anda berhenti karena alasan apa pun, itu akan memulai ulang server X secara otomatis.

  5. Sekarang di file .xsession pengguna Anda ~/.xsession,, tulis sesuatu seperti ini (ingat bahwa setiap perintah di sini dijalankan secara seri, jadi gunakan simbol & di akhir baris jika Anda ingin meluncurkan server):

    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

Ada banyak hal lain yang perlu dipertimbangkan untuk sistem seperti ini, ini hanya pengaturan dasar. Semoga ini bisa membantu seseorang. Semoga berhasil.

toleran terhadap kesalahan
sumber
1

Di masa lalu, Anda hanya bisa berlari X, dan X akan menyala dengan layar kosong. Kemudian Anda dapat mengatur DISPLAY=:0dan menjalankan sesuatu di sana. Mungkin ini masih berfungsi? Dari shell Anda ingin X&latar belakangnya.

Lihat ke dalam -geometryparameter baris perintah X standar untuk menyesuaikan penempatan jendela, karena Anda tidak akan memiliki manajer jendela untuk membantu Anda dengan itu.

Untuk menjalankan sesuatu sebagai non-root, Anda harus melihat xauthuntuk mengatur otorisasi X untuk pengguna non-root.

Robie Basak
sumber
-3

Pertama-tama, saya tidak mengerti bagaimana Anda seharusnya membuka browser web tanpa memuat Lingkungan Desktop. Ini seperti ingin memasak tanpa menyalakan oven. . Oke itu mungkin dengan X Server, ada pertanyaan yang salah.

Apa yang Anda cari adalah memilih aplikasi mana yang akan mulai selama proses boot.

  • Di Ubuntu / Unity:

    Klik ikon roda gigi di sudut kanan atas panel atas. Pilih Aplikasi Startup .

    Setelah dibuka, Anda akan diperlihatkan daftar aplikasi yang sistem Anda mulai ketika sistem operasi Anda.

    Klik Tambah di kanan atas.

    Anda akan ditampilkan dialog.

    Di kotak dialog yang dihasilkan:

    1) Masukkan nama program di bidang "nama" .

    2) Masukkan perintah untuk menjalankan program di bidang "perintah" .

    3) Masukkan komentar yang Anda inginkan di bidang "komentar" .

    Sebagai contoh:

    Klik simpan dan tutup .

  • Dalam Gnome shell:

    Tekan Alt+F2untuk membuka dialog Run.

    Jenis gnome-session-properties.

    Klik tombol "Tambah" .

    Di kotak dialog yang dihasilkan:

    1) Masukkan nama program di bidang "nama" .

    2) Masukkan perintah untuk menjalankan program di bidang "perintah" .

    3) Masukkan komentar yang Anda inginkan di bidang "komentar" .

    Klik simpan dan tutup .

  • Di KDE:

    Buka K-Menu> Komputer> Pengaturan Sistem.

    Pilih Startup dan Shutdown dan klik tombol Add Program .

    Ketikkan perintah untuk menjalankan program dan klik OK .

  • Di LXDE:

    Jalankan perintah berikut di terminal:

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

    Tambahkan baris ini ke file autostart:

    @program_command
    

    Klik simpan dan tutup .

  • DI LXDE / Lubuntu:

    File autostart sudah ada, di ~./config/lxsession/Lubuntu/autostart.

    Cukup gunakan file ini daripada membuat yang baru, dengan cara yang dijelaskan di atas.

  • Di XFCE:

    Di menu Aplikasi, buka Settings Manager dan pilih Session dan Startup .

    Pada tab Autostart Aplikasi klik tombol Tambah .

    1) Masukkan nama program di bidang "nama" .

    2) Masukkan perintah untuk menjalankan program di bidang "perintah" .

    3) Masukkan komentar yang Anda inginkan di bidang "komentar" .

    Klik simpan dan tutup .

  • Karena Anda hanya ingin memulai browser web (saya kira firefox), Anda dapat menghapus daftar program berikut dari daftar aplikasi startup Anda:

    -Bluetooth Manager -Deja Dup -Gnome Do -Gnome Masuk Suara -Indikator Ruang Kerja -Ubuntu Satu -Bantuan Visual -Remote Desktop -Pulseaudio

    tetapi pasti terserah Anda.

    dlin
    sumber
    12
    Saya pikir pertanyaannya adalah tentang memulai aplikasi saat boot tanpa lingkungan desktop . Jawaban Anda adalah tentang aplikasi startup setelah DE dimulai.
    gertvdijk