Làm cách nào để gắn thư mục cũ / home sau khi cài đặt lại hệ điều hành sạch?


8

Trước khi cài đặt lại Ubuntu 12.04 LTS, tôi đã ngắt kết nối thư mục / home. Sau khi cài đặt lại sạch, tôi đã tạo lại một số người dùng và cài đặt gói máy tính để bàn Ubuntu, sau đó gắn lại thư mục cũ / home. Tất cả các tài liệu đã được khôi phục và tôi không có vấn đề gì miễn là tôi đăng nhập bằng shell. Tuy nhiên, khi tôi cố gắng đăng nhập vào GUI, nó chỉ tải lại màn hình đăng nhập. Điều này đã xảy ra kể từ khi tôi đưa thư mục cũ / home vào /etc/fstab.

Cố gắng làm theo giải pháp ở đây , tôi tìm các tệp .Xmasterity trong mỗi /homethư mục của người dùng và nhận thấy một điều kỳ lạ, người dùng dường như đã bị lẫn lộn. Ví dụ: ls -lah | grep Xauthoritytrong /home/bobsẽ hiển thị như:

-rw-------  1 emily emily   53 Nov 29 10:19 .Xauthority

và như thế. Tôi đoán là tôi đã không tạo lại người dùng theo thứ tự như trong hệ thống cũ, để mọi thứ trở nên kỳ lạ khi tôi gắn /homethư mục cũ . Tuy nhiên! Tôi cần có khả năng cắm các /hometệp thư mục cũ vì chúng là một số TB và tôi không có không gian để chuyển chúng ở đây và ở đó một cách tự do, tôi cũng không được phép xóa bất cứ thứ gì. Tôi nên làm gì để khắc phục điều này?

Có phải là một ý tưởng tốt để thay thế tất cả các tập tin ẩn trong mỗi /home/userthư mục cũ bằng những thư mục mới?

[Thông tin thêm]

Nội dung của ls -l /home(sau khi lắp cũ /home); lưu ý: lost+foundKHÔNG được coi là người dùng.

total 36
drwxr-xr-x 22 bob   bob    4096 Mar 11 12:23 alice
drwxr-xr-x 44 marc  marc   4096 Mar 11 12:21 emily
drwxr-xr-x 23 1004  1004   4096 Jul 29  2013 bob
drwxr-xr-x  4 1005  1005   4096 Jul 30  2013 ken
drwx------  2 root  root  16384 Mar 27  2012 lost+found
drwxr-xr-r 40 emily emily  4096 Mar 11 12:49 marc

Nội dung của cat /etc/passwd(giới hạn cho người dùng được liệt kê ở trên):

root:x:0:0:root:/root:/bin/bash
marc:x:1000:1000:marc,,,:/home/marc:/bin/bash
emily:x:1001:1001:emily,,,:/home/emily:/bin/bash
bob:x:1002:1002:bob,,,:/home/bob:/bin/bash
ken:x:1003:1003:ken,,,:/home:ken:/bin/bash

Lưu ý: người dùng alicekhông được tạo lại sau khi cài đặt lại hệ điều hành vì tài khoản không còn cần thiết.

Đầu ra của lsblk:

NAME        MAJ:MIN RM  SIZE        RO  TYPE    MOUNTPOINT
sda     8:0     0   931.5G  0   disk
+sda1   8:1     0   285M        0   part    
+sda2   8:2     0   1K      0   part
+sda5   8:5     0   18.6G       0   part
+sda6   8:6     0   93.1G       0   part    /home
+sda7   8:7     0   93.1G       0   part
+sda8   8:8     0   698.4G          0   part    /home/marc/Data
+sda9   8:9     0   9.3G        0   part    [SWAP]
+sda10  8:10        0   18.6G       0   part    /   
sr0     11:0        1   1024M       0   rom
sdb     8:16        0   1.8T        0   disk
+sdb1   8:17        0   1.8T        0   part    /home/marc/Data2
sdc     8:32        0   1.8T        0   disk
+sdc1   8:33        0   200M        0   part    
+sdc2   8:34        0   465.8G          0   part    /home/marc/USB_Disk/Disk1
+sdc3   8:35        0   465.8G          0   part    /home/marc/USB_Disk/Disk2
+sdc4   8:36        0   465.8G          0   part    /home/emily/Data
+sdc5   8:37        0   465.6G          0   part    /var/www
sdf     8:80        0   3.7T        0   disk
+sdf1   8:81        0   1.8T        0   part    /home/ken
+sdf2   8:82        0   1.8T        0   part    /home/bob
sde     8:64        1   29.8G       0   disk
+sde1   8:65        1   29.8G       0   part    [SWAP]

Như bạn có thể thấy, người dùng marccó Tài liệu bị phá vỡ trên một số đĩa và phân vùng khác nhau.


Nguyên nhân có thể .Xauthoritycủa quyền sở hữu tập tin người dùng bị lẫn lộn. Bạn có thể vui lòng thử sao lưu tệp đó (làm trước cho một người dùng) bằng cách xem bài đăng này & khởi động lại vào hệ thống, sau đó đăng nhập với người dùng cụ thể đó, nơi hệ thống sẽ tạo một .Xauthoritytệp mới . Không xóa hoặc thay đổi quyền sở hữu, chỉ cần di chuyển nó lúc đầu và có một cái nhìn. :)
AzkerM

Cảm ơn. Tôi nhận được một thông báo 'xauth: hết thời gian trong việc khóa tập tin thẩm quyền /home/user/.Xmasterity', sau đó rất nhiều nội dung được hiển thị trong nháy mắt mà tôi không có thời gian để đọc, và sau đó tôi nhận được màn hình đen. Tôi đã thử nhấn ctrl+ alt+ delvà sau đó Enter, nhưng không có gì xảy ra.
nguy hiểm sinh học

Tôi có thể yêu cầu một đầu ra cho ls -l /home/& nếu có thể cat /etc/passwdbằng cách chỉ cho phép tôi xem dòng người dùng để xem liệu các thư mục chính được đặt đúng không. Tên người dùng thường bắt đầu từ UID:GID1000 nếu tôi không nhầm
AzkerM

Tôi đã thêm thông tin được yêu cầu vào bài viết gốc của tôi. Cảm ơn bạn đã quan tâm :) Mọi thứ trông thật rối tung. Tôi không biết lost+foundthư mục cũ /homelà gì, nhưng chắc chắn đó không phải là người dùng. Nhưng bây giờ nó được liệt kê là root.
nguy hiểm sinh học

Đừng lo lắng. Theo lỗi bạn đã chỉ định, tôi đoán sẽ tốt hơn khi gán lại các quyền theo cách đệ quy cho từng thư mục nhà của người dùng vì cấu hình có vẻ tốt đối với tôi. Trước khi chúng tôi làm điều đó tôi cũng có thể yêu cầu, cho một đầu ra của sudo blkid& cat /etc/fstabquá. :)
AzkerM

Câu trả lời:


3

ln -nsẽ cho bạn thấy các tập tin nghĩ rằng UID và GID cho người dùng nên là gì. Đây là một ví dụ từ hệ thống của tôi.

$ ls -ln /home/
total 12
drwxr-xr-x  5  111  120 4096 Mar 15 10:11 hts
drwxr-xr-x 11 1000 1000 4096 Mar 15 12:34 oli
drwxr-xr-x  4 1001 1001 4096 Mar 13 08:46 test

Trong hệ thống này, olicó UID đúng 1000 nhưng nếu tôi đã làm một cái gì đó đúng như vậy 1001, tôi chỉ có thể sử dụng usermodđể đấm nó. Giả sử tôi muốn trao đổi olitestcác UID xung quanh. Đây là trò chơi ba bước vì hai người dùng không thể chia sẻ UID. Họ có thể chia sẻ một nhóm mặc dù.

sudo usermod -u 1099 -g 1000 test
sudo usermod -u 1001 -g 1001 oli
sudo usermod -u 1000 test

Một lưu ý : Nếu người dùng hiện tại của bạn là một trong những người dùng thay đổi, sudo sutrước khi bạn bắt đầu và chạy mọi thứ với quyền root. Chỉ cần nhớ rằng sự an toàn đã tắt. Bạn không muốn có được một nửa trong quá trình này và có lỗi đặc quyền sudo của bạn.

Bạn sẽ cần chơi loại ba-lê này cho đến khi tên người dùng trong / nhà / xếp hàng với UID của họ (như được hiển thị trong ls -ln /home). Ngoài ra, bạn có thể thay đổi tất cả các tệp bằng một vài findcuộc gọi nhưng cá nhân tôi nghĩ rằng đây là một sự lãng phí lớn thời gian. Dễ dàng hơn, nhanh hơn và có khả năng phá hủy ít hơn để khắc phục sự cố này thông qua hệ thống người dùng.

Lần sau hãy nhớ kiểm tra UID trước. Các --uid nnnđối số trên addusersẽ làm cho điều này không đau.


Điều này đã giải quyết vấn đề của tôi! Tôi đã có thể chạy startx sau khi sửa UID và GID. Cảm ơn bạn :)
biohazard
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.