Menyalin pengguna dan kata sandi Linux ke server baru

26

Saya bermigrasi melalui server ke perangkat keras baru. Bagian dari sistem akan dibangun kembali. File dan direktori apa yang diperlukan untuk disalin sehingga nama pengguna, kata sandi, grup, kepemilikan file dan izin file tetap utuh?

Ubuntu 12,04 LTS.

Mikko Ohtamaa
sumber

Jawaban:

39

Dimulai dari

/etc/passwd - user account information less the encrypted passwords 
/etc/shadow - contains encrypted passwords 
/etc/group - user group information 
/etc/gshadow - - group encrypted passwords

Pastikan untuk memastikan bahwa izin pada file juga benar

user9517 mendukung GoFundMonica
sumber
5
+1 dari saya. Saya juga bertanya-tanya tentang /home; umumnya, kunci ssh tinggal di direktori home, jadi ~/.sshsetidaknya dapat dianggap sebagai bagian dari infrastruktur otentikasi.
MadHatter mendukung Monica
2
@ MadHatter: Sebenarnya saya agak berasumsi bahwa OP akan tahu bahwa mereka perlu menyalin direktori home pengguna tetapi saya kira Anda tidak pernah tahu di sini di SF :)
user9517 mendukung GoFundMonica
2
Jangan khawatir, penulis tahu.
Mikko Ohtamaa
2
Meskipun hal di atas akan berhasil, Anda juga harus benar-benar menyalin gshadow.
symcbean
6
Poin penting: ini mengasumsikan server dengan otentikasi berbasis file saja. Untuk memigrasi server yang menggunakan misalnya LDAP atau NIS file-file ini tidak akan cukup, terutama jika server otentikasi berada di sistem yang sama. Subsistem lain (misalnya Samba, SQL) mungkin juga memiliki database autentikasi sendiri.
thkala
13

Saya sudah melakukan ini dengan Gentoo Linux dan menyalin:

  • /etc/passwd
  • /etc/shadow
  • /etc/group
  • /etc/gshadow

itu dia.

Jika file di komputer lain memiliki ID pemilik yang berbeda, Anda dapat mengubahnya dengan yang di / etc / group dan / etc / passwd dan kemudian Anda memiliki izin efektif yang dipulihkan.

vantome
sumber
11

Berhati-hatilah agar Anda tidak menghapus atau memberi nomor baru pada akun sistem saat menyalin file yang disebutkan dalam jawaban lain. Layanan sistem biasanya tidak memiliki id pengguna tetap, dan jika Anda telah menginstal paket dalam urutan yang berbeda dengan mesin asli (yang sangat mungkin jika berumur panjang), maka mereka akan berakhir dalam urutan yang berbeda . Saya cenderung menyalin file-file itu ke suatu tempat seperti / root / diselamatkan dari sistem lama dan mengeditnya secara manual untuk hanya menyalin akun non-sistem. (Mungkin ada alat untuk ini, tapi saya tidak cenderung untuk menyalin sistem seperti ini cukup sering untuk menjamin menyelidikinya.)

Paul Gear
sumber