Frage : Wie man die körperlichen u. logischen Störungen der Festplatte bestimmt?


 Wir haben einen Dell-Bediener, der 6 körperliche Antriebe hat.

Die Antriebe werden using RAID zusammengebaut

OS wird mit RAID 1 zusammengebaut
Daten-Antriebe werden mit RAID 5 zusammengebaut

Wir erhalten einige Laufwerkstörungen.


1.  Wie weiß ich, wenn die Plattenfehler mit körperlicher Scheibe oder logischer Scheibe zusammenhängen?

2.  Körperliche Plattenfehler können örtlich festgelegt sein, irgendein, indem sie die Antriebe ersetzen, nachdem sie Daten unterstützt haben,
     jetzt wenn sein eine logische Störung, wie man sie regelt?

3.  Kann es einen logischen Plattenfehler wegen der unsachgemäßen RAID-Konfiguration der Antriebe geben?

4. Kann es einen logischen Plattenfehler wegen der Unverträglichkeit zwischen Hardware-Antrieben geben?

5.  Hardware ist 64-bit, Betriebssystem wir haben geladen ist Microsoft Windows 2008 (32-Bit).

6. Wie man bestimmt, wenn es irgendeine RAID-Korruption oder irgendwelche logischen Scheibenausgaben gibt?

Antwort : Wie man die körperlichen u. logischen Störungen der Festplatte bestimmt?

Gut innen

      {33, „B“}, {22, „C“}, {22, „D“}, {44, „E“}, {22, „D“}

Sie haben dass sehr doppelte Eintragung - sie einfach entfernen, nachdem sie sortiert, z.B.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
6:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
#include  
#include  
#include  
#include  
#include  
#include  
#include  

using namespace-Geschlechtskrankheit;

struct StudentAttempt
{
   int-Abstand;
   Schnur studentName;
};

bool cmpEntry (StudentAttempt gelassen, StudentAttempt Recht) {
   Rückholleft.distance == right.distance && left.studentName == right.studentName;
}
bool cmpAttempts (StudentAttempt gelassen, StudentAttempt Recht) {
   wenn (left.distance < right="">u. v, const StudentAttempt& sa, stringstream& SS) {

   Vektor:: const_iterator I = v.begin ();
  size_t SZ = 0;
  bool bFirst = ausrichten en;

  während (i! = v.end ()) {

    wenn (isDistEqual (*i, sa)) {
    
      wenn (! bFirst) SS <>studentName;
      ++sz;
    }

    ++i; 
    bFirst = falsch;
  }

  Rückholsz;
}
 

int-Hauptleitung () {

   StudentAttempt throwDist [] = {
      {50, „A“},      {22, „A“},      {16, „B“},      {44, „C“},
      {33, „D“},      {34, „E“},      {22, „F“},      {21, „G“},
      {49, „A“},      {5, „B“},      {2, „C“},      {22, „A“},
      {33, „B“},      {22, „C“},      {22, „D“},      {44, „E“}, {22, „D“}
   };


   Satz behandelt;

   int len = sizeof (throwDist)/sizeof (throwDist [0]);

   Vektor dist (throwDist, throwDist + len);
   Vektor:: iterator es = dist.begin ();

   Art (dist.begin (), dist.end (), cmpAttempts);

   einzigartig (dist.begin (), dist.end (), cmpEntry); // entfernt identische Duplikate vom sortierten Vektor


   für (; es! = dist.end (); it++) {

      stringstream SS;

      Paare:: iterator, bool> p = handled.insert (it->distance);

      wenn (! p.second) fortfahren ren; // bereits behandelt

      wenn (0  < printAllEqual="">
           
Weitere Lösungen  
 
programming4us programming4us