C'è un modo per ripristinare `httpd.conf` in CentOS alla versione originale / predefinita?


8

Stavo imparando l'installazione del server creando un server Web in VMware, non so a quali modifiche ho apportato httpd.conf.

C'è un modo per ripristinare tutte le configurazioni httpd.confpredefinite?

Comando utilizzato:

  1. vi /etc/httpd/conf/httpd.conf
  2. Aggiornato ServerNamealocalhost
  3. service httpd restart
  4. chkconfig httpd on
  5. service httpd restart

Ripristinare dalla copia di backup effettuata prima della modifica?
DavidPostill

1
Sembra che potrebbe non avere un backup. Quello che potresti fare è copiare quello httpd.confche hai ora e fare il backup. Elimina l'originale ed esegui sudo apt-get reinstall httpd. Torna indietro e vedi se ne ha creato uno nuovo .conf, in tal caso dovrebbe essere corretto.
xR34P3Rx

@DavidPostill Perché preoccuparsi di ripristinare un file predefinito dal backup? Basta reinstallare da RPM e tutto dovrebbe andare bene. Risposta più completa pubblicata.
Jake Gould

Risposte:


21

Risposta più breve:

Puoi semplicemente cancellare o spostare il httpd.conffile che hai modificato e quindi eseguire il comando seguente e verrà reinstallato:

yum reinstall httpd

Risposta più lunga:

Ma se vuoi essere un po 'più metodico al riguardo, potresti seguire le idee e i concetti mostrati in questa pagina .

Innanzitutto, controlla quale pacchetto è installato httpd.confeseguendo questo comando:

rpm -qf /etc/httpd/conf/httpd.conf

Ovviamente ciò mostrerebbe che il httpdpacchetto lo ha installato, ma fornirà anche ulteriori informazioni sulla versione. Quindi ora puoi verificare cosa è stato modificato tra l'installazione iniziale da RPM a quando lo hai modificato verificandolo con RPM in questo modo:

rpm -V httpd

L'output molto probabilmente ti mostrerà /etc/httpd/conf/httpd.confpreceduto da alcune informazioni di verifica che dovrebbero apparire così:

S.5....T.  c /etc/httpd/conf/httpd.conf

Ciò può essere tradotto quando l' Size è stata modificata, il 5checksum MD è diverso e l'immagine Tè diversa. Maggiori dettagli sul significato di questi codici di una lettera sono riportati di seguito:

S file Size differs
M Mode differs (includes permissions and file type)
5 MD5 sum differs
D Device major/minor number mismatch
L readLink(2) path mismatch
U User ownership differs
G Group ownership differs
T mTime differs
P caPabilities differ

Ma il lungo e breve è che sarai in grado di vedere esattamente quali file sono httpdstati modificati dal pacchetto e per quale motivo. Quale potrebbe essere utile sapere se ti è capitato di aggiungere o modificare qualsiasi file diverso da quello httpd.confe ti è sfuggito di mente.

Ora potresti voler rimuovere la corrente in httpd.confquesto modo:

sudo rm /etc/httpd/conf/httpd.conf

Ma consiglierei di conservarne una copia come riferimento in questo modo:

sudo mv /etc/httpd/conf/httpd.conf ~/httpd.conf.modified

Questo si sposterà httpd.confnella tua home directory e la rinominerebbe httpd.conf.modified.

Infine, puoi reinstallare in httpdquesto modo:

yum reinstall httpd

E il tuo httpd.conffile di configurazione di Apache dovrebbe tornare al suo stato RPM originale, non toccato.


1

La risposta di @ JakeGould è ottima ma per essere più espliciti:

yum reinstall httpdripristinerà solo i file mancanti , non le configurazioni modificate. Spostando / rimuovendo prima il vecchio file di configurazione, ciò ha permesso yum reinstalldi ripristinare il file.

In alternativa, potresti usare il metodo mostrato qui: Come forzare `yum reinstall` per sovrascrivere i file modificati in una sotto-directory` / var`?


Questo è davvero importante, grazie.
Laif,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.