Xóa người dùng _postgres một cách an toàn và hoàn toàn khỏi Mac / etc / passwd


0

Tôi đang cố gắng cài đặt lại PostgreSQL vì tôi không thể đăng nhập vào nó. Tôi nhận ra rằng tôi đã cài đặt nó từ lâu bằng cách sử dụng cả trình cài đặt từ trang web postgres và brew install postgres. Tôi đã gỡ cài đặt cả hai thứ này ngay bây giờ:

Tuy nhiên tôi có một _postgres người dùng còn lại trong /etc/passwd:

$ grep post /etc/passwd
_postgres:*:216:216:PostgreSQL Server:/var/empty:/usr/bin/false

Không có userdel hoặc là usermod các lệnh có sẵn trên Mac (10.11 El Capitan) và thay thế có vẻ quá phức tạp (nhưng có lẽ nhất thiết phải như vậy?)

Câu trả lời:


2

Sử dụng lệnh brew remove postgresql. Hoặc điều tra các kịch bản gỡ cài đặt bằng tay.

Chỉnh sửa: Bạn đã thử điều này?

  • Thoát Postgres.app & amp; kéo nó vào Thùng rác

  • Xóa thư mục dữ liệu (vị trí mặc định: ~ / Thư viện / Hỗ trợ ứng dụng / Postgres)

  • Xóa tùy chọn cho Postgres.app bằng cách thực hiện lệnh sau: mặc định xóa com.postgresapp.Postgres2

  • Xóa cấu hình $ PATH cho các công cụ dòng lệnh (tùy chọn): sudo rm /etc/paths.d/postgresapp

Chỉnh sửa 2: Để xóa người dùng khỏi dòng lệnh, khởi động vào chế độ người dùng. Giữ Command-s khi khởi động. Kiểm tra hệ thống tập tin: / sbin / fsck -fy Nếu không có lỗi nào khác, hãy gắn hệ thống tập tin: / sbin / mount -uw / Khởi động dịch vụ thư mục: tải launchctl / System / L Library / LaunchDaemons / com.apple.DirectoryService.plist Lưu ý rằng chế độ người dùng đơn được cho là sử dụng com.apple.DirectoryServiceLocal.plist, nhưng điều đó không hiệu quả - điều này đã làm. Tìm những nhóm người dùng thuộc về: dscl. -list / nhóm GroupMembership | tên người dùng grep - lặp lại cho mỗi nhóm trừ nhóm riêng của người dùng. Xóa nhóm tương ứng với tên người dùng: dscl. xóa / nhóm / tên người dùng (điều này có thể không cần thiết - bạn có thể gặp lỗi mà nhóm không tồn tại; bạn có thể bỏ qua và tiếp tục). Xóa tài khoản người dùng: dscl. xóa / người dùng / tên người dùng Tại thời điểm này, bạn có thể muốn xóa hoặc lưu trữ thư mục người dùng trong / Người dùng. Bạn có thể muốn xóa tệp .AppleSetupDone trong / var / db để khiến Trình trợ lý thiết lập chạy khi khởi động tiếp theo. Nhập khởi động lại để khởi động lại hệ thống hoặc tắt máy -h ngay bây giờ để tắt hệ thống.


cảm ơn đã giúp đỡ. Tôi đã chỉnh sửa câu trả lời để làm rõ. Tôi đã chạy lệnh này
AJP

1
Ồ - tốt, có lẽ sau đó đọc các tập lệnh cài đặt / gỡ cài đặt sẽ không hữu ích.
user2497

1
Tôi đã từng loay hoay trong ruột của OSX, giả sử cấu hình passwd / nhóm bình thường. Ngay cả sau đó nó là một kinh nghiệm bẩn thỉu. Jobs chắc chắn đã tạo ra FreeBSD weirder.
user2497

1
Đó là thận trọng để thực hiện một bản sao lưu. Tôi không chắc tại sao họ thoát khỏi hệ thống passwd / nhóm cổ điển, nhưng điều đó chắc chắn là có thể bất kể sự xáo trộn này. Khi tôi chuyển sang sử dụng OSX, tôi cũng đã xóa tài khoản người dùng sẽ không bị xóa bằng vũ khí thông thường, nhưng điều đó đã lâu rồi.
user2497

1
IIRC, trên thiết lập đa biến, nếu bạn có thư mục Người dùng trên một đĩa khác, bạn phải gọi mount -uwa
user2497
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.