Cài đặt chương trình trong phân vùng root vs home?


10

Tôi là người dùng Linux mới và chuyển đổi Windows. Tôi đã dùng thử Ubuntu (Dapper Drake) vài năm trước và thích nó khá nhiều, và tôi đang trong quá trình cài đặt Xubfox 13.10 cùng với Windows7 trên ổ SSD hoàn toàn mới của tôi! Tại thời điểm này, Windows vẫn đang được cài đặt vì tôi cần nó, nhưng Linux đang được cài đặt vì tôi muốn sử dụng nó! Tôi đã thực hiện khá nhiều nghiên cứu và tôi đã từng chơi đùa với Linux trước đây, nhưng tôi vẫn là một người mới và tôi có một vài câu hỏi liên quan đến các phân vùng và cài đặt chương trình ..

Ổ SSD mới của tôi không lớn (120GB Samsung 840 EVO) và tôi sẽ sử dụng ổ cứng 800 GB cũ của mình làm ổ đĩa thứ cấp. Vấn đề là, tôi dự định sử dụng Linux càng nhiều càng tốt; chỉ chuyển sang Windows7 khi tôi thực sự cần. Vì điều này, tôi sẽ chia SSD 50:50 cho mỗi HĐH (60 GB cho Linux, 60 GB cho Windows). Tôi cũng dự định chia ổ cứng 800 GB cũ của mình thành 3 phân vùng: một số không gian cho các chương trình linux bổ sung, một số không gian cho các chương trình windows bổ sung và sau đó là phân vùng NTFS được chia sẻ cho tất cả dữ liệu của tôi (nhạc, video, tài liệu, v.v. ).

Vì vậy, để tổng hợp tình hình không gian của tôi:

  • ~ 60gb SSD + 200gb HDD cho Linux ..
  • ~ 60gb SSD + 200gb HDD cho Windows ..
  • ~ 400gb chia sẻ NTFS ..

Điều này dẫn tôi đến câu hỏi của tôi .. Mặc dù tôi có một ý tưởng khá tốt về cách thiết lập Windows của tôi sẽ hoạt động (60gb C: drive, 200gb D: drive, v.v.), cấu trúc thư mục Unix / Linux vẫn còn rất mới đối với tôi và đang làm cho quá trình này một chút khó hiểu. Tôi biết rằng có thể (và phổ biến) phân vùng riêng thư mục "/" và thư mục "nhà" của bạn và - theo tôi hiểu - phân vùng "/" có nghĩa là chứa dữ liệu và chương trình cụ thể của hệ thống, trong khi "nhà" phân vùng chứa các chương trình và dữ liệu của người dùng khác nhau.

Tuy nhiên, tôi cũng đã nghe nói rằng hầu hết (nếu không phải tất cả) các chương trình bạn cài đặt từ kho lưu trữ bằng APT đều được cài đặt vào thư mục "/". Là một người làm việc với các chương trình âm nhạc / nghệ thuật và chơi trò chơi (có thể chiếm rất nhiều không gian), điều này khiến tôi tin rằng tôi sẽ cần một phân vùng "/" lớn!

Tôi cũng đã đọc (từ đây: http://www.control-escape.com/linux/lx-partition.html ) rằng thư mục "home" là " nơi chứa tất cả các tệp cụ thể của người dùng, dữ liệu của bạn trong các từ khác, được lưu trữ. Nó gần tương đương với thư mục của My My Documents trên máy tính để bàn MS Windows ". Nhưng, như tôi đã đề cập ở trên, tôi dự định sẽ giữ tất cả dữ liệu không dành riêng cho hệ điều hành của mình (nhạc, tài liệu, video, v.v.) trên phân vùng chia sẻ ~ 400gb của tôi . Điều này thực sự khiến tôi tin rằng tôi hoàn toàn không cần một phân vùng nhà lớn và tôi nên tập trung vào phân vùng càng nhiều không gian càng tốt cho "/". Tuy nhiên, tôi đã nghe người khác tuyên bố rằng bạn chỉ cần khoảng 10gb dung lượng cho phân vùng gốc của mình!?

Chỉnh sửa: Ngoài ra, tôi mới phát hiện ra rằng các chương trình như Steam và Wine chiếm không gian trong thư mục "nhà".

Vậy, tôi nên làm gì? Về cơ bản, tôi có ổ SSD 60gb và ổ cứng 200gb không chứa gì ngoài các chương trình Linux. Tất cả dữ liệu của tôi sẽ được chuyển vào phân vùng NTFS được chia sẻ 400gb của tôi, vậy nó có đáng để tạo các phân vùng riêng cho "/" và "home" không? Nếu tôi cài đặt cả root và home trên ổ SSD 60gb của mình, làm cách nào tôi cũng có thể sử dụng thêm 200gb dung lượng ổ cứng cho nhiều chương trình Linux hơn? Tôi có thể mở rộng root trên nhiều ổ đĩa bằng cách nào đó hoặc có thể có một liên kết tượng trưng hoặc thứ gì đó kết nối hai ổ đĩa với nhau không?

Như tôi đã nói trước đây, tôi vẫn là một người mới sử dụng Linux lớn, vì vậy có thể có điều gì đó mà tôi hoàn toàn hiểu sai hoặc bỏ qua. Là một người thực hiện nhiều sáng tạo nghệ thuật / âm nhạc và chơi game trên PC của tôi, tôi có xu hướng sử dụng nhiều không gian chương trình khá nhanh, đặc biệt là khi các trò chơi và thư viện âm nhạc cứ ngày càng lớn hơn mỗi năm! Cảm ơn sự giúp đỡ, tôi mong được tìm hiểu thêm về Linux! :]


1
+1 cho một câu hỏi độc đáo, đầy đủ và rõ ràng.
Rmano

1
Tôi có một máy tính xách tay Lenovo có hai ổ cứng trong đó 120 cho HĐH và 1 TB cho phân vùng nhà của tôi (ổ đĩa gia đình;)). Tôi cũng sử dụng rất nhiều phần mềm và chơi game và tôi không sử dụng hết. Tôi đã sử dụng hết 33 GiB SSD trong số 120 GiB để Ubuntu không sử dụng nhiều dung lượng cho hệ thống ngay cả khi đã cài đặt rất nhiều trò chơi. bây giờ nếu bạn cực kỳ lo lắng về việc cần một lượng dữ liệu khổng lồ, bạn có thể tách một phần trong ổ 800 GiB của mình, hãy nói 100 GiB và sử dụng dữ liệu đó cho / usr. Trên Ubuntu và các hệ thống Unix khác như usr lưu trữ hầu hết phần mềm của bạn, vì vậy nếu cần thêm phân vùng cho / usr
zeitue

Câu trả lời:


10

Tôi sẽ tranh luận về một /phân vùng duy nhất trong SSD (60 GB , như bạn đã hình dung) để giữ mọi thứ Ubuntu, bao gồm cả /homethư mục.

Một /homephân vùng riêng là hữu ích:

(1) khi một người có kế hoạch dùng thử các bản phân phối khác nhau của Linux (còn được gọi là "bản phân phối")

hoặc là

(2) khi một người có thể muốn cài đặt lại Ubuntu mà không hủy các tệp và cài đặt cá nhân /home.

Lý do thứ hai bây giờ ít quan trọng hơn, vì các phiên bản mới hơn của quy trình cài đặt Ubuntu sẽ phát hiện Ubuntu hiện có và đề nghị bảo quản thư mục / home khi cài đặt xong.

Mặt khác, nếu bạn giữ /homenhư một thư mục của /bạn, bạn sẽ không phải lo lắng về việc phân bổ /bao nhiêu và phân bổ bao nhiêu /home. Nếu các tệp chương trình (trò chơi) của bạn mất thêm dung lượng, tất cả những gì bạn phải làm là chuyển dữ liệu cá nhân của mình sang ổ cứng.

Đến bây giờ bạn phải suy nghĩ tại sao không đặt /homevào ổ cứng?

Lý do duy nhất tôi thích /homeở SDD là vì /homekhông chỉ lưu trữ dữ liệu cá nhân của bạn mà còn lưu trữ cài đặt cá nhân của bạn cho tất cả các chương trình. Điều này bao gồm các thay đổi bạn thực hiện đối với máy tính để bàn hoặc bất kỳ cài đặt chương trình nào khác, dấu trang trình duyệt của bạn, v.v. Khi bạn tải một chương trình từ SSD nhưng cài đặt cá nhân nằm trong ổ cứng, nó sẽ làm chậm quá trình tải chương trình đó một chút. Giữ //homecả trong SSD sẽ giúp bạn có thời gian tải nhanh nhất.

Giữ dữ liệu lớn như âm nhạc, video, trò chơi đã lưu, v.v. trong ổ cứng

Các thư mục chứa lượng dữ liệu lớn, chẳng hạn như Video, có thể nằm trong phân vùng NTFS với các liên kết tượng trưng đến /home. Điều này được giải thích chi tiết tại: Khởi động kép Windows Ubuntu - Chia sẻ tệp giữa các hệ điều hành

Các thư mục con lớn khác /homecó thể là các phân vùng trong ổ cứng. Ví dụ: nếu bạn cài đặt nhiều chương trình và trò chơi Windows trong WINE, thư mục ẩn .winesẽ phát triển lớn. Bạn có thể tạo một ext4phân vùng trong ổ cứng và gắn kết nó tại /home/[your user name]/.wine(Không giống như Windows, một phân vùng trong Linux có thể được gắn dưới dạng thư mục con.) Các trò chơi trên Steam chiếm rất nhiều dung lượng. Trò chơi hơi nước của bạn là trong /home/[your user name]/.local/share/Steam. Xem các trò chơi Steam được cài đặt ở đâu? Bạn có thể tạo một phân vùng Steam( ext4) riêng trong ổ cứng nếu muốn. Chúng sẽ yêu cầu chỉnh sửa một lần của tập tin /etc/fstab. Xem Mount một phân vùng khi đăng nhập? để biết thêm về cách gắn kết phân vùng khi đăng nhập.

Lý do tôi khuyên .wine là một ext4phân vùng chứ không phải là một thư mục trong NTFSphân vùng là vì NTFSkhông thể bảo vệ quyền sở hữu và quyền sử dụng tệp được Ubuntu sử dụng bởi các cài đặt và các tệp khác được lưu trong thư mục .wine của WINE.

Giữa các thư mục được liên kết hệ thống trong NTFSphân vùng và các ext4phân vùng được gắn dưới dạng thư mục con của /homebạn có thể giữ tất cả các tệp lớn trong ổ cứng mà vẫn giữ cho hệ thống nhanh, tận dụng SSD.

Nếu bạn vẫn hết dung lượng trong /phân vùng trong SSD do các trò chơi lớn và các chương trình khác, bạn có thể tạo ext4phân vùng và di chuyển /usrđến đó. Tuy nhiên, điều này sẽ đòi hỏi một số kế hoạch, suy nghĩ cẩn thận và thực hiện. Đặt một câu hỏi riêng nếu và khi bạn cần đi trên tuyến đường đó.

Theo như cài đặt các chương trình /so với phần/home giải thích tuyệt vời về quy trình và giới hạn của nó: Phần mềm được cài đặt trên phân vùng gốc hoặc trên phân vùng nhà Tóm lại, các chương trình được cài đặt qua Trung tâm phần mềm Ubuntu hoặc lệnh apt-getsẽ được cài đặt /. Chỉ các chương trình được biên dịch "tĩnh-nhị phân" có thể được cài đặt (thay vì sao chép) trong các thư mục con /homevà dự kiến ​​sẽ hoạt động.

Tham khảo thêm:

Phân vùng cho Ubuntu và Windows 7 khởi động kép trên thiết lập SSD + HDD

Thiết lập cho đĩa kép (SSD + HDD) với phân vùng / home

Tôi có cần Phản hồi thông minh của Intel khi cài đặt Ubuntu không?

Di chuyển hoặc cài đặt ứng dụng trên ổ cứng chứ không phải SSD


Cảm ơn rất nhiều cho câu trả lời chi tiết và chu đáo! Tôi có rất nhiều suy nghĩ về bây giờ! Có vẻ như tôi không quen với ý tưởng rằng tôi chỉ có thể di chuyển một thư mục và liên kết nó một khi không gian đĩa của tôi bắt đầu lấp đầy. Linux tiếp tục phá vỡ các rào cản tinh thần mà tôi đã tạo ra từ nhiều năm sử dụng Windows! :]
MrKatSwordfish

4

Phân vùng và quyết định nơi đặt mọi thứ là một nghệ thuật hơn là một khoa học ... vì vậy tôi có thể cho bạn một số lời khuyên mang tính cá nhân hơn là kỹ thuật .

1) giữ //hometách. Điều này sẽ cho phép bạn cài đặt lại một loại Linux (hoặc Ubuntu) khác mà không cần chạm vào dữ liệu và cấu hình của bạn. Tôi thậm chí đã có thể có hai Linux khác nhau (Ubuntu và Mandriva, từ nhiều năm trước) đang chạy với cùng một /homethư mục và cùng cấu hình máy tính để bàn ... nó thực sự hữu ích để thử nghiệm.

2) Bây giờ, 60GB cho "/" là một phân vùng khá lớn cho Linux. Trong máy tính xách tay của tôi, tôi đã cài đặt tất cả các hệ thống xử lý ảnh có thể, các bộ mã hóa video khác nhau, các trò chơi khác nhau và nó giống như thế này:

(0)samsung-romano:~% df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        88G  9.5G   74G  12% /

Nhưng vâng --- trong trường hợp của bạn, tôi sẽ đặt /SSD (có thể với trao đổi RAM 2 *, mặc dù điều này còn nhiều tranh cãi ) và /hometrên HD.

Một tùy chọn khác (sẽ yêu cầu nhiều công việc hơn nhưng linh hoạt hơn) có thể là cài đặt root 20G, trao đổi 2G và phần còn lại /hometrên SSD và ví dụ 200G HD /data. Sau khi cài đặt, bạn có thể thay đổi quyền sở hữu đối /datavới người dùng chính của mình và di chuyển đến đó (và liên kết trở lại) các thư mục phát triển quá nhiều. (Một loại LVM người nghèo). Điều này sẽ có lợi thế là hệ thống cơ sở sẽ thực sự linh hoạt, được cài đặt hoàn toàn trên SSD.

Tùy chọn cuối cùng là cái mà tôi gọi là tùy chọn "fiddler". Bạn có thể có một số phân vùng (giả sử ba - YMMV) khoảng 30G --- gọi cho họ p1, p2, p3; và phần còn lại trong một phân vùng rất lớn, được gắn bên dưới /datavà chỉnh chownsửa cho người dùng của bạn. Bạn có thể có một phân vùng trao đổi bổ sung nếu bạn muốn.

Bây giờ bạn có thể cài đặt Ubuntu của bạn trong p1, lắp đặt tất cả dưới /trong vụ việc này. Sau đó, bạn có thể liên kết các tệp cá nhân của bạn (tài liệu, hình ảnh, v.v.) đến các thư mục trong /data.

Điều này sẽ cho phép bạn cài đặt ví dụ Ubuntu LTS p1, phiên bản beta mới nhất p2, một bản phân phối khác trên p3--- mỗi bản có tệp nhà và cấu hình của nó, nhưng bạn có thể chia sẻ dữ liệu của mình giữa tất cả chúng ...

Giải pháp lý tưởng sẽ là sử dụng một thứ phân vùng động như LVM , nhưng nó khá phức tạp ... Điều này sẽ rất hữu ích khi bạn quyết định xóa sạch Windows và chỉ sử dụng Ubuntu ;-).

Thông tin bổ sung : "chương trình" đi đâu?

  • phân vùng gốc: ở đây (trong /, /usr, /usr/share/vv) tất cả các phần mềm từ phân phối (kho chính thức và những PPA) sẽ đi. Lưu ý rằng sự phân chia cũ giữa //usrhiện tại thực tế không được sử dụng trong cài đặt Unix hiện đại (1).

  • phân vùng tại nhà: ở đây bạn sẽ tìm thấy tất cả dữ liệu của mình hoặc phần mềm được cài đặt như một người dùng bình thường (không phải toàn hệ thống). Điều này bao gồm, ví dụ: "chai" rượu vang (vì vậy tất cả phần mềm được cài đặt dưới rượu sẽ có trong /home, máy ảo từ VirtualBox, trò chơi từ CrossOver, v.v. Theo kinh nghiệm của tôi là một phần của hệ thống thực sự cần không gian.

  • /usr/localvà / hoặc /opt: đây là nơi mà các chương trình mà bạn muốn tự biên dịch thường đặt. Bạn có thể cần điều này vì chương trình quá mới hoặc quá cũ để có trong kho lưu trữ, để phát triển hoặc chỉ để chơi. Tôi đã có bản sao CitCTP cũ của mình ... Tôi thường di chuyển các thư mục này /homeđể làm cho nó không bị cài đặt (hệ thống).

  • trò chơi lớn: tôi không có ý tưởng. Trò chơi lớn nhất của tôi từ trước đến nay là CivilCTP và nó chỉ ở mức dưới nửa GB (được cài đặt dưới nhà hoặc trong nhà tôi /usr/local).

(1) Về mặt lịch sử (2), khi không gian đĩa là đắt tiền, chúng tôi đã có một /phân vùng với mức tối thiểu để khởi động hệ thống ( /, /bin, /sbin, /etc, /lib, /var, /tmp) một cách độc lập. Trong phân vùng này có phần mềm tối thiểu và tất cả các thư mục mà hệ thống có thể cần phải viết. Dưới /usrtồn tại một sơ đồ tương tự với tất cả các phần mềm; /usrthường được chia sẻ và gắn kết chỉ đọc bởi một cụm máy móc, để tiết kiệm dung lượng đĩa.

(2) Tôi đang nói đầu những năm 90 ở đây. 100MB đĩa là một máy chủ lớn.


2
Tôi đồng ý với điều này .. Tôi chỉ sử dụng linux và với các chương trình tôi cần, nó chưa bao giờ vượt qua 14G. Cài đặt công việc chính của tôi là khoảng 10G. Điều duy nhất có thể chiếm nhiều không gian hơn có thể là những trò chơi lớn với nhiều nghệ thuật. Bạn có biết loại trò chơi nào bạn thích và một công viên bóng bao nhiêu bạn sẽ cài đặt không? (<10, 10 thấp, 10 cao ..) sau đó xem kích thước cài đặt của một số để xem có bao nhiêu không gian mà họ sẽ yêu cầu.
staticd

@static Tất nhiên, có một điều là, nhiều chương trình yêu cầu dung lượng <1gb và những chương trình đó thực sự không phải là vấn đề. Tuy nhiên, những ngày này, nhiều trò chơi có thể chiếm tới> 10gb mỗi trò chơi. Tất nhiên, người ta không cần tất cả chúng được cài đặt cùng một lúc, nhưng tôi muốn tận dụng tốt nhất không gian linux 60 + 200gb của mình càng tốt.
MrKatSwordfish

@Rmano Tôi thấy rằng bạn đã sao chép "usr / local" vào phân vùng nhà của bạn và liên kết nó với vị trí ban đầu .. Tôi nghĩ rằng một phần của sự nhầm lẫn của tôi dựa trên sự thiếu hiểu biết về nơi các chương trình của tôi thường sẽ được cài đặt. Có "/ bin", "/ sbin", "usr / bin", "usr / sbin", và sau đó có vẻ như một số chương trình như Steam, cũng như các chương trình chạy trong Wine, được lưu trữ trong thư mục "/ home" .. Bạn có nghĩ rằng tôi nên chia SSD 60gb của mình thành root, home và trao đổi không? (Và sau đó có lẽ gắn "/ usr" vào phân vùng ổ cứng 200gb chậm hơn của tôi ..?) Hay tôi chỉ nên sử dụng SSD cho root + exchange và ổ cứng HDD?
MrKatSwordfish

1
@MrKatSwordfish, tôi đã thêm một số thông tin vào bài viết.
Rmano

Cảm ơn một lần nữa cho câu trả lời tuyệt vời và chu đáo. Tôi có một số điều để suy nghĩ. Tôi nghĩ rằng tôi chưa quen với sự linh hoạt dành cho tôi thông qua việc di chuyển các thư mục và thay thế chúng bằng các liên kết tượng trưng! :]
MrKatSwordfish
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.