Kā atrast un mainīt diska UUID operētājsistēmā Linux

Pēdējā atjaunošana: 17/12/2025
Autors: Isaac
  • Linux Izmantojiet UUID, lai droši identificētu nodalījumus neatkarīgi no /dev ierīces nosaukuma.
  • Tādi rīki kā blkid, /dev/disk/by-uuid, lsblk vai GParted ļauj viegli meklēt UUID.
  • UUID maiņa ietver tādu utilītu kā uuidgen un tune2fs izmantošanu, kā arī /etc/fstab un citu failu atjaunināšanu.
  • Klonējot sistēmas, ieteicams atkārtoti ģenerēt UUID un pārskatīt fstab, crypttab un GRUB, lai izvairītos no konfliktiem.

Diska UUID operētājsistēmā Linux

Kad Linux sistēmā sāk parādīties dīvainas problēmas, piemēram, problēmas ar palaišanu, nebeidzami gaidīšanas laiki vai diski, kas agrāk tika pievienoti bez problēmām, tagad vairs neparādās, vaininieks bieži vien ir viens un tas pats: a UUID ir mainīts vai nepareizi konfigurētsZināt, kā atrast, izprast un modificēt šos identifikatorus, ir gandrīz vai obligāts rituāls ikvienam, kas pārvalda GNU/Linux sistēmu ar vairākiem diskiem vai nodalījumiem.

Šajā rakstā mēs to aplūkosim ļoti detalizēti Kā pārbaudīt disku UUID un kā to droši mainīt Un kuri sistēmas faili jums jāpārbauda, ​​lai nodrošinātu, ka viss turpina pareizi startēties. Redzēsiet. komandasblkid, ls -l /dev/disk/by-uuid, uuidgen, tune2fskā tie ir saistīti ar /etc/fstabKas notiek ar mijmaiņas nodalījumu un kas jāņem vērā, ja klonējat pilnīgu sistēmu ar tādiem rīkiem kā Clonezilla.

Kas ir UUID un kāpēc tas tiek izmantots Linux sistēmā?

Termins UUID (universāli unikāls identifikators) Tas attiecas uz universāli unikālu 128 bitu (16 baitu) identifikatoru. Visizplatītākajā formātā tas tiek attēlots kā virkne 32 heksadecimālie cipari sadalīts piecās grupās, atdalītas ar defisēm, ievērojot paraugu 8-4-4-4-12, kas kopā dod 36 rakstzīmes, ieskaitot defises. Tipisks piemērs būtu kaut kas līdzīgs šim: 123e4567-e89b-12d3-a456-426614174000.

GNU/Linux sistēmās šis identifikators ir saistīts ar katru ierīce glabāšana vai nodalījums (ext4, XFS, mijmaiņas nodalījumi utt.) un kalpo, lai uz tiem atsauktos neatkarīgi no klasiskā ierīces nosaukuma (/dev/sda1, /dev/nvme0n1p2utt.), kas var mainīties, ja pievienojat vai atvienojat diskus. Tādā veidā sistēma var vienmēr piestipriniet tās pašas starpsienas lai gan disku noteikšanas secība var atšķirties.

Ne visām nodalījumiem ir tieši tāds pats UUID formāts: piemēram, nodalījumos ar formātu NTFS ir ierasts atrast 16 heksadecimālie cipari bez defisēm (64 biti), atrodoties nodalījumos FAT32 identifikatoram var būt 8 heksadecimālie cipariPat ja tā, praktiskos nolūkos Linux sistēmā tie joprojām tiek uzskatīti par unikāliem katra sējuma identifikatoriem.

Viens no svarīgākajiem šo kodu lietojumiem ir fails /etc/fstab, kur tie ir definēti montāžas punkti un montāžas iespējas katras nodalījuma. Tur parasti redzēsiet kolonnu ar ierakstiem, kuru tips ir UUID=xxxx-xxxx... vietā /dev/sdXtieši tāpēc, lai iegūtu stabilitāti un izvairītos no pārsteigumiem, mainot detaļas.

Metodes disku UUID skatīšanai operētājsistēmā Linux

Pirms kaut ko aiztikt, ieteicams precīzi zināt, kuras nodalījumi jums ir un ar tiem saistītie UUID. Linux piedāvā vairākus rīkus, piemēram šķīrāsLīdz pārbaudiet visu disku UUID savienots gan ar komandrindas, gan grafisko utilītu palīdzību.

Vaicājiet UUID ar komandu blkid

Viens no tiešākajiem veidiem, kā skatīt identifikatorus, ir izmantot blīdsŠai komandai ir nepieciešamas administratora privilēģijas, tāpēc tā jāpalaiž ar sudo vai kā lietotājs sakneJa to palaižat bez parametriem, uzskaitīt Varat izmantot visas atrastās ierīces:

sudo blkid

La iziet Parasti tajā tiek parādītas šādas rindas:

/dev/sda1: UUID="8aa6c0d2-c18e-4606-b1da-f5f1f7617f00" TYPE="xfs" PARTUUID="..."

Katra rinda ir saistīta ar ierīce /izstrādātājs ar viņu UUID, failu sistēmas tips (ext4, xfs, vfatutt.) un citus metadatus, piemēram, PĀRTŪIDSJa vēlaties filtrēt tikai pēc konkrētas ierīces, varat to norādīt kā parametru:

sudo blkid /dev/sda1

Ja vēlaties atrast interesējošā nodalījuma UUID, nepārbaudot visas rindas, varat izmantot... grepPiemēram, lai redzētu identifikatoru /dev/sdd4:

sudo blkid | grep sdd4

Tas pats UUID Tas ir tas, ko redzēsiet vēlāk /etc/fstab ja šī nodalījuma konfigurācija ir tāda, lai tas automātiski tiktu pievienots zābaksTāpēc ir svarīgi par to būt ļoti skaidram. Kura līnija atbilst katram montāžas punktam.

Lai skatītu saites, izmantojiet direktoriju /dev/disk/by-uuid

Vēl viena ļoti praktiska iespēja, lai redzētu katra nodalījuma UUID, ir uzskaitīt direktorija saturu. /dev/disk/by-uuid/Šajā direktorijā sistēma izveido simboliskas saites kur katrs faila nosaukums ir ierīces UUID, un saite norāda uz faktisko ierīci /dev/.

Lai redzētu viss saraksts vienkārši palaidiet:

  Kā ar peles labo pogu noklikšķināt bez peles: pilnīga rokasgrāmata

sudo ls -l /dev/disk/by-uuid/

Izeja tev parādīs Kaut kas kā:

lrwxrwxrwx 1 root root 10 ... 8aa6c0d2-c18e-4606-b1da-f5f1f7617f00 -> ../../sda1

Tādā veidā jūs varat uzreiz redzēt, kas UUID atbilst katrai /dev ierīcei un salīdziniet šo informāciju ar to, kas redzams /etc/fstab vai ar to, ko rāda citi rīki, piemēram, lsblk o gpartedTas ir īpaši noderīgi, ja atkļūdojat montāžas problēmas vai labojat kļūdas konfigurācijas failos.

Skatīt UUID un piestiprināšanas punktus ar lsblk

Komanda lsblk Tas ir ļoti ērts rīks, lai koka formā skatītu attiecības starp diskiem, nodalījumiem, loģiskajiem sējumiem un to stiprinājuma punktiLai gan tā galvenais mērķis nav UUID attēlošana, to var apvienot ar dažām opcijām, lai iegūtu diezgan pilnīgu priekšstatu par krātuves sistēmu.

Tipisks aicinājums būtu šāds:

lsblk -o NAME,MOUNTPOINT,TYPE

Kolonnā KALNA PUNKTS Jūs redzēsiet tādus maršrutus kā /, /home, /boot, /mnt/datosutt. No turienes jūs varat uzzināt Kuru ierīci vēlaties pārbaudīt un tad izmantojiet blkid vai pārskatīt /dev/disk/by-uuid lai redzētu tā identifikatoru. Tas ir īpaši noderīgi, ja sistēma pievieno diskus nedraudzīgos ceļos (piemēram, dažas NAS ierīces vai rīki, piemēram, OpenMediaVault, kas pievienojas /srv/ ar gariem nosaukumiem, piemēram dev-disk-by-uuid-XXXX).

UUID vaicājums, izmantojot /etc/fstab

Vēl viens veids, kā ātri redzēt, kuri UUID tiek izmantoti jūsu sistēmā, ir pārbaudīt failu /etc/fstab, kas definē kuras starpsienas ir uzstādītas un kur startēšanas laikā. To var pārbaudīt, izmantojot:

cat /etc/fstab

Tajā jūs atradīsiet līdzīgas rindas:

UUID=8aa6c0d2-c18e-4606-b1da-f5f1f7617f00 /backups xfs rw,noquota,nofail 0 1

Pirmajā kolonnā tiek izmantota UUID kā nodalījuma identifikatoru, kam seko stiprinājuma punkts, failu sistēmas tips (šajā piemērā xfs) un opciones de montaje (rw,noquota,nofailutt.). Pārbaudiet /etc/fstab Ir labs ieradums laiku pa laikam pārbaudīt, īpaši pēc disku nomaiņas, atkārtotas nodalīšanas vai sistēmu atkārtotas instalēšanas, lai pārliecinātos, ka UUID joprojām atbilst īstajiem.

Turklāt, vienkāršs variants:

cat /etc/fstab | grep UUID

ļaus jums atrast Ātri atrodiet visus ierakstus, kas identificēti ar UUID, kas ir ļoti noderīgi, ja jums ir aizdomas, ka identifikators ir novecojis un rada sāknēšanas problēmas.

Tipiskas UUID problēmas: lēns sāknēšanas laiks un koplietota mijmaiņas vieta

Viens no biežākajiem nepareizi konfigurēta UUID simptomiem ir šāds: Sistēma sasalst startēšanas laikā. Diezgan ilgu laiku, parasti apmēram pusotru minūti, tiek rādīti ziņojumi, kas norāda, ka nevar atrast konkrētu nodalījumu. Pēc šī gaidīšanas perioda sāknēšanas process turpinās, bet problemātiskā nodalījuma netiek pievienota.

Tas parasti notiek, kad iekšā /etc/fstab Ir ieraksts ar UUID, kas vairs nepastāvIespējams, tas ir tāpēc, ka esat mainījis disku, formatējis nodalījumu vai atkārtoti instalējis citu izplatījumu tajā pašā diskā, kas ir ģenerējis jaunu identifikatoru. Sistēma mēģina pievienot šo nodalījumu ar UUID, kāda nevienam nav, un gaida, līdz tā derīguma termiņš beidzas. el tiempo.

Diezgan izplatīts gadījums rodas, ja jums ir duālā sistēma (piemēram, Ubuntu un Debian), kas koplieto vienu un to pašu nodalījumu linux-swapIedomājieties disku ar trim nodalījumiem: sdc1 piemēram, apmaiņa, un sdc2 y sdc3 kā root nodalījumus ext4 vidē attiecīgi Ubuntu un Debian. Ja Ubuntu pirmo reizi instalējat sdc3 un tad Debian iekšā sdc2Debian instalētājam ir ierasts pārformatējiet mijmaiņas disku un nomainiet tā UUID.

Rezultātā pirmajai instalētajai sistēmai (šajā piemērā — Ubuntu) ir /etc/fstab un Vecais UUID apmaiņaiKad tas startējas, tas meklē šo nodalījumu ar identifikatoru, kas vairs nepastāv, gaida maksimālo laiku, uzskata to par pazaudētu un turpina startēšanu, nepievienojot mijmaiņas disku. Tā nav pasaules gala, bet gan lēnuma un nevajadzīgas RAM patēriņa avots.

Lai diagnosticētu šādus gadījumus, varat izmantot grafiskos rīkus, piemēram, GPartedJa tas nav instalēts, Debian balstītos izplatījumos to var izdarīt ar:

sudo apt install gparted

Kad esat palaidis GParted, atlasiet disku un ar peles labo pogu noklikšķiniet uz mijmaiņas nodalījuma, lai izvēlētos opciju INFORMACIONTur jūs redzēsiet informāciju, piemēram, ierīces nosaukumu (sdc1), tips ( )linux-swap) un pašreizējais UUIDTas ir identifikators, kam jāparādās arī /etc/fstab katrai sistēmai, kas izmanto šo mijmaiņas darījumu.

  Kas ir Robolinux Stealth VM un kā tā darbojas operētājsistēmā Windows operētājsistēmā Linux?

Risinājums ietver rediģēšanu /etc/fstab sistēmas, kurai ir novecojis UUID (piemēram, Ubuntu), un nomainiet veco UUID ar jauno ko esat redzējis GParted vai ar blkidTo var izdarīt ar savu iecienītāko redaktoru, piemēram:

sudo nano /etc/fstab

Pēc izmaiņu saglabāšanas nākamajā palaišanas reizē sistēma atradīs pareizo mijmaiņas nodalījumu, un palaišanas process atkal noritēs gludi. Tā pati procedūra attiecas uz jebkura cita nodalījuma kura UUID ir mainījies atkārtotas instalēšanas, formatēšanas vai slikti izpildītas klonēšanas dēļ.

UUID ģenerēšana un mainīšana operētājsistēmā Linux

Pienāk brīdis, kad ar UUID lasīšanu vien nepietiek: ir nepieciešams ģenerēt jaunus identifikatorus vai mainīt esošosTas var būt nepieciešams, klonējot diskus, ja vēlaties izvairīties no konfliktiem starp sistēmām vai vienkārši organizatoriskiem mērķiem. Linux piedāvā vairākus rīkus šiem uzdevumiem, dažus vispārīgus (uuidgen) un citi, kas raksturīgi noteiktām failu sistēmām (tune2fs (ext2/3/4).

Ģenerējiet jaunus UUID ar uuidgen

Lietderība uuidgen Tā ir atbildīga par jaunu UUID izveidi un attēlošanu, izmantojot bibliotēku. libuuidĢenerētie identifikatori praksē ir unikāli gan lokālajā sistēmā, gan jebkurā citā sistēmā – pagātnē, tagadnē vai nākotnē, jo tie atbilst standartiem, kas izstrādāti, lai statistiski ļoti neticamā veidā izvairītos no sadursmēm.

Galvenokārt ir divi paaudzes režīmi, kurus tas apstrādā uuidgen: uz laiku balstīti UUID y nejauši UUIDPirmie izmanto sistēmas pulksteni un adresi MAC tīkla kartes (ja tāda ir pieejama), savukārt pēdējie paļaujas uz a nejaušo skaitļu ģenerators augstas kvalitātes, parasti /dev/random o /dev/urandom.

Dažos izplatījumos, piemēram, Debian 9 Stretch, rīks uuidgen Tas nav instalēts pēc noklusējuma. Tādā gadījumā to var pievienot, instalējot pakotni. uuid izpildlaiks:

sudo apt update
sudo apt install uuid-runtime

Pēc instalēšanas tā vispārējā sintakse ir ļoti vienkārša:

uuidgen

Visizplatītākās iespējas ir:

  • -r, –nejaušs: ģenerē UUID, pamatojoties uz nejaušībaizmantojot sistēmas nejaušo skaitļu ģeneratoru.
  • -t, -laiks: ģenerē UUID, pamatojoties uz laiks un MAC adrese mašīnas.
  • -h, -palīdz: parāda palīdzību un iziet.
  • -V, -versija: parāda versiju un iziet.

Ja skrien uuidgen Bez parametriem jūs tieši iegūsiet jaunu UUID savā termināls ko var kopēt un izmantot jebkur, kur nepieciešams, piemēram, skriptos vai pielāgotos konfigurācijas failos.

Mainiet ext2/3/4 nodalījuma UUID, izmantojot tune2fs

Ja vēlaties, lai esošajai nodalījumam būtu jauns UUIDExt2, ext3 vai ext4 failu sistēmās atsauces rīks ir tune2fsŠī komanda ļauj mainīt failu sistēmas iekšējos parametrus, tostarp tās identifikatoru.

Pirms kaut ko mainīt, ir svarīgi atvienot nodalījumu lai izvairītos no datu bojājumiem. Pieņemsim, ka vēlaties mainīt UUID /dev/sdd4Pamatplūsma būtu šāda:

sudo umount /dev/sdd4

Pēc izjaukšanas varat jautāt tune2fs kas tieši ģenerē jaunu nejaušu UUID:

sudo tune2fs /dev/sdd4 -U random

Ja vēlaties pats kontrolēt konkrēto identifikatoru (piemēram, izmantot iepriekš ģenerētu identifikatoru ar uuidgen), vērtību var nodot arī skaidri:

sudo tune2fs /dev/sdd4 -U 123e4567-e89b-12d3-a456-426614174000

Pēc izmaiņām ir ieteicams pārbaudīt rezultātu ar blkid vai pārskatīšana /dev/disk/by-uuid Lai apstiprinātu, ka identifikators ir atjaunināts:

sudo blkid /dev/sdd4

Atcerieties, ka, ja šī sadaļa parādās /etc/fstab vai citus konfigurācijas failus, jums būs nepieciešams Manuāli atjauniniet jauno UUID lai sistēma startēšanas laikā neturpinātu meklēt veco identifikatoru.

Rediģēt /etc/fstab, lai izmantotu UUID pievienojumos

Ieteicamais veids, kā definēt pastāvīgos pieslēgumus Linux sistēmā, ir izmantot UUID failā /etc/fstabUUID ieraksta vispārīgā sintakse ir aptuveni šāda:

UUID={TU-UUID} /ruta/de/montaje tipo_fs opciones 0 1

Piemēram, XFS diskam, kas paredzēts dublējumkopijām, varētu būt šāda rinda:

UUID=8aa6c0d2-c18e-4606-b1da-f5f1f7617f00 /backups xfs rw,noquota,nofail 0 1

Šajā piemērā opcija bez neveiksmes Tas ļauj sistēmai neuzskatīt to par kritisku, ja disks startēšanas laikā nav pievienots, kas ir ļoti noderīgi ārējiem diskdziņiem vai dublējuma diskiem, kas ne vienmēr ir pievienoti. Citas iespējas ietver bezkvotas o kļūdas=atkārtota-ro Tie ir atkarīgi no failu sistēmas veida un paredzētā lietojuma.

Kad esat modificējis /etc/fstab Lai pievienotu vai atjauninātu jebkuru ierakstu, ieteicams pārbaudīt konfigurāciju bez restartēšanas, izmantojot:

  Izlabojiet WSA nedarbojas kļūdu operētājsistēmā Windows 11

sudo mount -a

Ja nav kļūdu, rezultātu varēsiet redzēt šādi:

df -h | grep backups

vai līdzīgi, aizstājot backups pēc pieslēgšanas punkta, kas atbilst jūsu gadījumam. Ja kaut kas noiet greizi, pārbaudiet, vai UUID ir pareizs un vai norādītā failu sistēma atbilst faktiskajai.

Sistēmas klonēšana un UUID konflikti

Viens scenārijs, kas rada daudz jautājumu, ir veselu sistēmu klonēšana, piemēram, ar tādiem rīkiem kā ClonezillaKlonējot vienu disku uz citu, dati tiek kopēti. tāpat kā nodalījumi, to failu sistēmas un to UUIDTas nozīmē, ka kādu laiku jums būs divi dažādi diski ar nodalījumiem, kuriem ir viens un tas pats identifikators.

Šī pārklāšanās, iespējams, nav problēma, ja pārmaiņus startējat tikai no klona vai oriģināla, bet, ja abus vienlaikus pievienojat vienā un tajā pašā datorā, visticamāk, parādīsies kļūdas. UUID konfliktiSistēma precīzi nezinās, kurai nodalījumai atbilst katrs identifikators, un var rasties pievienošanas kļūdas, neskaidri sāknēšanas laiki vai pat nodalījumi no klona var tikt pievienoti tur, kur gaidīts, ka tie būs no sākotnējā diska.

Lai izvairītos no šiem konfliktiem, ir ierasta prakse rīkoties šādi. mainīt klona nodalījumu UUID Pēc klonēšanas pārliecinieties, vai katrs disks ir skaidri nošķirts. Kā jau redzējām iepriekš, ext4 nodalījumu gadījumā varat paļauties uz uuidgen lai ģenerētu jaunus identifikatorus un tune2fs tos piemērot.

Ja jūsu sistēmai ir nedaudz sarežģītāka struktūra, piemēram, sakne ext4 > LVM > LUKS (dm-crypt), jums jāņem vērā, ka var būt UUID dažādos līmeņosTie ietver: failu sistēmas failus, LVM fiziskā sējuma failus, loģiskā sējuma failus, LUKS konteinera failus utt. Turklāt tādi faili kā /etc/crypttab Viņi var atsaukties uz šiem identifikatoriem.

Tipiskā šifrēšanas gadījumā shēma varētu izskatīties apmēram šādi:

nvme0n1 (disco físico)
├─nvme0n1p1 /boot/efi
├─nvme0n1p2 /boot
└─nvme0n1p3 (partición cifrada LUKS)
└─nvme0n1p3_crypt
├─sys--vg-root /
└─sys--vg-swap_1

Ja maināt UUID jebkurā šīs ķēdes punktā, jums jānodrošina, ka atjauninātas visas vietas, kur uz tiem ir atsauces: /etc/fstab pieslēgšanas punktiem, /etc/crypttab šifrētiem sējumiem un dažos gadījumos sāknēšanas parametri, ko GRUB izmanto saknes atrašanai.

Runājot par GRUB, daudzās mūsdienu konfigurācijās tas pats izvēlnes ieraksts izmanto UUID Lai uzzinātu, kur atrodas saknes nodalījums. Tas ir, kodola rindā parādās kaut kas līdzīgs šim: root=UUID=...Kad jūs atkārtoti ģenerējat failu grub.cfg skriešana update-grub (vai līdzvērtīgu komandu jūsu distribūcijā), sistēma atkārtoti nolasa diskus un atjaunina šos identifikatorus. Tāpēc pēc UUID modificēšanas startējamā klonā ir ļoti ieteicams startēt no šī klona un veikt GRUB konfigurācijas reģenerāciju, lai nodrošinātu, ka viss ir konsekvents.

Praksē saprātīga darbplūsma, klonējot pilnīgu sistēmu un vēloties to izmantot paralēli oriģinālam, parasti ir šāda:

  • Ielādēt no klona (lai izvairītos no sajaukšanas ar ierīču nosaukumiem).
  • Mainiet to nodalījumu UUID, kurus vēlaties atšķirt (ar tune2fs vai rīkus, kas atbilst katrai failu sistēmai).
  • Modernizēt / etc / fstab un, ja piemērojams, /etc/crypttab ar jaunajiem identifikatoriem.
  • Atjaunot GRUB konfigurāciju (piemēram, ar sudo update-grub Debian/Ubuntu vidē).

Lai gan tas var šķist nedaudz darbietilpīgi, šī pieeja nodrošina, ka klons būs pilnībā palaižams un neatkarīgs oriģināla, un ka abi var pastāvēt līdzās vienā un tajā pašā ierīcē, neuzkāpjot viens otram.

UUID pārvaldības apgūšana operētājsistēmā Linux ļauj diagnosticēt lēnu sāknēšanas laiku, novērst problēmas ar mainītajām nodalījumiem un konfigurēt stabilākus stiprinājumus. /etc/fstabMijmaiņas vietas koplietošana starp distribūcijām bez problēmām un veselu sistēmu klonēšana, vienlaikus visu kontrolējot. Galu galā atliek tikai pareizi noteikt, kurai sadaļai tā pieder, un pārbaudīt to kodu ar tādiem rīkiem kā blkid o ls -l /dev/disk/by-uuidun padariet par ieradumu pārskatīt un atjaunināt galvenos konfigurācijas failus ikreiz, kad veicat būtiskas izmaiņas diskos.

dalītās komandas apmācība
saistīto rakstu:
Atdalīto komandu apmācība: pilnīga rokasgrāmata ar piemēriem un ieteikumiem