Por que não posso desativar alguns dos serviços em system-config-services?

2

Estou desenvolvendo um quiosque como o PC para que ele não precise da maioria dos serviços.

Perguntas

  1. Por que não podemos desativar alguns serviços exibidos em system-config-service ?
  2. Existe alguma maneira de desativar todos (ou pelo menos a maioria) dos serviços que aparecem em system-config-services ?
por Sponge Comrade 06.01.2014 / 08:38

2 respostas

2

Você não diz quais serviços , o que é realmente essencial para essa conversa toda. Mas eu posso dizer isso. Nem todos os serviços podem ser desativados. Alguns serviços são exigidos por outros serviços e, portanto, você não pode simplesmente desligá-los sem ao menos desativar os outros serviços que os estão utilizando.

Nãoháumamaneirasimplesqueeujávi,ondevocêpodesimplesmentedesativarumgrupodeserviçossempassareidentificarprimeirooqueelessãoe,emsegundolugar,seelessãoexigidospeloseusistemaounão.

Descobriroquecadaserviçoé,apenasrequerquevocêpasseporcadaumdelesnopaineldenomedeserviço(àesquerda)eleiaadescriçãonopainel(àdireita).

Vocêtambémpodeobterumalistadequaisserviçosestãosendoexecutadosjuntocomoestadodelesnalinhadecomando:

$systemctllist-units-tservice--allUNITLOADACTIVESUBDESCRIPTIONabrt-ccpp.serviceloadedactiveexitedInstallABRTcoredumphookabrt-oops.serviceloadedactiverunningABRTkernellogwatcherabrt-vmcore.serviceloadedinactivedeadHarvestvmcoresforABRTabrt-xorg.serviceloadedactiverunningABRTXorglogwatcherabrtd.serviceloadedactiverunningABRTAutomatedBugReportingToolaccounts-daemon.serviceloadedactiverunningAccountsServicealsa-restore.serviceloadedinactivedeadRestoreSoundCardStatealsa-state.serviceloadedactiverunningManageSoundCardState(restoreandstore)alsa-store.serviceloadedinactivedeadStoreSoundCardStateatd.serviceloadedactiverunningJobspoolingtoolsauditd.serviceloadedactiverunningSecurityAuditingServiceavahi-daemon.serviceloadedactiverunningAvahimDNS/DNS-SDStackbluetooth.serviceloadedactiverunningBluetoothservicecolord.serviceloadedactiverunningManage,InstallandGenerateColorProfilescrond.serviceloadedactiverunningCommandScheduler...

VocêpodelermaissobrealinhadecomandodandoumaolhadanestedocumentodoFedoraintitulado: F.9.5. Obtendo mais do systemd .

    
por 06.01.2014 / 09:17
2

Em um sistema que está usando systemd para controle de serviço, você pode obter todo o status dos serviços com:% systemctl list-unit-files -t service -all .

$ systemctl list-unit-files -t service -all

UNIT FILE                              STATE
alsa-restore.service                   static
alsa-state.service                     static
alsa-utils.service                     masked
apply_noobs_os_config.service          disabled
apt-daily-upgrade.service              static
apt-daily.service                      static
auth-rpcgss-module.service             static
[email protected]                     disabled
[email protected]                        enabled
avahi-daemon.service                   enabled
bluealsa.service                       disabled
bluetooth.service                      disabled
bootlogd.service                       masked
bootlogs.service                       masked
bootmisc.service                       masked
...

Aqui você percebe que existem 4 tipos de serviços states .

  1. static - O serviço é iniciado e usado por outro serviço
  2. mascarado - O serviço é mascarado e, portanto, forçado a não iniciar
  3. ativado
  4. desativado

Por exemplo, os serviços alsa-restore e alsa-state são extraídos pelo basic.target por padrão. Isso pode ser verificado por:

$ systemctl show -p WantedBy alsa-restore alsa-state

WantedBy=basic.target

Mas simplesmente desabilitar o serviço não funciona, então você precisa mascará-lo.

$ sudo systemctl mask alsa-restore.service

Created symlink /etc/systemd/system/alsa-restore.service → /dev/null.

$ sudo systemctl daemon-reload

No entanto, como man systemctl afirma:

Mask one or more units, as specified on the command line. This will link these unit files to /dev/null, making it impossible to start them. This is a stronger version of disable, since it prohibits all kinds of activation of the unit, including enablement and manual activation. Use this option with care. This honors the --runtime option to only mask temporarily until the next reboot of the system. The --now option may be used to ensure that the units are also stopped. This command expects valid unit names only, it does not accept unit file paths.

Isso deve impedi-lo de voltar a carregar na inicialização.

    
por 25.04.2018 / 21:44