≡ Menu

View DELL Service Tag and Express Service Code From Linux and Windows

[Dell Server]When you call DELL customer support for any help, they will ask for either Service Tag or Express Service Code. You also need service tag to download drivers and documentations from DELL support website.

When you have physical access to the system, you can easily identify the service tag affixed on the body of the server. DELL support site shows the exactly location of the service tag and express code stickers for various DELL equipments.

When you don’t have physical access to the server, you can get the same information remotely from the OS level. Using Windows or Linux command line you can easily get DELL service tag as explained below.

1. Get DELL Service Tag on remote Windows system

Login to the Windows remote-host using VNC or remote desktop connection. Use WMIC on Windows to get service tag as shown below.

C:\>wmic bios get serialnumber
SerialNumber
ABCDEF1

Following WMIC command will give make and model number along with service tag.

C:\>wmic csproduct get vendor,name,identifyingnumber
IdentifyingNumber    Name                Vendor
ABCDEF1              PowerEdge 2950      Dell Inc.

If VNC or remote desktop connection to the remote-host is not available,  execute the following from the local-host to get the service tag of the remote-host.

C:\>wmic /user:administrator /node:remote-host bios get serialnumber
SerialNumber
ABCDEF1
[Note: Replace remote-host with the machine name of your remote-host.]

2. Get DELL Service Tag on remote Linux system

Login to the Linux remote-host using SSH. Use dmidecode on Linux to get service tag as shown below.

[remote-host]# dmidecode -s system-serial-number
ABCDEF1

3. Get DELL Express Service Code From Service Tag

Service Tag is a base-36 integer.  Once you have the Service Tag, you can calculate express service code yourself. Express Service Code is base-10 decimal integer of Service Tag. Dell uses express service code mainly for their support call-routing. When you call dell support, their automated call-routing system may ask you to enter express service code, which you can easily enter in your telephone, as it is just a bunch of numbers, instead of characters.

Use the following online tools to find express service code from service tag and vice-versa.


If you own systems other than DELL, such as HP, IBM, Sony, Toshiba, Acer etc., how do you find out serial number? Does the same method explained above works for you (or) Do you use a different method to identify serial numbers? Please leave your comment.

If you enjoyed this article, you might also like..

  1. 50 Linux Sysadmin Tutorials
  2. 50 Most Frequently Used Linux Commands (With Examples)
  3. Top 25 Best Linux Performance Monitoring and Debugging Tools
  4. Mommy, I found it! – 15 Practical Linux Find Command Examples
  5. Linux 101 Hacks 2nd Edition eBook Linux 101 Hacks Book

Bash 101 Hacks Book Sed and Awk 101 Hacks Book Nagios Core 3 Book Vim 101 Hacks Book

{ 30 comments… add one }

  • Ruben October 24, 2008, 8:52 am

    Cool¡¡¡
    I had a lot of problems to look for Dell’s Service Tag

  • Gagan Brahmi October 25, 2008, 3:54 am

    You can also give the type number for the information you wish to fetch.

    So for getting the serial number of a machine you can use

    # dmidecode –type 1

    this will provide you all the information related to the machine.

  • Dan January 2, 2009, 8:37 am

    I”m not getting wmic to run remotely via psexec. Is there some way to run it without logging on via RDP?

  • Marcus April 28, 2009, 10:42 am

    Thanks a ton…just this handy tip, and it worked great.

  • Vidooshak July 22, 2009, 6:20 am

    Thanks. A very useful tip! Works great on Citrix VM as well.

  • Ramesh Natarajan July 25, 2009, 12:31 am

    @Ruben, @Marcus, @Vidooshak,

    Thanks for your comments. I’m glad you were able to use this article and identify the DELL service tag and express code on your servers.

    @Gagan,

    Thanks for pointing out about the dmidecode command. For those who are interested, we wrote an article about dmidecode command that can be used to get the DELL service tag on Unix environment.

    @Dan,

    What is the error message you are getting while trying to execute wmic command?

  • Gareth November 5, 2009, 4:17 pm

    Hello people, i see here that some of you are very knowledgable regards PC’s and scripting. I have a big predicament and would appreciate any assistance; i can not find my service tag for my Dell Precision M90. It is a 2nd hand refurbished laptop, which for some reason does not have a tag number in the BIOS (F2 setup) and because it is 2nd hand Dell have no direct record of this computer and are unable to help me at all! The Company whom i bought the laptop from are being very unhelpful to! Please help me to find the TAG for my computer so that i can finally address some of the issues i have been having, which ironically it seems i can only fix through the Dell website!

    Your most gratefully Gareth

  • Evan December 4, 2009, 3:08 pm

    This works well for PE 2600s and up. I have a PE 2500 that has no serial information, and I also came across two 2600s that have the same serial information.
    This will work for IBM Blade servers as well, though the tag information is in a different place.
    ~~~~~~~~~
    I created a “lazy” batch file for me. Obviously you can expand on it, but this was all i needed. I used “ABCD123″ as the serial place holder.
    ~~start script~~
    @echo off
    set mchname=
    set ipaddy=
    set mchname=%1
    echo.
    echo Host Name: %mchname%
    for /f “tokens=3* delims= ” %%a in (‘ping -n 1 %mchname% ^| find /i “reply from”‘) do set ipaddy=%%a
    set ipaddy=%ipaddy::=%
    echo.
    echo IP Address: %ipaddy%
    echo.
    wmic /node:%1 bios get serialnumber

    wmic /node:%1 csproduct get vendor,name,identifyingnumber

    set mchname=
    set ipaddy=

    ~~end script~~
    ~~~~~~~~~
    Host Name: pcname1

    IP Address: 1.2.4.3

    SerialNumber
    ABCD123

    IdentifyingNumber Name Vendor
    ABCD123 PowerEdge 2600 Dell Computer Corporation

    ~~~~~~~~

    Host Name: pcname2

    IP Address: 1.2.3.4

    SerialNumber
    0000000

    IdentifyingNumber Name Vendor
    0000000 IBM eServer BladeCenter HS20 -[ABCD123]- IBM
    ~~~~~~~~

  • AHMAD February 18, 2010, 12:59 pm

    forget my hdd password on DELL 1537
    hdd passwore error code is (05758)
    system service tag code is (9HGR64J)

  • Ry May 21, 2010, 9:20 am

    Useful, thanks :)

  • DP August 16, 2010, 11:34 am

    What about obtaining Dell Printer Service Tags??

  • Pete September 3, 2010, 3:33 am

    Fantastic informatio. Nicely presented and very easy to follow. Thank you.

  • Duane Hamilton September 10, 2010, 4:56 pm

    These are the coolest set of commands, ever!!

    Thank you

  • Sarah October 4, 2010, 2:52 pm

    What if I’m not using Linux? Is there a command prompt in Windows XP I can use to accomplish the same thing?

  • imran November 3, 2010, 4:05 am

    i lost my laptop. i guess somebody has stolen it. i have the box with all the bar codes. help me how can i find my service tag number

  • Jay December 2, 2010, 4:47 pm

    Thanks for this, it really helped getting info on my remote servers

  • imran December 3, 2010, 5:54 am

    lost my Dell laptop. only box has left with me. there r some barcodes like
    00884116004615

    884116004615

    0K674HA01

    plz help me to find service tag number

  • Bin December 15, 2010, 2:45 am

    It works on HP blade servers. Thanks!

  • Alex December 30, 2010, 1:06 pm

    I have tried several variations of the commands above. I am either getting “Access Denied” or “Invalid Parameter”. Here is the way that I tried, that I belive is correct but still not working.
    Start -> Run -> CMD
    c:\wmic
    wmic:root\cli>/node:%1 (where %1 = remote computer name)
    wmic:root\cli>/user:administrator (prompts for password)
    wmic:root\cli>/authority:administrator
    wmic:root\cli>bios get serialnumber
    Node – %1
    ERROR:
    Description = Invalid parameter

    If I do the above without the /authority:administrator line I get
    Node – %1
    ERROR:
    Description = Access is denied.

  • Glen March 17, 2011, 1:14 pm

    What command would get you the make, model, service tag of a remote host?

  • Alan Smith June 5, 2011, 5:01 am

    Can someone please give a phone no. for Dell Support so I can enter my service tag & download sound driver?

  • Jimmy June 9, 2011, 12:47 pm

    Thanks a lot! I didn’t have access to the pc because they were in a meeting. I couldn’t contact them because they were in a meeting. We didn’t have the pc in our online inventory under service tag because we created the new system before they got their laptop. I knew they were logged on the network so I was able to use:
    wmic /user:administrator /node:LOCALPCNAME bios get serialnumber
    Worked like a charm. Asked me to log in with local password and I was able to find out the Serial so I could call for support.
    Next, I used this to get the express code:

  • Xwpis ONOMA August 2, 2011, 4:13 pm

    Hi all!

    I regret to report that it did not work for me. I am in a Win2003 server Domain enviroment and this is what I get at the cmd prompt:

    Enter the password :******

    Node – marketing
    ERROR:
    Code = 0x800706ba
    Description = The RPC server is unavailable.
    Facility = Win32

    Interestingly enough I get that no matter what the combination of local or domain administrator password as well as the node name.

    Why would the RPC server be unavailable, this PC (e.g. marketing is ON an running with no errors whatsoever.

    Of course running the same command locally there is no problem at all.

    Obviously it does n’t like it when it runs over the network, but why?

    What gives, can you please help.

    Thank you!

  • T R Rachana D/o T M Ramana. Rao November 25, 2011, 3:39 am

    I have a dell notebook whose display screen needs a replacement owing to damage. How can i get the stystem service tag pl.

  • Pashton.afg September 28, 2012, 9:00 am

    wmic /user:administrator /node:machinename bios get serialnumber
    but im getting the error ”invalid global switch”

    I am not an expert on this. Let me know what am i doing wrong…

  • parry January 31, 2013, 5:04 am

    can we get the DRAC IP of the server in the similar way, the way you helped in getting the Serial number of the DELL box.

    wmic bios get serialnumber

  • parry January 31, 2013, 5:05 am

    Ramesh : Thanks for the post..the article is really very helpful

    Thanks

  • Chris May 20, 2013, 9:20 am

    @Pashton.afg

    I had the same issue and I just figured out what was happening. The name cannot contain a (/ or -) so I changed it to the IP and it works. Kind of sucks having to use the IP but it does work.

  • George July 24, 2014, 11:38 am

    And just so this is out here on the web so Google can find it, here is how to get the Asset Tag and NOT the Service Tag. Everytime I searched for Asset Tag I got very few hits. They were all about the Service Tag. Anyway ….

    wmic systemenclosure get SMBIOSAssetTag

    We use our own barcodes on the systems and that number becomes the AssetTag.

  • Rodney Yeo April 29, 2015, 1:51 am

    Have any one encounter WMI engine failure in your Windows system resulting in Service Tag not able to be retrieve?

    Here is my fixed solution WMI-Fix.bat script…

    Kindly comments on any code improvements… I used it to together with OCS Inventory NG.

    — BOF wmifix.bat —

    @echo off
    cls
    
    
    :: Check for WMI results equal nul value then launch fix
    REM
    :: Get DNSHOSTNAME
    FOR /F "TOKENS=2 DELIMS='='" %%A IN ('wmic OS Get csname /value') DO SET "SysHosts=%%A"
    :: Get SYSTEMNAME
    FOR /F "TOKENS=2 DELIMS='='" %%A IN ('wmic ComputerSystem Get Model /value') DO SET "SysNames=%%A"
    :: Get SERIALNUMBER
    FOR /F "TOKENS=2 DELIMS='='" %%A IN ('wmic Bios Get SerialNumber /value') DO SET "SerNumbers=%%A"
    :: Get USERNAME
    FOR /F "TOKENS=2 DELIMS='='" %%A IN ('wmic ComputerSystem Get UserName /value') DO SET "UserNames=%%A"
    :: Get USERNAMECS
    FOR /F "TOKENS=2 DELIMS='='" %%A IN ('wmic csproduct get IdentifyingNumber /value') DO SET "UserNamesCS=%%A"
    :: Get MANUFACTURERCS
    FOR /F "TOKENS=2 DELIMS='='" %%A IN ('wmic Bios Get Manufacturer /value') DO SET "ManufacturerCS=%%A"
    :: Get VENDORCS
    FOR /F "TOKENS=2 DELIMS='='" %%A IN ('wmic csproduct get Vendor /value') DO SET "VendorCS=%%A"
    :: Get NAMECS
    FOR /F "TOKENS=2 DELIMS='='" %%A IN ('wmic csproduct get Name /value') DO SET "NamesCS=%%A"
    ::
    ::
    IF /I NOT "%SysHosts%" == "" GOTO END
    IF /I NOT "%SysHosts%" == " " GOTO END
    ::
    IF /I NOT "%SysNames%" == "" GOTO END
    IF /I NOT "%SysNames%" == " " GOTO END
    ::
    IF /I NOT "%SerNumbers%" == "" GOTO END
    IF /I NOT "%SerNumbers%" == " " GOTO END
    ::
    IF /I NOT "%UserNames%" == "" GOTO END
    IF /I NOT "%UserNames%" == " " GOTO END
    ::
    IF /I NOT "%UserNamesCS%" == "" GOTO END
    IF /I NOT "%UserNamesCS%" == " " GOTO END
    ::
    IF /I NOT "%ManufacturerCS%" == "" GOTO END
    IF /I NOT "%ManufacturerCS%" == " " GOTO END
    ::
    IF /I NOT "%VendorCS%" == "" GOTO END
    IF /I NOT "%VendorCS%" == " " GOTO END
    ::
    IF /I NOT "%NamesCS%" == "" GOTO END
    IF /I NOT "%NamesCS%" == " " GOTO END
    ::
    REM
    
    
    REM Check Windows Version
    ::
    ver | findstr /i "5\.1\." > nul
    IF %ERRORLEVEL% EQU 0 goto ver_XP
    ::
    ver | findstr /i "5\.2\." > nul
    IF %ERRORLEVEL% EQU 0 goto ver_2K3
    ::
    goto ver_ALL_Win
    
    
    :ver_ALL_Win
    :: Run Windows 7 specific commands here
    :: Reset Repository WMI repository folder
    winmgmt /standalonehost
    winmgmt /resetrepository
    winmgmt /verifyrepository
    REM echo OS Version: Windows 7 (debug line)
    goto Start
    
    
    :ver_2K3
    :: Run Windows 2003 specific commands here
    :: Reset Repository WMI repository folder
    rundll32 wbemupgd, RepairWMISetup
    REM echo OS Version: Windows 2003 (debug line)
    goto Start
    
    
    :ver_XP
    :: Run Windows XP specific commands here
    :: Reset Repository WMI repository folder
    rundll32 wbemupgd, UpgradeRepository
    REM echo OS Version: Windows XP (debug line)
    goto Start
    
    
    :Start
    call :StopService WSRM
    call :StopService tmlisten
    call :StopService iphlpsvc
    call :StopService winmgmt
    call :RenameWMI
    call :StartService winmgmt
    call :StartService iphlpsvc
    call :StartService tmlisten
    call :StartService WSRM
    call :ImportMOF
    goto :End
    
    
    :RenameWMI
    ::
    winmgmt /salvagerepository
    ::
    Echo.
    Echo Renaming the WMI repository folder
    for /f "tokens=1-8 delims=:/. " %%a in ('echo %date% %time%') do set FileExtension=%%d%%b%%c%%e%%f%%g
    ren "%windir%\system32\wbem\Repository" Repository.%FileExtension%.old
    ren "%windir%\SysWOW64\wbem\Repository" Repository.%FileExtension%.old
       
    Echo.
    Echo Registering WMI DLLs
    cd /d %windir%\system32\wbem
    for /f %%s in ('dir /b /s *.dll') do echo %%s&regsvr32 /s %%s
    
    if /i not exist %windir%\SysWOW64\wbem goto :EOF
    cd /d %windir%\SysWOW64\wbem
    for /f %%s in ('dir /b /s *.dll') do echo %%s&regsvr32 /s %%s
    
    goto :EOF
    
    
    :ImportMOF
    Echo.
    Echo Importing WMI MOF and MFL files
    Echo (It's normal for this to take a few minutes)
    Echo. 
    cd /d %windir%\system32\wbem
    for /f "delims=" %%s in ('dir /s /b *.mof *.mfl') do echo %%s&mofcomp -autorecover "%%s" 
    
    if /i not exist %windir%\SysWOW64\wbem goto :ImportMOFNext 
    cd /d %windir%\SysWOW64\wbem
    for /f "delims=" %%s in ('dir /s /b *.mof *.mfl') do echo %%s&mofcomp -autorecover "%%s" 
    
    
    :ImportMOFNext
    Echo.
    Echo MOF and MFL file import complete
    Echo Verify administrative consoles for installed applications and services
    Echo. 
    goto :EOF
    
    
    :StopService
    Echo.
    Echo Disabling and stopping the %1 service
    sc config %1 start= disabled
    if /i {%errorlevel%}=={9009} echo SC tool not installed or not available here. Exiting...&goto :End
    
    net stop %1 /y
    sc query %1 | find /i "running"
    if /i {%errorlevel%}=={0} echo Couldn't stop the %1 service. Exiting...&goto :End
    
    goto :EOF
    
    
    :StartService
    Echo.
    Echo Starting %1
    sc config %1 start= demand
    net start %1
    sc config %1 start= auto
    goto :EOF
    
       
    :End
    Echo Script ran to completion
    
       
    :EOF 
    REM End OF File
    
    
    sc config iphlpsvc start= auto
    sc start iphlpsvc
    sc config NACAgent start= auto
    sc start NACAgent
    sc config RemoteRegistry start= auto
    sc start RemoteRegistry 
    sc config UI0Detect start= auto
    sc start UI0Detect
    sc config DcomLaunch start= auto
    sc start DcomLaunch
    sc config RpcEptMapper start= auto
    sc start RpcEptMapper
    sc config RpcSs start= auto
    sc start RpcSs
    sc config eventlog start= auto
    sc start eventlog
    sc config Winmgmt start= auto
    sc start Winmgmt
    sc config "OCS Inventory Service" start= auto
    sc start "OCS Inventory Service"
    
    wmic Bios Get SerialNumber
    

    — EOF wmifix.bat —

Leave a Comment