Data Domain: Data Domain File System, sfs-dump -tiedostojärjestelmän tiedostojen luettelointi

Summary: Tässä artikkelissa kerrotaan, miten Data Domain -komentoriviliittymässä vedotaan yksittäisten MTree-tiedostojen tai koko tiedostojärjestelmän (FS) tiedosto- ja hakemistoluetteloihin. Näin käyttäjät saavat selville, mitä Data Domainiin on tallennettu varmuuskopiointisovelluksesta. ...

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

Data Domain on passiivinen taustatallennuslaite. Se tallentaa vain sen, mitä varmuuskopiointisovellukset käskevät, ja poistaa tiedot vain, kun varmuuskopiointisovellus käskee sitä poistamaan tiedostoja. Data Domain ei koskaan luo tai poista mitään tiedostoja yksinään.

Käytetystä protokollasta riippumatta Data Domain FS sisältää vain MTreesiin järjestettyjä tiedostoja (hakemistoissa). Kaikilla tiedostoilla (sekä aktiivisissa tiedostoissa että pilviyksiköissä) on sama juuri- ja nimitila. Yksi nimitila on olemassa, mikä tarkoittaa, että tiedosto- ja hakemistoluettelot sisältävät Active- ja pilviyksiköiden tiedostot erotuksetta.

Yksityiskohtaisen tiedostovedoksen hankkimisesta voi olla hyötyä esimerkiksi seuraavista syistä:
  • Vertaaminen varmuuskopiointisovelluksen tiedostoluetteloon sovelluksen hylkäämien tiedostojen tunnistamiseksi.
  • Kaikkien tietyn iän ylittävien tiedostojen luettelointi sen määrittämiseksi, noudattaako varmuuskopiointisovellus varmuuskopioinnin säilytyssakkoa
DDOS:iin hiljattain tehtyjen muutosten vuoksi Data Domain -järjestelmien tiedostoluetteloiden keräämiseen käytettävät komennot ovat muuttuneet aikojen saatossa. Nämä ovat käytettävissä vain DD-komentoriviliittymässä, ja versiosta riippuen ne olisivat:
  • DDOS, joka on vanhempi kuin 7.13.0.0, 7.10.1.15, 7.7.5.25 ja 6.2.1.110
se sfs_dump
  • DDOS, joka on yhtä suuri tai uudempi kuin 7.13.0.0, 7.10.1.15, 7.7.5.25, 6.2.1.110
filesys sfs-dump

Cause

DDOS-versiot 7.13.0.0, 7.10.1.15, 7.7.5.25 ja 6.2.1.110 sekä uudemmat versiot eivät enää sisällä alla olevaa komentoa SE-tilassa:
sfs_dump
SE-tila, jota tarvittiin tämän toiminnon käyttämiseen, on poistettu käytöstä, kuten DSA-2023-412:ssa on selitetty: Dell Technologiesin PowerProtect-tietoturvapäivitys useisiin tietoturvahaavoittuvuuksiin

Väliaikaisena ajanjaksona osa vanhan toiminnoista sfs_dump SE-tilassa komento ei ollut käytettävissä, mutta se otettiin uudelleen käyttöön myöhemmässä vaiheessa. Siksi tämä tietämyskannan artikkeli yrittää selittää erot ja sen, miten komentotulosteita käsitellään kussakin tapauksessa.

Resolution

DDOS-julkaisu edellyttää, että Data Domainin tiedostot luetellaan yksityiskohtaisesti komentoriviliittymässä ja miten tietoja haetaan Data Domainiin tallennetuista tiedostoista. Kun tiedoston tiedot sisältävä tekstitulostetiedosto on kerätty, tulosteen käsittely käyttökelpoisempaan muotoon on aina sama, koska kaikkien DDOS-julkaisujen tulostusmuoto on sama (tai se voidaan muuntaa yleiseen muotoon komentosarjan avulla).

Yhteistä kaikille DDOS-julkaisuille on vaatimus kirjautua Data Domainiin admin-käyttäjänä käyttämällä SSH-asiakasohjelmaa, joka tukee konsolin tulosteen kirjaamista tekstitiedostoon asiakaspuolella (PuTTY toimii tässä hyvin). Käyttäjän on määritettävä SSH-asiakas kirjaamaan tuloste tekstitiedostoon asiakastietokoneessa (varmistaen, että kirjattavien rivien määrälle tai yksittäisten rivien pituudelle ei ole rajoituksia). SSH-istunnon lokitiedostoa (ja siten DD-tiedostoluetteloita) ei kirjoiteta Data Domainiin, vaan (tyypillisesti) pöytätietokoneeseen, josta SSH-yhteys muodostetaan.

Kun keräät SSH-istunnon tulosta, varmista, että annat tiedostolle kuvaavan nimen (kuten Data Domain -isäntänimen ja vedoskelpoisen MTree-nimen lisääminen) ja että lokitiedostolle on riittävästi tilaa, joka voi olla noin 200 Mt järjestelmissä, joissa on miljoona tiedostoa.

DD-komentoriviliittymässä suoritettava, tarkka komento tiedostoluetteloiden keräämiseksi määräytyy käytetyn DDOS-version mukaan. Yhteenveto tiedoista on alla.
 

DDOS-julkaisut ennen versioita 7.13.0.0, 7.10.1.15, 7.7.5.25 ja 6.2.1.110:

Nämä versiot tukevat edelleen se sfs_dump komento (ja -c mahdollisuus tulostaa tiedostotiedot suoraan CSV-muodossa ilman lisäkäsittelyä), vaikka SE-tilaan siirtymistä ei suositella turvallisuussyistä, ja päivitä sen sijaan uusimpaan saatavilla olevaan LTS DDOS -julkaisuun.

Varmista, että olet kirjautunut Data Domainiin admin-käyttäjänä ja SSH-asiakasohjelma on määritetty kirjoittamaan tuloste levylle, siirry SE-käyttöoikeustilaan ja suorita seuraava komento jokaiselle MTreelle, jonka tiedostotiedot haluat:
#### To produce the output directly as CSV
# se sfs_dump -c <mtree-path>

#### To produce the output as default format
# se sfs_dump <mtree-path>
Näiden versioiden komento voi myös tuottaa luettelon kaikille FS:n tiedostoille kerralla (yhden MTree:n sijaan kerrallaan). Jos haluat tyhjentää kaikkien FS-tiedostojen tiedostotiedot, jätä MTree-polku pois:
# se sfs_dump -c
Kun olet valmis, lopeta SSH-asiakkaan kirjaaminen levylle ja siirrä tiedostot sivuun jatkokäsittelyä varten.

Komennon tuloksen muoto on yksi rivi kullekin tiedostolle. Jos ei käytetä -c Muoto on identtinen yllä esitetyn kanssa myöhemmissä julkaisuissa. Tapauksissa, joissa käytettiin -c:tä (CSV-tulosteessa), muoto on seuraavanlainen (mukaan lukien tulosteen ensimmäisenä rivinä näkyvä otsikko):
name    mtime   fileid  size    seg_bytes       seg_count       redun_seg_count pre_lc_size     post_lc_size
/data/col1/backup/file       1656995350000000000     78      33554431        33668007        4016    0       33668007        34208564


DDOS-versiot 7.13.0.0, 7.10.1.15, 7.7.5.25 ja 6.2.1.110 tai uudemmat:

Tämä versio ei enää sisällä seuraavia: sfs_dump SE-tilasta (seuraava ei ole käytettävissä):
se sfs_dump
SE-tila on vanhentunut löytyneiden tietoturvaongelmien vuoksi. Vaihtoehtoinen komento on alla. Huomaa hieman erilainen komennon nimi ja se, että tässä tapauksessa luettelossa oleva MTree kulkee avainsanan "MTree" jälkeen:
# filesys sfs-dump mtree <mtree-path>
Otsikon julkaisuissa tämä sfs-vedoskomento verrattuna se sfsa_dump:
  • Uusi komento ei tue -c mahdollisuus vedostaa tiedoston tiedot CSV (sarake) -muodossa
  • Uusi komento voi suorittaa vain MTree:n kerrallaan, eikä se tue suorittamista koko FS:ää vastaan yhdellä kutsulla
Jos näiden versioiden asiakkaat haluavat tyhjentää kaikki MTree-tiedostotiedot tiedostoon, heidän on käytävä läpi koko MTree-luettelo Data Domain FS:ssä ja suoritettava komento kerran kullekin niistä. Käyttäjä voi saada luettelon järjestelmän MTreeistä suorittamalla:
# mtree list
Alla olevan komennon tulos on sama kuin aiemmassa komennossa se sfs_dump -komento käytettäessä ilman -c -vaihtoehto.
filesys sfs-dump
Varmista, että olet kirjautunut Data Domainiin admin-käyttäjänä SSH-asiakkaan ollessa määritetty kirjoittamaan tuloste levylle, ja suorita sitten seuraava komento jokaiselle MTreelle, jonka tiedostotiedot haluat:
# filesys sfs-dump mtree <mtree-path>

Jos saat useamman kuin yhden MTree-tiedoston tiedot, tee kaikki vedokset samaan tulostiedostoon tai vaihda SSH-asiakaskokoonpanossa toiseen tiedostoon, ennen kuin suoritat komennon kullekin MTreelle.

Vaihtoehtoisesti voit kerätä tuloksen ilman valvontaa suorittamalla komennon SSH:n kautta seuraavasti:

#### Releases 7.13.0.0, 7.10.1.15, 7.7.5.25 and 6.2.1.110 onwards only
# ssh sysadmin@DD-HOSTNAME "filesys sfs-dump mtree /data/col1/backup" > sfs-dump-DD-backup.txt

Kummassakin tapauksessa tulostetiedoissa on yksi rivi kullekin tiedostolle seuraavassa muodossa:

/data/col1/backup/file: mtime: 1580211658000000000 fileid: 175 size: 136794 type: 9 seg_bytes: 138282 seg_count: 18 redun_seg_count: 14 (78%) pre_lc_size: 15045 post_lc_size: 8760 (58%) mode: 02000100644 start_offset: 0 end_offset: 18446744073709551615

DDOS-versiot 8.1.0.0, 7.13.1.10, 7.10.1.30 ja 7.7.5.40 tai uudemmat:

Asiakkaiden kysynnän vuoksi osa vanhan se sfs_dump Command on otettu uudelleen käyttöön, ja se on nyt käytettävissä filesys sfs-dump komento, nimittäin:
  • Mahdollisuus lisätä -c -asetus, jolloin tuloste tulostetaan CSV-tyyppisenä muotoiltuna versiona (sarakkeilla erotetut kentät)
  • Mahdollisuus suorittaa tiedostojen vedostiedot kaikille FS: n tiedostoille kerralla
Komento on edelleen sama kuin välittömästi aiemmissa versioissa, ja mainitut parannukset on tiivistetty alla:
 
#### File listing for all the files in a given MTree path
# filesys sfs-dump mtree <mtree-path>

#### File listing for all the files in a given MTree path, with CSV-like output
# filesys sfs-dump -c mtree <mtree-path>

#### File listing for all the files in the FS
# filesys sfs-dump

#### File listing for all the files in the FS, with CSV-like output
# filesys sfs-dump -c

Tämä komento on edelleen piilotettu, joten se ei näy vuorovaikutteisessa komentoriviliittymässä tai ohjeissa.
 

Miten käsitellä sfs_dump tai filesys sfs-dump Datasta jotain hyödyllistä:

Tulosteena ilmoitettavien yksittäisten tiedostojen muoto käytettäessä filesys sfs-dump tai sfs_dump ilman -c Vaihtoehto voidaan tiivistää seuraavasti:
/data/col1/backup/file: mtime: 1580211658000000000 fileid: 175 size: 136794 type: 9 seg_bytes: 138282 seg_count: 18 redun_seg_count: 14 (78%) pre_lc_size: 15045 post_lc_size: 8760 (58%) mode: 02000100644 start_offset: 0 end_offset: 18446744073709551615

Field 01 : filename with full path (/data/col1/backup/file)
Field 03 : file last modification time as UNIX epoch in nanoseconds (nanoseconds since January 1st 1970 at midnight)
Field 05 : file (inode) ID, inode numbers are per MTree (175)
Field 07 : pre-comp size for the file in bytes (136794)
Field 09 : type of file (9)
Field 11 : segment store bytes (this is NOT the file size), please ignore (138282)
Field 13 : segment count, or the number of segments the file consists of (18)
Field 15 : number of file segments which are redundant, or not unique (14)
Field 16 : percentage of non-unique segments to total segments (78%)
Field 18 : combined size of the file's unique segments after deduplication (15045)
Field 20 : combined size of the file's unique segments after deduplication and local compression (8760)
Field 21 : ratio of post-deduplicated + post-compressed unique segments size to post-deduplicated unique segment size (58%), shows how well local compression worked
Field 23 : file mode, please ignore
Edellä olevassa esimerkissä on tiedosto, jonka alkuperäinen koko on 136 794 tavua ja jonka lasketaan käyttävän 15 045 tavua tieto-optimoinnin jälkeen sen jälkeen, kun se on siirretty Data Domain FS -ining-putken läpi, ja 8760 tavua, kun tiedoston yksilölliset segmentit pakataan ennen levylle kirjoittamista. Täältä:
  • Tiedostojen deduplikointi (jota kutsumme "gcompiksi" tai globaaliksi pakkaukseksi) on kerroin x9.09 (136 794 - 15 045 tavua)
  • Tiedoston paikallinen pakkaus (jota kutsumme "lcompiksi" paikallista pakkausta varten) on kerroin x1.72 (15,045 - 8760 tavua)
  • Arvioitu tiedostokoon kokonaispieneneminen (pakkaussuhde) on x15.62 (136 794–8760 tavua)
Vuorotellen sfs_dump -c Tuotos on samanlainen, mutta suppeampi:
/data/col1/backup/file       1656995350000000000     78      33554431        33668007        4016    0       33668007        34208564

Field 01 : filename with full path (/data/col1/backup/file)
Field 02 : file last modification time as UNIX epoch in nanoseconds (nanoseconds since January 1st 1970 at midnight)
Field 03 : file (inode) ID, inode numbers are per MTree
Field 04 : pre-comp size for the file in bytes (33554431)
Filed 05 : segment store bytes (this is NOT the file size), please ignore (33668007)
Field 06 : segment count, or the number of segments the file consists of (4016)
Field 07 : number of file segments which are redundant, or not unique (0)
Field 08 : combined size of the file's unique segments after deduplication (33668007)
Field 09 : combined size of the file's unique segments after deduplication and local compression (34208564)
Tässä esimerkissä voimme tehdä samat laskelmat kuin edellisessä:
  • Tiedostojen deduplikointi (jota kutsumme "gcompiksi" tai globaaliksi pakkaukseksi) on kerroin x0,99 (33 554 431 - 33 668 007 tavua)
  • Tiedoston paikallinen pakkaus (jota kutsumme "lcompiksi" paikallista pakkausta varten) on kerroin x0,98 (33 668 007 - 34 208 564 tavua)
  • Arvioitu tiedostokoon kokonaispienenemiskerta (pakkaussuhde) on kerroin x0,98 (33 554 431–34 208 564 tavua)
Verrattuna ei-kohdassa näkyvään tiedostoon -c Esimerkiksi tällä ei saavuteta deduplikointia (ei tarpeettomia segmenttejä) eikä paikallista pakkausta. Tämä tarkoittaa, että tiedosto on pakattu.
 
Huomio: Tulostiedostojen tietoja, jotka koskevat muuta kokoa kuin "tiedoston pre-comp-koko tavuina", on pidettävä likimääräisinä, eikä niihin voida täysin luottaa. Tiedostojen metatiedot luodaan tiedoston käsittelyn yhteydessä, ja vaikka ne ovat silloin oikein, niitä ei päivitetä missään vaiheessa sen jälkeen, joten ne vanhenevat ajan myötä. Lisäksi tiedosto on post_lc_size on tietty määrä ei tarkoita, että kyseisen tiedoston käyttämä levytila on identtinen kyseisen määrän kanssa, koska on olemassa paljon FS-tason yleiskustannuksia, joita ei oteta huomioon tiedostokohtaisesti. Rajoitukset ovat samat kuin komennossa jo tunnetuilla rajoituksilla:
mtree show compression
Yllä olevien tulostustiedostojen tietojen hyödyntäminen koostuu numeeristen tietojen käsittelystä käyttäjän tavoitteisiin sopivalla tavalla. Muutamia esimerkkejä käyttötapauksista voivat olla:
  • Gcompin ja lcompin määrittäminen tiettyä polkua vastaaville tiedostoille (jos polku voidaan yhdistää johonkin tiettyyn varmuuskopiopalvelimeen, asiakkaaseen, käytäntöön, työhön jne.)
  • Sen laskeminen, kuinka paljon dataa (pre-comp) tallennetaan tiettyyn sijaintiin, joka on vanhempi kuin tietty aika (orpojen määrittämiseksi tai sellaisten varmuuskopiointisovellusten ongelmien vianmääritykseksi, jotka eivät vanhene myöhässä olevat varmuuskopiot)
  • Mikä tahansa muu tilastotyyppi, jolle voi olla käyttöä
Saada yhdet ohjeet ja korvata sfs_dump -c vaihtoehto Uudemmissa versioissa suosituksemme on muuntaa tulostetiedot yllä olevaan CSV-muotoon ja käyttää sitten tiedostoa CSV-muodossa jatkokäsittelyä varten, mutta taidoistasi riippuen voit käsitellä muun kuin CSV-tulosteen suoraan.

Muun kuin CSV-tiedoston muuntaminen sfs_dump Tuotos yhdeksi, joka on identtinen minkä kanssa sfs_dump -c olisi tulostanut, voit käyttää seuraavaa Linux-komentoriviä:
# cat sfs-dump-noCSV.txt | grep ^/ | awk '
BEGIN {print "name\tmtime\tfileid\tsize\tseg_bytes\tseg_count\tredun_seg_count\tpre_lc_size\tpost_lc_size"}
{
    colon_index = index($0, ":")
    filename = substr($0, 1, colon_index - 1)
    gsub(/^[[:space:]]+|[[:space:]]+$/, "", filename)
    n = split(substr($0, colon_index + 1), fields, " ")
    print filename "\t" fields[2] "\t" fields[4] "\t" fields[6] "\t" fields[10] "\t" fields[12] "\t" fields[14] "\t" fields[17] "\t" fields[19]
}' > sfs-dump-CSV.csv
 
Huomautus: Yllä oleva komento ohittaa kaiken syöttötiedoston (sfs-dump-noCSV.txt), joka ei ala vinoviivalla, koska vain "/data"-alkuiset rivit sisältävät tiedoston tiedot käsittelyä varten. Tulostiedostojen otsikkona on ensimmäinen rivi, ja niissä käytetään taulukkomerkkiä (\t) kenttien erottimena.

Kaikki tämän kohdan jälkeen tarjotaan käyttäjille sellaisenaan. Dell ei anna mitään takuita tai velvoitteita alla olevien ohjeiden noudattamisesta. Älykkyyden hankkiminen tiedostojen luettelointitiedoista on käyttäjän tehtävä, ja miten se saavutetaan, riippuu täysin työkalusarjasta, jota käytetään tietojen louhintaan tiedostojen vedostulosteessa, saavutettavasta tavoitteesta ja käyttäjän omasta asiantuntemuksesta tietojen käsittelyssä yllä kuvatusta komentotuloksesta. Yksi käyttäjä voi halutessaan käyttää Linuxin komentoriviprosessointia tekstitiedostoille joidenkin aggregaattien dumppaamiseen, toiset voivat halutessaan tuottaa syötteen kartoitusarvoihin käyttämällä "gnuplotia", kun taas suurimman osan käyttäjistä uskotaan etsivän yksinkertaisempaa (mutta rajoitettua) lähestymistapaa kootakseen laskentataulukon CSV-tiedostosta analysointia varten.

Dell pyrkii varmistamaan, että alla olevat ohjeet ovat oikeita, toimivia ja hyödyllisiä käyttäjille, mutta emme voi taata, että ne toimivat sinulle, emmekä tarjoa niihin tukea, koska ne ovat tuen ulkopuolella.


CSV-muotoisen tiedoston tuominen sfs_dump Tulostaminen laskentataulukkoon (esimerkki Excelistä):

Kun tiedoston tietoluettelon CSV-versio on saatavilla, yksi tapa saada tiedoista älykkyyttä on ladata tiedot taulukkolaskentaohjelmistoon. Microsoft Exceliä käytetään esimerkkinä, vaikka ohjeiden tulisi olla samanlaisia muille ohjelmistoille. Jos haluat tuoda CSV-tekstitiedoston Exceliin CSV-tiedostona, toimi seuraavasti:
  1. Avaa Excel ja luo uusi tyhjä laskentataulukko
  2. Siirry yläreunan Data-valikkoon ja napsauta sitten kuvaketta nimeltä Tekstistä/CSV:stä
  3. Etsi CSV-muodossa olevat tiedostotiedot valintaikkunan avulla (sfs-dump-CSV.csv kuten muuntokoodiesimerkissä muusta kuin CSV-muodosta), valitse se ja klikkaa Tuo
  4. Jos syöttötiedoston muoto on oikea ja Excel voisi piirtää muodon ensimmäisistä 200 rivistä (minkä sen pitäisi), valintaikkunan pitäisi näyttää luotavan laskentataulukon esikatselu. Tarkista tiedot ja varmista, että ne näyttävät hyvältä, mukaan lukien se, että ensimmäinen rivi näkyy otsikoina
  5. Jos kaikki näyttää hyvältä esikatselun kanssa, napsauta valintaikkunan alareunassa olevaa Lataa-painiketta, jolloin uusi laskentataulukko esitetään sinulle mukavalla muotoilulla ja kenttien otsikot muuttuvat haku- ja suodatinkäyttöisiksi.
Laskentataulukon tiedot ovat jo hyödyllisiä, voit esimerkiksi käyttää numerosuodatinta numeerisiin kenttiin, kuten kokoon (näyttää vain tietyn koon ylittävät tiedostot) tai käyttää tekstisuodatintanimikenttään niin, että vain Data Domain -tiedoston tietojen tulosteen tiedostot, jotka vastaavat tiettyä mallia (vain ne, jotka alkavat tietyn MTreen polusta), näytetään. ja tehdä muita johdettuja laskelmia näistä tiedoista.

Oikein tuodun Excel-laskentataulukon tulisi sisältää tietoja sarakkeissa A–I. Jos tiedot ovat vain sarakkeessa A, mutta ne ulottuvat näytön poikki, sulje Excel ja yritä yllä olevia vaiheita 1–5 uudelleen.

Laskettujen lisäkenttien lisääminen

Laskentataulukkoa voidaan laajentaa niin monella lasketulla kentällä kuin käyttäjä tarvitsee. Mielenkiintoinen lisättävä kenttä on ihmisen luettavissa oleva päivämäärä ja aika, jotka vastaavat tiedostojen mtime-aikaa (viimeinen muokkausaika, yleensä aika, jolloin se kirjoitettiin DD: lle). Lisäksi joidenkin tiedostokohtaisten pakkausarvojen laskeminen ja näyttäminen voi olla hyödyllistä sen mukaan, mihin tietoja käytetään. Uudet sarakkeet täytetään automaattisesti Excel-kaavojen avulla alla kuvatulla tavalla.

Aikaleiman muuntaminen:

UNIXin kaltaisen aikaleiman muuntaminen ihmisen luettavissa olevaksi päivämääräksi ja kellonajaksi:
  1. Napsauta solua J2 hiiren kakkospainikkeella ja valitse "Muotoile solut"
  2. Valitse vasemmalla olevasta "Luokka" -luettelosta "Mukautettu".
  3. Jos sitä ei vielä ole, luo muoto ihmisen luettavissa olevalle päivämäärä-aika-muodolle (esimerkin lopussa on EST-merkkijono. Voit korvata sen tekstimuotoisella aikavyöhykemäärityksellä tai poistaa sanan EST kokonaan, jos et ole kiinnostunut): vv-kk-pp hh:mm:ss "EST"
  4. Kun olet valmis, valitse OK. Nyt solulla J2 on mukautettu muoto tiedoille.
  5. Lisää seuraava kaava soluun J2. Korvaa kaavassa (-6*3600) oikealla aikavyöhyke-erolla, joka vastaa UTC:tä Data Domainissa määritetylle aikavyöhykkeelle sfs-dump-tietojen hakuhetkellä. Esimerkiksi Itä-Yhdysvaltain aika on 6 tuntia jäljessä UTC: stä kesällä, joten "-6" täällä.
Jos et ole kiinnostunut tällaisesta tarkasta ajan säädöstä, voit käyttää sen sijaan kaavan lyhennettyä muotoa. Helpoin tapa saada kaava lisättyä ja välttää päivämäärän ja kellonajan muodon korvaaminen on kopioida jompikumpi alla olevista versioista ja liittää soluun J2, kun olet kirjoittanut soluun "yhtä suuri" -merkin = aloittaaksesi solun muokkaamisen:
(((B2/1000000000+(-6*3600))/86400)+25569)
(((B2/1000000000)/86400)+25569)
Huomautus: Jos liität tekstiä J2:een asettamatta solua ensin muokkaustilaan (niin sanotusti), korvaat solun muodon. Vaihtoehtoisesti voit lisätä kaavan eteen "=", kopioida koko tekstin ja napsauttaa solua J2 hiiren kakkospainikkeella Liitä määräten, valita sitten tekstinä ja napsauttaa sitten OK. Sen pitäisi saada sama vaikutus. Jos tämä tehtiin hyvin, Excel tekee automaattisesti muutamia asioita:
  • Liitä kaava soluun J2 ja myös laskentataulukon muiden rivien jokaiseen soluun 
  • Laske koko laskentataulukon kaava ja näytä päivämäärä- ja aika-arvo määritetyssä muodossa
  • Muotoile sarake kauniisti olemassa oleviksi ja määritä otsikko päivämääräksi ja mahdollisuus käyttää päivämääräsuodattimia, ainoa asia, joka sinun on tehtävä, on asettaa sarakkeelle oikea nimi (päivämäärä)

Pakkaustiedot

Voit lisätä sarakkeita tiedostokohtaisille pakkaustiedoille edellä kuvatulla tavalla. Tällä kertaa näytetään kaavat, joissa on "=", joten sinun on kopioitava koko teksti ja liitettävä määräten tekstinä:
  • Kopioi seuraava kaava ja liitä soluun K2 liittämällä määräten tekstimuodossa sarake tiedostokohtaista deduplikointia eli gcomp:ia varten:
    =IF(H2=0,0,D2/H2)
  • Kopioi seuraava kaava ja liitä soluun L2 Liitä määräten tekstimuodossa luodaksesi sarakkeen tiedostokohtaista paikallista pakkausta eli lcomp-pakkausta varten:
    =IF(I2=0,0,H2/I2)
  • Kopioi seuraava kaava ja liitä soluun M2 liittämällä teksti määräten, jotta voit luoda sarakkeen tiedostokohtaiselle tiedostojen kokonaispakkaussuhteelle:
    =K2*L2
Anna uusille sarakkeille erisnimi. Jos haluat, että pakkausarvojen muoto on toinen (esimerkiksi desimaalien määrän rajoittamiseksi), tee päivämäärän ja kellonajan esimerkissä ja määritä solun numeerinen muotoilu etukäteen ennen kaavan liittämistä.

Muista pitää työsi turvassa menemällä Tiedosto-valikkoon ja tekemällä. Tallenna nimellä, varmistaen, että tallennetun tiedoston tyypiksi on määritetty Excel-työkirja (*.xlsx), jotta muotoilu ja suodatus säilyvät.

Kun kuvatut toimet on suoritettu, laskentataulukko sisältää seuraavat (relevantit) sarakkeet:
  • A sisältää tiedostonimen
  • B sisältää päivämääräleiman (UNIX-epookissa nanosekunteina), jolloin tiedosto on viimeksi kirjoitettu
  • D on tiedoston alkuperäinen koko
  • H on koko globaalin pakkauksen jälkeen
  • Olen koko globaalin ja paikallisen pakkauksen jälkeen
  • J sisältää päivämääräleiman, jolloin tiedosto on viimeksi kirjoitettu, ihmisen luettavissa olevassa muodossa
  • K sisältää tiedoston yleisen pakkauksen (deduplikointi)
  • L sisältää tiedoston paikallisen pakkauksen
  • M sisältää tiedoston kokonaispakkausasteen
Kaikki tiedostokoot ovat tavuina.
Excelin avulla voit nyt suodattaa tai lajitella tarpeen mukaan tietojen raportointia varten.
  • Jos esimerkiksi haluat näyttää vain MTree /data/col1/backup -tiedostossa olevat yli 30 päivää vanhat tiedostot:
  1. Napsauta alanuolta Nimi-otsikossa, valitse Tekstisuodattimet, sitten Alkaa ja kirjoita /data/col1/backup/ laatikkoon. Lopussa oleva kauttaviiva on tärkeä. Valitse OK
  2. Napsauta Viimeisin kirjoitettu päivämäärä -otsikon alanuolta, valitse Päivämääräsuodattimet ja sitten Ennen. Valitse valintaikkunan oikealla puolella olevalla päivämäärävalitsimella päivämäärä 30 päivää sitten. Valitse OK.
Alareunassa oleva tilarivi näyttää, kuinka monta riviä vastaa tätä valintaa.

Additional Information

Vedostiedoston sijaintikomento (aktiivinen ja pilvi)

On olemassa tapa tyhjentää luettelo tiedostoista, jotka osoittavat, mitkä ovat aktiivisia ja mitkä missä tahansa pilviyksikössä, mikä on:
#### For the DD FS as a whole
# filesys report generate file-location

#### For an individual MTree or subdirectory
# filesys report generate file-location path /data/col1/test

Kummassakin tapauksessa tuloste on seuraavan tyyppinen:

-------------------------      ----------------------      ----------------------      ---------------------------
File Name                      Location(Unit Name)         Size                        Placement Time
-------------------------      ----------------------      ----------------------      ---------------------------
/data/col1/test/file1.bin                  Cloud-Unit                  200.00 GiB      Sat Mar  5 13:24:10 2022
/data/col1/test/file2.bin                      Active                   10.00 TiB      Sat May 14 00:48:17 2022
-------------------------      ----------------------      ----------------------      ---------------------------
Yllä oleva komento on kuitenkin yleensä riittämätön useimpiin tarkoituksiin, koska esimerkiksi koko on ihmisen luettavissa olevissa yksiköissä (eikä tavuina tai MiB: nä tai muuna asetettuna kertoimena) ja sijoitusaika vastaa aikaa, jolloin varmuuskopiot tehtiin Data Domainiin aktiivisille tiedostoille, mutta se ei ole pilvessä oleville tiedostoille ("Pilvipalvelussa olevien tiedostojen sijoitusaika on päivämäärä ja kellonaika, jolloin tiedosto siirrettiin pilviyksikköön).

Huomaa myös, että alla oleva komento (ja komentosarja muunnetaan muusta kuin CSV-tiedostosta) sfs_dump) tulostaa tiedot sarakkeisiin, jotka on erotettu toisistaan sarkaimilla. Tuloksessa olevat sarkainmerkit on tallennettava lokitiedostoon, muuten edellä kuvatut vaiheet CSV-tiedoston tuomiseksi Exceliin eivät pysty erottamaan kenttiä oikein.
sfs_dump -c
Annetut ohjeet edellyttävät kohtuullista Excel-tuntemusta, mutta ne voidaan kääntää muihin taulukkolaskentaohjelmiin.

Excelin nykyaikaiset versiot sallivat useita rivejä, mutta muista, että jokainen sfs_dump Käsiteltävä tulos on yksi rivi, joten Excelin on pystyttävä käsittelemään ja päivittämään nopeasti laskentataulukko, jossa on yhtä monta riviä kuin tietojoukon tiedostoja. Kova raja on hieman yli 1 miljoona riviä, mutta vaikka tiedostojen määrä olisi selvästi sen alapuolella, Excel ei ehkä ole sopiva työhön (liian hidas).

Jos sfs_dump tulosteessa on liian monta tiedostoa Excel-versiollesi tai haluat käsitellä tietoja pienemmissä bitteissä suorituskyvyn parantamiseksi, voit yrittää suorittaa menettelyn kerran kullekin MTreelle, joten sinulla on useita laskentataulukoita järjestelmälle.

Jopa yksi MTree sfs_dump tuloste voi olla liian suuri Excelille, jolloin voit käyttää split Linux -komentoa (tai mitä tahansa muuta vastaavaa työkalua suuren tekstitiedoston online-päätyrajojen jakamiseen), jotta sinulla on useita pienempiä CSV-tiedostoja käsiteltäväksi yksi kerrallaan, esimerkiksi:
# split  -b <size> <filename> <new filename prefix>  (splits by file size)
# split  -l <size> <filename> <new filename prefix>  (splits by number of lines)
# split  -n <size> <filename> <new filename prefix>  (splits by number of pieces)

Voit esimerkiksi jakaa syötetyn tekstitiedoston 200 MiB:n paloiksi siten, että osat nimetään alkamaan:

"sfs_dump.out.split"

Suorita sitten:

# split -b 200M sfs_dump.out sfs_dump.out.split


Käytettävä komentosarja "filesys sfs-dump" tiedostotietojen koko FS-dumppauksen osalta

Niissä muutamissa versioissa, joissa ei voitu tyhjentää tiedostotietoja CSV-muodossa, Dell toimittaa jäljempänä esitetyn komentosarjan sellaisenaan (ilman takeita) käyttäjille samanlaisen tuloksen saavuttamiseksi käsittelemällä muita kuin CSV-tiedostoja sfs_dump tuotos.

Koska julkaisut, jotka eivät tue CSV-tulostusta, ovat myös niitä, jotka eivät salli kaikkien FS: n tiedostojen tietojen tyhjentämistä kokonaisuutena, komentosarja käyttää SSH: ta yhteyden muodostamiseen kohdetietoalueeseen MTree-luettelon toistamiseksi suorittamalla tiedostovedoksen yksi MTree kerrallaan kaikkien MTree-tiedostojen luettelon keräämiseksi, muunnettava sitten jatkokäsittelyä varten sopivaan CSV-muotoon:
#!/bin/bash

#### WARNING
####     This script is provided to you by Dell Technologies with NO GUARANTEE, as best-effort sample code to get a full FS sfs-dump collected
####     for DDOS releases which do not support "se sfs-dump", or as an alternative to it, in releases which support "filesys fs-dump"
####     That this script does not work for you, or if you need help setting it up, extending it, or resolving any issues, is not entitled to support
####     This script is not part of Dell PowerProtect / Data Domain, and hence it is not supported

#### Replace values below to suit your needs
USERNAME="sysadmin"
DD_HOSTNAME="10.60.36.172"
#### NO CHANGES NEEDED BEYOND THIS POINT

clear
echo "Script collects a full FS sfs-dump from \"${DD_HOSTNAME}\", using the command \"filesys sfs-dump\", one MTree at a time"
echo "    * Script has to be configured by settting the \"USERNAME\" and \"DD_HOSTNAME\" variables within the top of the script"
echo "    * Script expects passwordless SSH connection as \"USERNAME\" to the \"DD_HOSTNAME\" configured"
echo "    * To configure passwordless SSH login to a DataDomain, check KB at https://www.dell.com/support/kbdoc/000004033 "
echo "    * Test passwordless login is configured and working prior to going ahead with this script"
echo "    * If passwordless login is not configured, script will ask for the \"${USERNAME}\" password "
echo "          - Once for getting the MTree list"
echo "          - And once for each one of the MTrees in \"${DD_HOSTNAME}\" "
echo
echo -n "Are you sure you want to continue? (y/n) : "
read -n 1 answer
echo
if [ "${answer}" = "y" ]; then
    echo "Going ahead with the script."
    echo
else
    echo "Stopping script now. Re-run when passwordless login to \"${DD_HOSTNAME}\" as \"${USERNAME}\" works. Bye."
    exit 1
fi

echo -n "1/6 : Collecting list of MTrees from DD..."
ssh ${USERNAME}@${DD_HOSTNAME} "mtree list" 2>/dev/null | grep ^/ | awk '{print $(NF-3)}' > mtree-list.txt
echo "Done."

n_mtrees=$( wc -l mtree-list.txt | cut -d" "  -f1 )
echo -n "2/6 : Collecting per-Mtree sfs-dump information for ${n_mtrees} MTrees ..."
for mtree in `cat mtree-list.txt`; do
    name=$(echo $mtree | cut -d/ -f4)
    ssh ${USERNAME}@${DD_HOSTNAME} "filesys sfs-dump mtree ${mtree}" 2>/dev/null | grep ^/ > sfs-dump-${name}.txt
    echo -n "."
done
echo "Done."

echo -n "3/6 : Putting all the files together..."
for file in `ls sfs-dump-*.txt`; do 
    if [ -s "${file}" ]; then cat ${file} >> sfs-dump-noCSV.txt; fi
done
echo "Done."

echo -n "4/6 : Converting sfs-dump output to CSV format..."
cat sfs-dump-noCSV.txt | grep ^/ | grep -v ^$ | awk '
BEGIN {print "name\tmtime\tfileid\tsize\tseg_bytes\tseg_count\tredun_seg_count\tpre_lc_size\tpost_lc_size"}
{
    colon_index = index($0, ":")
    filename = substr($0, 1, colon_index - 1)
    gsub(/^[[:space:]]+|[[:space:]]+$/, "", filename)
    n = split(substr($0, colon_index + 1), fields, " ")
    print filename "\t" fields[2] "\t" fields[4] "\t" fields[6] "\t" fields[10] "\t" fields[12] "\t" fields[14] "\t" fields[17] "\t" fields[19]
}' > sfs-dump-CSV.csv
echo "Done."

echo -n "5/6 : Cleaning up..."
for mtree in `cat mtree-list.txt`; do name=$(echo $mtree | cut -d/ -f4); rm -f sfs-dump-${name}.txt ; done
rm sfs-dump-noCSV.txt
rm mtree-list.txt
echo "Done."


echo -n "6/6 : Summary"
echo
n_files=$( wc -l sfs-dump-CSV.csv | cut -d" "  -f1 )
echo
echo "Collecting whole FS sfs-dump data from ${HOSTNAME} completed"
echo "File includes output for ${n_mtrees} MTrees, with a combined $(( ${n_files} - 1 )) files across Active and Cloud Tiers (if applicable)"
echo "Start of file shown below for your convenience :"
echo "===================="
head -5 sfs-dump-CSV.csv
echo "===================="
echo
echo "Done."

exit 0

Komentosarja, joka yhdistää muiden kuin CSV-tiedostojen "sfs-dump" ja "filesys report generate file-location" tulokset CSV-tiedostoon, joka sisältää kaikki samat tiedot kuin yllä oleva komentosarja sekä tiedostotaso- ja sijoitusaikatiedot

Dell toimittaa seuraavan komentosarjan sellaisenaan (ilman takuuta) käyttäjille keinona toivottavasti lisätä sfs_dump ja filesys-raportti luo tiedoston sijaintikomennot yllä. Käyttäjä voi suodattaa tiedostoja tason (aktiivinen tai mikä tahansa kahdesta ylöspäin määritetystä pilviyksiköstä) perusteella saadakseen tarkemman käsityksen tiedostojen jakautumisesta tasoittain lisäämällä tason sijainti- ja sijoitusaikatiedot tulostettavan CSV-tiedoston jokaiseen merkintään.

Skriptit odottavat sfs-dumppia (ei sfs_dump -c) tulos ensimmäisenä parametrina ja filesys-raportti luo tiedoston sijaintituloksen toisena. Tulos kirjoitetaan kovakoodatulle tiedostonimelle "sfs-dump-output-tiers.csv", jota voidaan muuttaa itse komentosarjan sisällä.

Tuloste voidaan käsitellä Excelillä samalla tavalla kuin edellä on selitetty.
#!/bin/bash

#### WARNING
####     This script is provided to you by Dell Technologies with NO GUARANTEE, as best-effort sample code to match the output from commands :
####       * sfs-dump (in non CSV format)
####       * filesys report generate file-location
####     So that a new CSV with the file paths appearing on both is created for all the data in sfs-dump file with the added tier and placement time information from location report
####
####     This script is not part of Dell PowerProtect / Data Domain, and hence it is not supported
####
####     Usage : extend-sfs-dump-with-tier.sh sfs-dump-output.csv file-location-output.log
####     Output : static "sfs-dump-output-tiers.csv" file name (may be changed below)

#### Replace values below to suit your needs
OUTPUT_FILENAME="sfs-dump-output-tiers.csv"
#### NO CHANGES NEEDED BEYOND THIS POINT

clear

if [ ! $# == 2 ]; then
    echo "Combine output from sfs-dump and tier location report into a CSV file with tier and placement time information"
    echo
    echo "Usage : $0 SFS-DUMP-OUTPUT-FILE    REPORT-FILE-LOCATION-FILE"
    echo "NOTE : SFS-DUMP-OUTPUT-FILE has to be in non-CSV format"
    exit 1
fi

INPUT_SFSDUMP="$1"
INPUT_LOCATION="$2"


echo -n "1/6 : Sanity checking input files..."
if [ ! -s "${INPUT_SFSDUMP}" ]; then
    echo "Input file ${INPUT_SFSDUMP} does not exist"
    exit 1
fi
if [ ! -s "${INPUT_LOCATION}" ]; then
    echo "Input file ${INPUT_LOCATION} does not exist"
    exit 1
fi
n_files_sfsdump=`grep ^/ ${INPUT_SFSDUMP} | wc -l`
n_files_location=`grep ^/ ${INPUT_LOCATION} | wc -l`
if [ ${n_files_sfsdump} -eq ${n_files_location} ]; then
    echo -n "both have the same amount of files (${n_files_location}). "
else
    echo -n "sfs-dump has ${n_files_sfsdump} files whereas location report has ${n_files_location} files, this may be normal if the difference is small. "
fi
echo "Done."


echo -n "2/6 : Sanitize \"file-location\" input..."
cat ${INPUT_LOCATION} | awk 'BEGIN {rejected="temp-location-rejected.log"; accepted="temp-location-accepted.log"} { if ( $0 ~ "Missing -unit") { gsub(/Missing -unit/, "Missing-Cloud-Unit", $0); print $0 > rejected } else { if ($0 ~ "^/" ) print $0 > accepted } }'
if [ -s "temp-location-rejected.log" ]; then
    REJECTS_EXIST="yes"
    echo -n "Some files in location report sit in unavailable or deleted cloud units, you may need to re-run this script after fixing the issue and gathering a new location report. "
    cat temp-location-rejected.log temp-location-accepted.log | sed -e 's/\t/:\t/' | sort > temp-location-report-sorted.log
    rm temp-location-rejected.log
else
    cat temp-location-accepted.log | sed -e 's/\t/:\t/' | sort > temp-location-report-sorted.log
    REJECTS_EXIST="no"
fi
rm temp-location-accepted.log
echo "Done."


echo -n "3/6 : Sanitize \"sfs-dump\" input..."
cat ${INPUT_SFSDUMP} | grep ^/ | sort > temp-sfs-dump.log
echo "Done."


echo -n "4/6 : Merging information for sfs-dump and location report..."
join -1 1 -2 1 temp-sfs-dump.log temp-location-report-sorted.log > temp-merged-information.log
rm temp-sfs-dump.log
rm temp-location-report-sorted.log
n_files_combined=`grep ^/ temp-merged-information.log | wc -l`
if [ ${n_files_combined} -eq 0 ]; then
    echo "No files matched from input files. sfs-dump output must NOT be in CSV format. Exiting."
    rm temp-merged-information.log
    exit 1
fi
echo -n "Input files matched on ${n_files_combined} files. "
echo "Done."


echo -n "5/6 : Converting merged sfs-dump / location-report output to CSV format..."
cat temp-merged-information.log | grep ^/ | grep -v ^$ | awk '
BEGIN {print "name\tmtime\tfileid\tsize\tseg_bytes\tseg_count\tredun_seg_count\tpre_lc_size\tpost_lc_size\ttier\tplacement_time"}
{
    colon_index = index($0, ":")
    filename = substr($0, 1, colon_index - 1)
    gsub(/^[[:space:]]+|[[:space:]]+$/, "", filename)
    n = split(substr($0, colon_index + 1), fields, " ")
    print filename "\t" fields[2] "\t" fields[4] "\t" fields[6] "\t" fields[10] "\t" fields[12] "\t" fields[14] "\t" fields[17] "\t" fields[19] "\t" fields[27] \
        "\t" fields[length(fields)-4] " " fields[length(fields)-3] " " fields[length(fields)-2] " " fields[length(fields)-1] " " fields[length(fields)]
}' > ${OUTPUT_FILENAME}
rm temp-merged-information.log
echo "Done."


echo -n "6/6 : Summary"
echo
echo
echo "Merging information from sfs-dump (${INPUT_SFSDUMP}) and location-report ${INPUT_LOCATION} output completed."
echo "Output file (${OUTPUT_FILENAME}) includes information for a total ${n_files_combined} files, out of ${n_files_sfsdump} in input sfs-dump, and ${n_files_location} in input location report."
if [ "${REJECTS_EXIST}" == "yes" ]; then
    echo "Note there are some files in disconnected or deleted cloud units, for which the \"tier\" field has been replaced with \"Missing-Cloud-Unit\"."
fi
echo
echo "Start of file shown below for your convenience :"
echo "===================="
head -5 ${OUTPUT_FILENAME}
echo "===================="
echo
echo "You may follow the instructions in https://www.dell.com/support/kbdoc/000081345 to process this CSV file in an spreadhseet"
echo
echo "Done."

exit 0


Veritas NetBackup -käyttäjille:

Veritas NetBackupin (NBU) tiedetään luovan Data Domainiin tiedostoja, joiden tiedostonimissä on kaksoispisteitä. Esimerkiksi seuraavat ovat kelvollisia NBU-tiedostonimipolkuja, kun Data Domainia käytetään NBU:n taustatallennustilana:
/data/col1/MTREE_NAME/POLICY-NAME_1400502741_C1_F1:1400502741:VM_PRD-02:4:1::
/data/col1/MTREE_NAME/POLICY-NAME_1400502741_C1_F2:1400502741:VM_PRD-02:4:1::
/data/col1/MTREE_NAME/POLICY-NAME_1400502741_C1_HDR:1400502741:VM_PRD-02:4:1::
Tämä aiheuttaa ongelman yllä olevien esimerkkikomentosarjojen kanssa, koska kaksoispistettä käytetään erottimena sfs_dump komennon tulos, ja yllä olevien komentosarjojen suorittaminen antaisi virheellisiä tuloksia.

Tällaisissa tapauksissa komentosarjaa on muokattava esimerkiksi alla:
--- iterate-dd-for-fs-sfs-dump.sh       2024-01-23 06:32:16.521409000 -0500
+++ iterate-dd-for-fs-sfs-dump-NBU.sh   2024-02-27 03:26:42.808246000 -0500
@@ -55,11 +55,11 @@
 cat sfs-dump-noCSV.txt | grep ^/ | grep -v ^$ | awk '
 BEGIN {print "name\tmtime\tfileid\tsize\tseg_bytes\tseg_count\tredun_seg_count\tpre_lc_size\tpost_lc_size"}
 {
-    colon_index = index($0, ":")
-    filename = substr($0, 1, colon_index - 1)
+    colon_index = index($0, ":::")
+    filename = substr($0, 1, colon_index + 1)
     gsub(/^[[:space:]]+|[[:space:]]+$/, "", filename)
     n = split(substr($0, colon_index + 1), fields, " ")
-    print filename "\t" fields[2] "\t" fields[4] "\t" fields[6] "\t" fields[10] "\t" fields[12] "\t" fields[14] "\t" fields[17] "\t" fields[19]
+    print filename "\t" fields[3] "\t" fields[5] "\t" fields[7] "\t" fields[11] "\t" fields[13] "\t" fields[15] "\t" fields[18] "\t" fields[20] "\t"
 }' > sfs-dump-CSV.csv
 echo "Done."
Muutokset jaetaan, jotta komentosarja iteroidaan kaikkien Data Domainin MTree-versioiden kesken MTree-kohtaisesti sfs_dump tiedot, muutokset ovat samat toiselle komentosarjalle. Kuten itse komentosarjojen tapauksessa, Dell tarjoaa yllä olevat muutokset sinulle ilman takeita siinä toivossa, että niistä on hyötyä.

Affected Products

Data Domain

Products

Data Domain
Article Properties
Article Number: 000081345
Article Type: Solution
Last Modified: 27 May 2025
Version:  21
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.