Systemd'deki çalışma seviyesini nasıl değiştiririm?


27

Oldukça basit, çalışma seviyesini değiştirmeye çalışıyorum. Çevrimiçi bulduğum her şey beni aşağıdaki dosyada gösteriyor:

/etc/init/rc-sysinit.conf

Burada "DEFAULT_RUNLEVEL" ifadesini 3 veya başka bir şeyle değiştirmeyi denedim ve bir fark yaratmadı (orijinal değer 2 de anlamlı değildi). Ne olursa olsun, makinem tamamen açılıyor ve runlevel komutunu kontrol ettiğimde, sonuç olarak "N 5" i görüyorum.

Çalışma seviyesini nasıl değiştiririm? Grub veya başka bir geçici çözüm mekanizması ile geçersiz kılmamayı tercih ederim. Ve özellikle X'in nasıl etkisizleştirileceğini aramıyorum.

Çevrimiçi bulduğum tüm talimatlar biraz eskiydi, 16.04 ile bir şeyler değişti mi?


Öyleyse, açılıştan sonra manuel olarak değiştirmek mi yoksa her seferinde farklı bir çalışma seviyesine otomatik olarak başlatmak mı istiyorsunuz?
Byte Commander

her zaman otomatik. Ubuntu masaüstüyle kuruldu, ama şimdi çalışma seviyesini düşürmek ve bir köşeye koymak istiyorum.
16'da

Aslında, neden çalışma seviyesini değiştirmek istiyorsun? Masaüstünü yüklemek yerine sadece bir terminal arayüzüne ön yükleme yapmak mı istiyorsunuz? Bu durumda açılışta standart hedef systemd yüklerini değiştirmeli ve "text" kernel seçeneğini eklemelisiniz.
Byte Commander

4
Muhtemelen 15.10'dan beri Ubuntu'nun systemdyerine kullandığı upstartve bahsettiğiniz dosya içindir upstart. Daha eski yazıları bile okursanız, eskilerin initde yollarını bulacaksınız . Ama birlikte systemd, sadece GUI kullanarak metin modu arasında geçiş yapabilirsiniz sudo systemctl start graphical.targetve sudo systemctl start multi-user.target.
Byte Commander

5
Bütün yorumcular için Bu geçerli bir soru! Orada IS kullanarak (bu "runlevels" ya da "hedefler" denir olsun veya olmasın) Çalışma seviyesini değiştirmek için bir yolsystemctl isolate
Ron

Yanıtlar:


50

Ubuntu 16.04, init yerine systemd kullanır ve bu nedenle kavramının runlevelsyerine geçen terim kullanılır targets. Bu nedenle, init tabanlı çalışma seviyeleri ve sistemd tabanlı hedefler arasında bir eşleme var:

   Mapping between runlevels and systemd targets
   ┌─────────┬───────────────────┐
   │Runlevel │ Target            │
   ├─────────┼───────────────────┤
   │0        │ poweroff.target   │
   ├─────────┼───────────────────┤
   │1        │ rescue.target     │
   ├─────────┼───────────────────┤
   │2, 3, 4  │ multi-user.target │
   ├─────────┼───────────────────┤
   │5        │ graphical.target  │
   ├─────────┼───────────────────┤
   │6        │ reboot.target     │
   └─────────┴───────────────────┘

Şimdi, 16.04'teki "çalışma seviyelerini" değiştirmek için, örneğin:

sudo systemctl isolate multi-user.target

Bunu varsayılan "çalışma seviyesi" yapmak için kullanabilirsiniz:

sudo systemctl enable multi-user.target
sudo systemctl set-default multi-user.target

itibaren man systemctl

   isolate NAME
       Start the unit specified on the command line and its dependencies and stop all others. If
       a unit name with no extension is given, an extension of ".target" will be assumed.

       This is similar to changing the runlevel in a traditional init system. The isolate command
       will immediately stop processes that are not enabled in the new unit, possibly including
       the graphical environment or terminal you are currently using

Ayrıca man systemd.specialsistemdeki hedefler hakkında daha fazla bilgi edinmek için bir göz atın .


HI @Ron cevabınız harika Nvidia resmi sürücüsünü yüklemek için yaptım ama şimdi ekranımda mavi ekran dışında hiçbir şey görünmüyor. Bunu nasıl düzeltebilirim? Yardımlarınız için şimdiden teşekkür ederiz.
Raphael Teubner

Grub'tan kurtarma moduna geçin, ardından kök önceki çalışma seviyesine döner.
LottaLava

Evet. Gui önyüklemesinden metin moduna geçmenin bu son derece güzel komutlarını verenlerin bize metin önyüklemesinden gui önyüklemesine nasıl geri döneceğimizi anlatmayı umursamadıkları hakkında sadece yorum yapacaktım.
Nyxee

Bu yüzden, sadece not etmek sudo systemctl set-default multi-user.targetgerekirse, GUI modunda çalıştırdım , yeniden başlatırken, GUI'nin önyükleme konusunda başarısız olduğuna dair iyi bir işaret olan boş bir Ctrl-Alt-F3ekranım oldu, bu yüzden Runlevel 3'e girmek için bastım. CUDA), çalıştırın sudo systemctl set-default graphical.targetve GUI giriş ekranına geri döndü. Ancak şimdi giriş yapamıyorum. Önceki çalışma seviyesine geri dönmenin doğru yolu bu mu?
Nyxee

2
@nyxee - Evet, sudo systemctl set-default graphical.targetGUI masaüstü ortamına geri dönmek için doğru yoldur. Giriş başarısızlığınız çalışma seviyeleri arasında geçiş yapmayla ilişkili değil - nVidia önyükleme döngüsü sorunu gibi görünüyor . , Kesin bilgi edinmek için, 3 yazarak çalışma seviyesi nVidia ve Cuda sürücülerini kaldırın, 5 (graphical.target) çalışma seviyesi için repo, ayarlanan varsayılan bir nVidia sürücüsünü yükleyin ve ardından yeniden başlatma ve giriş görmek için geri açılır.
Andy Turfer
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.