Bagikan melalui


Set-Service

Memulai, menghentikan, dan menangguhkan layanan, dan mengubah propertinya.

Sintaks

Name (Default)

Set-Service
    [-Name] <String>
    [-DisplayName <String>]
    [-Credential <PSCredential>]
    [-Description <String>]
    [-StartupType <ServiceStartupType>]
    [-Status <String>]
    [-SecurityDescriptorSddl <String>]
    [-Force]
    [-PassThru]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

InputObject

Set-Service
    [-InputObject] <ServiceController>
    [-DisplayName <String>]
    [-Credential <PSCredential>]
    [-Description <String>]
    [-StartupType <ServiceStartupType>]
    [-SecurityDescriptorSddl <String>]
    [-Status <String>]
    [-Force]
    [-PassThru]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Deskripsi

Cmdlet ini hanya tersedia di platform Windows.

Cmdlet Set-Service mengubah properti layanan seperti Status, deskripsi , DisplayName, dan StartupType. Set-Service dapat memulai, menghentikan, menangguhkan, atau menjeda layanan. Untuk mengidentifikasi layanan, masukkan nama layanannya atau kirim objek layanan. Atau, kirim nama layanan atau objek layanan ke dalam alur menuju Set-Service.

Contoh

Contoh 1: Mengubah nama tampilan

Dalam contoh ini, nama tampilan layanan diubah. Untuk melihat nama tampilan asli, gunakan Get-Service.

Set-Service -Name LanmanWorkstation -DisplayName "LanMan Workstation"

Set-Service menggunakan parameter Nama untuk menentukan nama layanan, LanmanWorkstation. Parameter DisplayName menentukan nama tampilan baru, LanMan Workstation.

Contoh 2: Mengubah jenis layanan startup

Contoh ini menunjukkan cara mengubah jenis startup layanan.

Set-Service -Name BITS -StartupType Automatic
Get-Service BITS | Select-Object -Property Name, StartType, Status
Name  StartType   Status
----  ---------   ------
BITS  Automatic  Running

Set-Service menggunakan parameter Nama untuk menentukan nama layanan, BITS. Parameter StartupType mengatur layanan ke Otomatis .

Get-Service menggunakan parameter Nama untuk menentukan layanan BITS dan mengirim objek ke bawah alur. Select-Object menggunakan Properti parameter untuk menampilkan status layanan BITS.

Contoh 3: Mengubah deskripsi layanan

Contoh ini mengubah deskripsi layanan BITS dan menampilkan hasilnya.

Cmdlet Get-CimInstance digunakan karena mengembalikan objek Win32_Service yang menyertakan Deskripsi layanan.

Get-CimInstance Win32_Service -Filter 'Name = "BITS"'  | Format-List  Name, Description
Name        : BITS
Description : Transfers files in the background using idle network bandwidth. If the service is
              disabled, then any applications that depend on BITS, such as Windows Update or MSN
              Explorer, will be unable to automatically download programs and other information.
Set-Service -Name BITS -Description "Transfers files in the background using idle network bandwidth."
Get-CimInstance Win32_Service -Filter 'Name = "BITS"' | Format-List  Name, Description
Name        : BITS
Description : Transfers files in the background using idle network bandwidth.

Get-CimInstance mengirim objek ke bawah alur ke Format-List dan menampilkan nama dan deskripsi layanan. Untuk tujuan perbandingan, perintah dijalankan sebelum dan sesudah deskripsi diperbarui.

Set-Service menggunakan parameter Nama untuk menentukan layanan BITS. Parameter Deskripsi menentukan teks yang diperbarui untuk penjelasan layanan.

Contoh 4: Memulai layanan

Dalam contoh ini, layanan dimulai.

Set-Service -Name WinRM -Status Running -PassThru
Status   Name               DisplayName
------   ----               -----------
Running  WinRM              Windows Remote Management (WS-Manag...

Set-Service menggunakan parameter Nama untuk menentukan layanan, WinRM. Parameter Status menggunakan nilai Menjalankan untuk memulai layanan. Parameter PassThru menghasilkan objek ServiceController yang menampilkan hasilnya.

Contoh 5: Menangguhkan layanan

Contoh ini menggunakan alur untuk menjeda layanan.

Get-Service -Name Schedule | Set-Service -Status Paused

Get-Service menggunakan parameter Nama untuk menentukan layanan Jadwal, dan mengirim objek ke bawah alur. Set-Service menggunakan parameter Status untuk mengatur layanan ke Dijeda.

Contoh 6: Menghentikan layanan

Contoh ini menggunakan variabel untuk menghentikan layanan.

$S = Get-Service -Name Schedule
Set-Service -InputObject $S -Status Stopped

Get-Service menggunakan parameter Nama untuk menentukan layanan, Jadwal. Objek disimpan dalam variabel, $S. Set-Service menggunakan parameter InputObject dan menentukan objek yang disimpan $S. Parameter Status mengatur layanan menjadi Dihentikan.

Contoh 7: Menghentikan layanan pada sistem jarak jauh

Contoh ini menghentikan layanan pada komputer jarak jauh. Untuk informasi selengkapnya, lihat Invoke-Command.

$Cred = Get-Credential
$S = Get-Service -Name Schedule
Invoke-Command -ComputerName server01.contoso.com -Credential $Cred -ScriptBlock {
  Set-Service -InputObject $S -Status Stopped
}

Get-Credential meminta nama pengguna dan kata sandi, dan menyimpan kredensial dalam variabel $Cred. Get-Service menggunakan parameter Nama untuk menentukan layanan Jadwal . Objek disimpan dalam variabel, $S.

Invoke-Command menggunakan parameter ComputerName untuk menentukan komputer jarak jauh. Parameter Kredensial menggunakan variabel $Cred untuk masuk ke komputer. ScriptBlock memanggil Set-Service. Parameter InputObject menentukan objek layanan yang disimpan $S. Parameter Status mengatur layanan menjadi Dihentikan.

Contoh 8: Mengubah kredensial layanan

Contoh ini mengubah kredensial yang digunakan untuk mengelola layanan.

$credential = Get-Credential
Set-Service -Name Schedule -Credential $credential

Get-Credential meminta nama pengguna dan kata sandi, dan menyimpan kredensial dalam variabel $credential. Set-Service menggunakan parameter Nama untuk menentukan layanan Jadwal . Parameter Kredensial menggunakan variabel $credential dan memperbarui layanan Jadwal .

Contoh 9: Mengubah SecurityDescriptor layanan

Contoh ini mengubah SecurityDescriptor dari layanan .

$SDDL = "D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;SU)"
Set-Service -Name "BITS" -SecurityDescriptorSddl $SDDL

SecurityDescriptor disimpan dalam variabel $SDDL. Set-Service menggunakan parameter Nama untuk menentukan layanan BITS. Parameter SecurityDescriptorSddl menggunakan $SDDL untuk mengubah SecurityDescriptor untuk layanan BITS.

Contoh 10: Mengatur jenis startup untuk beberapa layanan

Cmdlet Set-Service hanya menerima satu nama layanan pada satu waktu. Namun, Anda dapat menyalurkan beberapa layanan ke Set-Service untuk mengubah konfigurasi beberapa layanan.

Get-Service SQLWriter,spooler |
    Set-Service -StartupType Automatic -PassThru |
    Select-Object Name, StartType
Name      StartType
----      ---------
spooler   Automatic
SQLWriter Automatic

Parameter

-Confirm

Meminta konfirmasi sebelum menjalankan Set-Service.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False
Alias:Cf

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Credential

Menentukan akun yang digunakan oleh layanan sebagai Akun Masuk Layanan.

Ketik nama pengguna, seperti User01 atau Domain01\User01, atau masukkan objek PSCredential , seperti yang dihasilkan oleh cmdlet . Jika Anda mengetik nama pengguna, cmdlet ini akan meminta kata sandi kepada Anda.

Kredensial disimpan dalam objek PSCredential dan kata sandi disimpan sebagai SecureString.

Nota

Untuk informasi selengkapnya tentang perlindungan data SecureString, lihat Seberapa aman SecureString?.

Parameter ini diperkenalkan di PowerShell 6.0.

Properti parameter

Jenis:PSCredential
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Description

Menentukan deskripsi baru untuk layanan.

Deskripsi layanan muncul di Manajemen Komputer, bagian Layanan. Deskripsi bukan properti objekServiceController Get-Service. Untuk melihat deskripsi layanan, gunakan Get-CimInstance yang mengembalikan objek Win32_Service yang mewakili layanan.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-DisplayName

Menentukan nama tampilan baru untuk layanan.

Nota

Biasanya, Set-Service hanya beroperasi pada layanan Windows dan bukan driver. Namun, jika Anda menentukan nama driver, Set-Service dapat menargetkan driver.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False
Alias:DN

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Force

Menentukan mode Hentikan layanan. Parameter ini hanya berfungsi saat -Status Stopped digunakan. Jika diaktifkan, Set-Service menghentikan layanan dependen sebelum layanan target dihentikan. Secara default, pengecualian dimunculkan saat layanan lain yang sedang berjalan bergantung pada layanan target.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-InputObject

Menentukan objek ServiceController yang mewakili layanan yang akan diubah. Masukkan variabel yang berisi objek, atau ketik perintah atau ekspresi yang mendapatkan objek, seperti perintah Get-Service. Anda dapat menggunakan alur untuk mengirim objek layanan ke Set-Service.

Properti parameter

Jenis:ServiceController
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

InputObject
Position:0
Wajib:True
Nilai dari alur:True
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Name

Menentukan nama layanan yang akan diubah. Karakter pengganti tidak diizinkan. Anda dapat menggunakan alur untuk mengirim nama layanan ke Set-Service.

Nota

Biasanya, Set-Service hanya beroperasi pada layanan Windows dan bukan driver. Namun, jika Anda menentukan nama driver, Set-Service dapat menargetkan driver.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False
Alias:Nama Layanan, SN

Set parameter

Name
Position:0
Wajib:True
Nilai dari alur:True
Nilai dari alur berdasarkan nama properti:True
Nilai dari argumen yang tersisa:False

-PassThru

Mengembalikan objek ServiceController yang mewakili layanan yang diubah. Secara default, Set-Service tidak menghasilkan output apa pun.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-SecurityDescriptorSddl

Menentukan SecurityDescriptor untuk layanan dalam format Sddl. Akun yang memanggil Set-Service dengan parameter ini harus memiliki izin WRITE_DAC dan WRITE_OWNER. Untuk informasi selengkapnya, lihat keamanan layanan dan hak akses.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False
Alias:Sd

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-StartupType

Menentukan mode mulai layanan.

Nilai yang dapat diterima untuk parameter ini adalah sebagai berikut:

  • Otomatis - Layanan dijalankan atau telah dimulai oleh sistem operasi, saat sistem dinyalakan. Jika layanan yang dimulai secara otomatis tergantung pada layanan yang dimulai secara manual, layanan yang dimulai secara manual juga dimulai secara otomatis saat startup sistem.
  • AutomaticDelayedStart - Dimulai tak lama setelah proses booting sistem.
  • Dinonaktifkan - Layanan dinonaktifkan dan tidak dapat dimulai oleh pengguna atau aplikasi.
  • NilaiTidakValid - Tidak berpengaruh. Cmdlet tidak mengembalikan kesalahan, tetapi jenis startup layanan tidak diubah.
  • Manual - Layanan hanya dimulai secara manual, oleh pengguna, menggunakan Service Control Manager, atau oleh aplikasi.

Properti parameter

Jenis:ServiceStartupType
Nilai default:None
Nilai yang diterima:Automatic, AutomaticDelayedStart, Disabled, InvalidValue, Manual
Mendukung wildcard:False
DontShow:False
Alias:StartMode, SM, ST, StartType

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Status

Menentukan status untuk layanan.

Nilai yang dapat diterima untuk parameter ini adalah sebagai berikut:

  • Ditunda. Menangguhkan layanan.
  • Menjalankan. Memulai layanan.
  • Dihentikan. Menghentikan layanan.

Properti parameter

Jenis:String
Nilai default:None
Nilai yang diterima:Paused, Running, Stopped
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-WhatIf

Menunjukkan apa yang akan terjadi jika Set-Service dijalankan. Cmdlet tidak dijalankan.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False
Alias:wi

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

CommonParameters

Cmdlet ini mendukung parameter umum: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, dan -WarningVariable. Untuk informasi selengkapnya, lihat about_CommonParameters.

Input

ServiceController

Anda dapat menyalurkan objek layanan ke cmdlet ini.

String

Anda dapat menyalurkan string yang berisi nama layanan ke cmdlet ini.

Output

None

Secara default, cmdlet ini tidak mengembalikan output.

ServiceController

Saat Anda menggunakan parameter PassThru, cmdlet ini mengembalikan objek ServiceController.

Catatan

Cmdlet ini hanya tersedia di platform Windows.

Set-Service memerlukan izin yang ditingkatkan. Gunakan opsi Jalankan sebagai administrator.

Set-Service hanya dapat mengontrol layanan ketika pengguna saat ini memiliki izin untuk mengelola layanan. Jika perintah tidak berfungsi dengan benar, Anda mungkin tidak memiliki izin yang diperlukan.

Untuk menemukan nama layanan atau nama tampilan layanan, gunakan Get-Service. Nama layanan berada di kolom Nama dan nama tampilan berada di kolom DisplayName.