GNU/Linux >> Belajar Linux >  >> Linux

Ekstrak nomor seri Linux tanpa sudo

dmidecode membaca informasi ini dari memori fisik, menggunakan /dev/mem , yang membutuhkan root.

Informasi yang sama juga disediakan oleh kernel Linux melalui sysfs dalam direktori virtual, /sys/devices/virtual/dmi/id .

Sayangnya, seseorang memutuskan bahwa semua informasi dalam direktori virtual itu terbuka bagi siapa saja untuk dibaca, hanya saja tidak nomor seri:

$ ls -l /sys/devices/virtual/dmi/id

-r--r--r-- 1 root root 4096 Nov 25 17:12 bios_date
-r--r--r-- 1 root root 4096 Nov 14 14:59 bios_vendor
-r--r--r-- 1 root root 4096 Nov 25 17:12 bios_version
-r--r--r-- 1 root root 4096 Nov 25 17:12 board_asset_tag
-r--r--r-- 1 root root 4096 Nov 25 17:12 board_name
-r-------- 1 root root 4096 Nov 25 17:12 board_serial
-r--r--r-- 1 root root 4096 Nov 14 14:59 board_vendor
-r--r--r-- 1 root root 4096 Nov 25 17:12 board_version
-r--r--r-- 1 root root 4096 Nov 25 17:12 chassis_asset_tag
-r-------- 1 root root 4096 Nov 25 17:12 chassis_serial
-r--r--r-- 1 root root 4096 Nov 25 17:12 chassis_type
-r--r--r-- 1 root root 4096 Nov 25 17:12 chassis_vendor
-r--r--r-- 1 root root 4096 Nov 25 17:12 chassis_version
-r--r--r-- 1 root root 4096 Nov 25 17:12 modalias
drwxr-xr-x 2 root root    0 Nov 25 17:12 power
-r--r--r-- 1 root root 4096 Nov 14 14:59 product_name
-r-------- 1 root root 4096 Nov 25 17:12 product_serial
-r-------- 1 root root 4096 Nov 14 14:59 product_uuid
-r--r--r-- 1 root root 4096 Nov 14 14:59 product_version
lrwxrwxrwx 1 root root    0 Nov 14 14:59 subsystem -> ../../../../class/dmi
-r--r--r-- 1 root root 4096 Nov 14 14:59 sys_vendor
-rw-r--r-- 1 root root 4096 Nov 14 14:59 uevent

Jika Anda dapat menginstal paket hal (tidak diinstal secara default pada versi Ubuntu terbaru), perintah ini akan berfungsi untuk Anda sebagai non-root:

 lshal | grep system.hardware.serial

 system.hardware.serial = '<serial_number>'  (string)

Ini berfungsi karena paket hal instal hald daemon, yang berjalan sebagai root dan mengumpulkan data ini, sehingga memungkinkan untuk lshal untuk membacanya sebagai non-root.


Linux
  1. Bagaimana Internal Sudo Bekerja?

  2. Apa tujuan dari grup "roda" di Linux?

  3. Bagaimana menemukan semua perangkat serial (ttyS, ttyUSB, ..) di Linux tanpa membukanya?

  1. Linux – Jumlah Utama Unix Anda?

  2. Linux – Apakah Slash (/) Bagian Dari Nama Direktori Root Linux?

  3. Mengapa kata sandi 'sudo' berbeda dengan kata sandi 'su root'

  1. Ubah Kata Sandi Root Dengan Sudo, Tanpa Su?

  2. Memahami Script rc di Linux

  3. Dapatkan ukuran total hard drive saya di Linux, menggunakan baris perintah, tanpa izin root?