基本的に、実行を阻止したいシステムプロセスがいくつかあります。私がそれらを強制的に終了した場合、それらは単に再起動します。それらが起動/再起動しないようにするにはどうすればよいですか。
私がシステムプロセスを台無しにすべきではないと言う前に、私は起こりうる結果を完全に理解しています。
これは、プロセスがどのように開始および再開されるかによって異なります。ほとんどのシステムプロセスはlaunchdによって処理されます。これが削除したいプロセスの場合である場合、それを制御しているlaunchdアイテムを見つける必要があります(/ System/Library/LaunchDaemonsまたは/ Library/LaunchDaemonsの.plistファイルの1つになります)。 Sudo launchctl unload /path/to/launchd/item.plist
で無効にします。これを永続的にしたい場合(つまり、再起動しても無効のままにする場合)、-wフラグを追加します:Sudo launchctl unload -w /path/to/launchd/item.plist
。 krb5kdcプロセスを見つけてシャットダウンする例を次に示します。
# First, find the pid of the running process:
$ ps -axwww | grep [k]rb5kdc
3143 ?? 0:33.38 /usr/sbin/krb5kdc -n
# Now find label of the the launchd item controlling it
$ Sudo launchctl list | grep 3143
3143 - edu.mit.Kerberos.krb5kdc
# Now find the .plist file that defines that item label:
$ grep -l edu.mit.Kerberos.krb5kdc /Library/LaunchDaemons/* /System/Library/LaunchDaemons/*
/System/Library/LaunchDaemons/edu.mit.Kerberos.krb5kdc.plist
# Finally, disable the launchd item (permanently):
$ Sudo launchctl unload -w /System/Library/LaunchDaemons/edu.mit.Kerberos.krb5kdc.plist