Giao diện hệ thống tập tin và phân vùng máy chủ Unix


29

Có rất nhiều thông tin trái ngược nhau về việc phân vùng máy chủ Unix trên internet, vì vậy tôi cần một số lời khuyên về cách tiến hành.

Cho đến nay, trên các máy chủ tôi trong môi trường thử nghiệm của chúng tôi, tôi không thực sự quan tâm đến việc phân vùng và tôi đã cấu hình một khối nguyên khối duy nhất /cộng với một phân vùng trao đổi. Lược đồ phân vùng này dường như không phải là một ý tưởng tốt cho các máy chủ sản xuất của chúng tôi. Tôi đã tìm thấy một điểm khởi đầu tốt ở đây , nhưng có vẻ rất mơ hồ về các chi tiết.


Về cơ bản tôi có một máy chủ mà tôi sẽ chạy một ngăn xếp LAMP cơ bản (Apache, PHP và MySQL). Nó sẽ phải xử lý tải lên tập tin (tối đa 2GB). Hệ thống có mảng 1TB RAID 1.

Tôi dự định đặt:

/         100GB 
/var     1000GB (apache files and mysql files will be here), 
/tmp      800GB (handles the php tmp file)
/home      96GB
swap        4GB

Điều này nghe có vẻ lành mạnh, hay tôi quá phức tạp hóa mọi thứ?


1
Mục tiêu cuối cùng của bạn là gì? Chính xác thì bạn đang cố đạt được điều gì?
Scott Pack

9
Tuy nhiên, bạn quyết định khắc nó lên, tôi sẽ đề nghị sử dụng LVM để xác định phân vùng của bạn và sau đó phân bổ không gian một cách bảo tồn, để lại một số không gian đĩa không được phân bổ. Sau đó, khi bạn quyết định bạn cần thêm không gian ở đâu đó, bạn có thể mở rộng LV và hệ thống tập tin.
ktower

Câu trả lời:


33

Một điều cần lưu ý khi bố trí các phân vùng của bạn là các chế độ thất bại. Thông thường câu hỏi đó có dạng: "Điều gì xảy ra khi phân vùng x đầy?" Voretaq7 thân yêu đã đưa ra tình huống đầy đủ /gây ra bất kỳ số lượng các vấn đề khó chẩn đoán. Hãy xem xét một số tình huống cụ thể hơn.

Điều gì xảy ra nếu phân vùng lưu trữ nhật ký của bạn đã đầy? Bạn mất dữ liệu kiểm toán / báo cáo và đôi khi bị kẻ tấn công sử dụng để che giấu hoạt động của họ. Trong một số trường hợp, hệ thống của bạn sẽ không xác thực người dùng mới nếu hệ thống không thể ghi lại sự kiện đăng nhập của họ.

Điều gì xảy ra trên một hệ thống dựa trên RPM khi đã /varđầy? Trình quản lý gói sẽ không cài đặt hoặc cập nhật các gói và tùy thuộc vào cấu hình của bạn, có thể bị lỗi âm thầm.

Việc lấp đầy một phân vùng rất dễ dàng, đặc biệt là khi người dùng có khả năng viết thư cho nó. Để giải trí, hãy chạy lệnh này và xem bạn có thể tạo một tệp khá lớn nhanh như thế nào : cat /dev/zero > zerofile.

Nó cũng vượt ra ngoài việc lấp đầy các phân vùng, khi bạn đặt các vị trí trên các điểm gắn kết khác nhau, bạn cũng có thể tùy chỉnh các tùy chọn gắn kết của chúng.

Điều gì xảy ra khi /dev/không được gắn kết với noexec? Do /devthường được cho là được duy trì bởi HĐH và chỉ chứa các thiết bị nên nó thường được sử dụng để che giấu các chương trình độc hại. Rời khỏi noexeccho phép bạn thực hiện khởi chạy nhị phân được lưu trữ ở đó.

Vì tất cả những lý do này và hơn thế nữa, nhiều hướng dẫn cứng sẽ thảo luận về phân vùng là một trong những bước đầu tiên được thực hiện. Trong thực tế, nếu bạn đang xây dựng một máy chủ mới, làm thế nào để phân vùng đĩa gần như chính xác là điều đầu tiên bạn phải quyết định và thường là khó khăn nhất để thay đổi sau này. Tồn tại một nhóm được gọi là Trung tâm bảo mật Internet tạo ra các hướng dẫn cấu hình dễ đọc. Bạn có thể tìm thấy một hướng dẫn cho Hệ điều hành cụ thể của bạn và xem bất kỳ chi tiết cụ thể nào họ có thể nói.

Nếu chúng ta xem RedHat Enterprise Linux 6, sơ đồ phân vùng được đề xuất là:

# Mount point           Mount options
/tmp                    nodev,nosuid,noexec
/var                    
/var/tmp                bind (/tmp)
/var/log
/var/log/audit
/home                   nodev
/dev/shm                nodev,nosuid,noexec

Nguyên tắc đằng sau tất cả những thay đổi này là để ngăn chặn chúng tác động lẫn nhau và / hoặc để hạn chế những gì có thể được thực hiện trên một phân vùng cụ thể. Lấy các tùy chọn /tmpcho ví dụ. Điều đó nói rằng không có nút thiết bị nào có thể được tạo ở đó, không có chương trình nào có thể được thực thi từ đó và bit set-uid không thể được đặt trên bất cứ thứ gì. Về bản chất, /tmphầu như luôn luôn có thể ghi trên thế giới và thường là một loại hệ thống tập tin đặc biệt chỉ tồn tại trong bộ nhớ. Điều này có nghĩa là kẻ tấn công có thể sử dụng nó như một điểm dễ dàng để thả và thực thi mã độc, sau đó đánh sập (hoặc đơn giản là khởi động lại) hệ thống sẽ xóa sạch tất cả các bằng chứng. Vì chức năng của /tmpkhông yêu cầu bất kỳ chức năng nào, chúng tôi có thể dễ dàng vô hiệu hóa các tính năng và ngăn chặn tình huống đó.

Các vị trí lưu trữ nhật ký /var/log/var/log/auditđược khắc lên để giúp chúng thoát khỏi tình trạng cạn kiệt tài nguyên. Ngoài ra, Audd có thể thực hiện một số điều đặc biệt (thường là trong môi trường bảo mật cao hơn) khi bộ lưu trữ nhật ký của nó bắt đầu đầy. Bằng cách đặt nó trên phân vùng của nó, phát hiện tài nguyên này thực hiện tốt hơn.

Để dài dòng hơn và trích dẫn mount(8), đây chính xác là những tùy chọn được sử dụng ở trên:

noexec Không cho phép thực thi trực tiếp bất kỳ nhị phân nào trên hệ thống tệp được gắn. (Cho đến gần đây, dù sao cũng có thể chạy nhị phân bằng cách sử dụng một lệnh như /lib/ld*.so / mnt / binary. Thủ thuật này thất bại kể từ Linux 2.4.25 / 2.6.0.)

gật đầu Không giải thích ký tự hoặc chặn các thiết bị đặc biệt trên hệ thống tệp.

nosuid Không cho phép các bit định danh người dùng tập hợp hoặc bit định danh nhóm tập hợp có hiệu lực. (Điều này có vẻ an toàn, nhưng thực tế là không an toàn nếu bạn đã cài đặt suidperl (1).)

Từ góc độ bảo mật, đây là những lựa chọn rất tốt để biết vì chúng sẽ cho phép bạn đặt các biện pháp bảo vệ trên chính hệ thống tập tin. Trong một môi trường an toàn cao, bạn thậm chí có thể thêm noexectùy chọn vào /home. Người dùng tiêu chuẩn của bạn sẽ khó viết các tập lệnh shell để xử lý dữ liệu, phân tích các tệp nhật ký, nhưng điều đó cũng sẽ ngăn họ thực thi một tệp nhị phân sẽ nâng cao các đặc quyền.

Ngoài ra, hãy nhớ rằng thư mục gốc mặc định của người dùng gốc là /root. Điều này có nghĩa là nó sẽ nằm trong /hệ thống tập tin chứ không phải trong /home.

Chính xác số tiền bạn cung cấp cho mỗi phân vùng có thể thay đổi rất nhiều tùy thuộc vào khối lượng công việc của hệ thống. Một máy chủ điển hình mà tôi đã quản lý sẽ hiếm khi yêu cầu tương tác giữa người với người và như vậy /homephân vùng không cần phải quá lớn. Điều tương tự cũng áp dụng /varvì nó có xu hướng lưu trữ dữ liệu khá phù du được tạo và xóa thường xuyên. Tuy nhiên, một máy chủ web thường sử dụng /var/wwwlàm sân chơi của nó, có nghĩa là hoặc cũng cần phải nằm trên một phân vùng riêng hoặc /var/cần phải được làm lớn.

Trong quá khứ tôi đã đề nghị những điều sau đây là đường cơ sở.

# Mount Point       Min Size (MB)    Max Size (MB)
/                   4000             8000
/home               1000             4000
/tmp                1000             2000
/var                2000             4000
swap                1000             2000
/var/log/audit       250

Chúng cần được xem xét và điều chỉnh theo mục đích của hệ thống và cách môi trường của bạn hoạt động. Tôi cũng sẽ khuyên bạn nên sử dụng LVM và không phân bổ toàn bộ đĩa. Điều này sẽ cho phép bạn dễ dàng phát triển hoặc thêm các phân vùng nếu những thứ đó là bắt buộc.


1
Các noexecquan sát là một điều quan trọng nói chung - Nó được coi là thực hành tốt để gắn kết /tmpvới các noexeclá cờ để tránh người dùng nguy hiểm upload rootkit thông qua khai thác bảo mật trình duyệt. Tương tự như vậy /homethường được gắn kết nosuidvì không có lý do cho các nhị phân setuid ở đó. Re: /devnoexec, trên nhiều hệ thống hiện đại (mặc dù không phải tất cả) /devthường là một devfshệ thống tệp và sẽ không cho phép người dùng tạo / lưu trữ các tệp thông thường (Trên FreeBSD, nó trả về " Operation not supported", trên Ubuntu udevhệ thống tệp được gắn trên /devcho phép bạn tạo các tệp thông thường. ).
voretaq7

2
@ voretaq7: Vâng, sử dụng /tmpnhư một bước nhảy rất thú vị vì nó luôn ở đó và hầu như không bao giờ bị khóa.
Scott Pack

Cảm ơn bạn cho lời khuyên luận án. Tôi sẽ kiểm tra noexec vì nó cải thiện an ninh!
Buzut

12

Bỏ qua mảng RAID bên dưới ( Xem câu hỏi này để biết thêm chi tiết về cấp độ mảng RAID và khi bạn muốn sử dụng chúng ), hãy tập trung vào câu hỏi cốt lõi mà bạn đang hỏi:
"Tôi nên bố trí hệ thống tệp của máy chủ Unix như thế nào?"


Có gì sai với một /phân vùng khổng lồ ?

Như bạn đã lưu ý trong câu hỏi của mình, rất nhiều bản phân phối Linux (đặc biệt là bản phân phối "Máy tính để bàn" như Ubuntu) sử dụng bố cục hệ thống tệp rất đơn giản: /[swap].

Lược đồ này có ưu điểm là đơn giản - thật tuyệt vời cho người dùng DOS / Windows đã quen với PC tại nhà của họ với "ổ cứng" như một thùng chứa nguyên khối lớn ( C:\) mà bạn bỏ vào đó và bạn không phải lo lắng về việc hết dung lượng trên các hệ thống tập tin - chỉ cần đảm bảo bạn ở dưới dung lượng của đĩa và mọi thứ (ít nhất là về mặt lý thuyết) đều ổn.

Sơ đồ hệ thống tập tin đơn có một số nhược điểm - nhược điểm thường được trích dẫn nhất là các hệ thống Unix có xu hướng phản ứng rất tệ khi hệ thống tập tin gốc lấp đầy (đến mức từ chối khởi động) và nếu mọi thứ được ghi vào /(gốc) một chương trình bướng bỉnh hoặc người dùng có thể gỡ xuống toàn bộ hệ thống.
Một hệ thống tệp lớn duy nhất cũng dễ bị mất hoàn toàn trong trường hợp xảy ra sự cố hệ thống và hỏng hệ thống tệp tiếp theo.

Các vấn đề ở trên, cộng với ý thức tổ chức mạnh mẽ, là lý do tại sao các máy chủ Unix thường có nhiều hệ thống tệp.


Làm thế nào để bạn phá vỡ hệ thống tập tin Unix?

Vì vậy, hy vọng bạn tin chắc rằng có nhiều hệ thống tập tin có ý nghĩa. Câu hỏi bây giờ là làm thế nào để bạn chia hệ thống thành các phần hợp lý và làm thế nào để bạn quyết định mỗi không gian có được bao nhiêu?
Câu trả lời là bạn biết và hiểu hệ điều hành của bạn sẽ đặt ở đâu. Điểm khởi đầu cho sự hiểu biết đó là hiertrang người đàn ông. Hầu hết các hệ thống Unix đi kèm ( man hiertừ hệ thống linuxman hiertừ hệ thống BSD ), và điều đó cộng với kiến ​​thức địa phương của bạn về những gì mã bạn đang cài đặt sẽ hướng dẫn bạn trong việc tạo bố cục phân vùng lành mạnh.

Tôi sẽ mô tả một lược đồ phân vùng chung ở đây, nhưng lược đồ này phải luôn được sửa đổi để đáp ứng nhu cầu cụ thể của bạn.

Lược đồ phân vùng Unix chung

/
    The "root partition", /, does not usually need to be very large.
    It holds the basic items needed to boot the system, mount other filesystems
    and get you to a running, usable, multi-user environment.  It's also what
    is available to you when you bring up the system in single-user ("recovery")
    mode.  
    The contents of / should not change or grow substantially over time.

    NOTE: Anything that doesn't go on one of the other partitions described
          below will wind up taking space on the root partition (/).

/var
    The /var filesystem holds variable data -- log files, email, and on some
    systems databases (like MySQL or Postgres) store their data files here.  
    `/var` should be "Big Enough" to hold all the data you intend to cram into
    it.  I generally advise 10GB for systems that won't have a database or email
    server (just logs).  If you are building a database or mail server you
    should obviously make `/var` larger, or carve out separate filesystems for
    the database/mail data.

/usr
    The /usr filesystem holds "userland" programs, data, manual pages, etc.
    This is where things like the Firefox browser binary live.  On systems that
    will have a lot of large user applications this filesystem may be very large
    (100GB or more), and on stripped-down servers it may be relatively small.  
    A good rule of thumb is that the /usr filesystem should be twice as large
    as you need it to be in order to fit your initial installation of programs.

/home
    The /home filesystem holds user home directories, and on desktop systems is
    the largest and most prone to filling up.  When you download files from the
    internet, create spreadsheets, store a music library, etc. that data is
    stored in your home directory, and it adds up fast.
    It's important to allow enough room under /home for the "accumulated junk"
    you will gather over time, even on servers -- ad-hoc tarball backups, 
    package files you copied over to install, and the like.

Hệ thống tập tin đặc biệt

/tmp and /var/tmp
    The temporary scratch space (/tmp) is "special" -- on most Unix systems
    the contents of /tmp are cleared on reboot, and on many modern systems
    /tmp is a special "tmpfs" (RAM) filesystem for better performance.
    /var/tmp is usually "persistent temporary files" (like vi recovery
    files), and is not cleared on reboot
    The same general rule applies as for all other filesystems: Make sure
    your temporary scratch filesystems are big enough to hold the stuff you
    want to put in them.

[swap]
    Swap Space is used by the kernel when you are running low on RAM --
    The old general rule of thumb was to have at least twice as much swap
    as you did RAM, however on modern systems it's usually sufficient to
    have "enough" swap -- 2GB is a practical lower limit, and an amount
    between half the installed RAM and the total installed RAM is usually
    adequate.
    On modern systems with relatively huge RAM pools (12G and up) it is
    probably not practical to use the system if it's swapping heavily
    enough to warrant the old "Twice the installed RAM" rule.

2
Hai lý do bạn liệt kê phần lớn đã lỗi thời ngày hôm nay. ext [234] dành một số không gian cho root và sẽ không cho phép các chương trình người dùng sử dụng hết nên hệ thống sẽ không gặp vấn đề gì khi hết dung lượng và tất cả các hệ thống tập tin hiện đại đều sử dụng nhật ký để chúng không bị hỏng sau một vụ tai nạn.
psusi

2
@psusi Không gian dành riêng cho người dùng root (thường là 5-10% kích thước hệ thống tệp) không giúp ích gì cho bạn nếu người dùng root là người ghi các tệp lấp đầy đĩa (như thường thấy với các tệp nhật ký). Cũng không đúng khi cho rằng chỉ vì một hệ thống tập tin được ghi nhật ký, nó sẽ luôn an toàn khỏi tham nhũng - việc ghi nhật ký làm tăng sự mạnh mẽ, nhưng nó không đảm bảo an toàn (đặc biệt nếu bạn vấp phải một lỗi chưa được phát hiện trong hệ thống tập tin / mã tạp chí và làm cong tạp chí - Mọi người ReiserFS có thể kể một số câu chuyện tuyệt vời về điều đó từ những ngày đầu của hệ thống tập tin đó).
voretaq7

2
Có một nguyên vẹn /usrhoặc /varkhông giúp đỡ nếu /bị hỏng. Tương tự như vậy, có một nguyên vẹn /không giúp đỡ (nhiều) nếu /homebị hỏng. Bạn cuối cùng phải khôi phục từ bản sao lưu. Chưa kể những thất bại như vậy là một trong một triệu trừ khi bạn đang chạy một fs mới / không ổn định.
psusi

4

Thói quen khắc phục hệ thống tập tin như thế là từ thời không có phần mềm đột kích và ổ đĩa còn nhỏ, vì vậy bạn phải sử dụng một vài trong số chúng, và do đó, cách duy nhất để làm điều đó là phá vỡ hệ thống tập tin và đặt các thư mục khác nhau trên các ổ đĩa khác nhau. Lý do lịch sử khác của nó là để bạn có thể dễ dàng ngắt kết nối một phân vùng và dumpnó để sao lưu, điều mà bạn không thể làm với root. Công cụ này phần lớn không được ưa chuộng trong những ngày này và thay vào đó có thể được sử dụng trên ảnh chụp nhanh LVM ngay cả trên thư mục gốc.

Có rất ít hoặc không có lý do để làm điều này nữa. Về lý do duy nhất còn lại để làm điều này là, ví dụ, nếu bạn muốn ngăn chặn /tmpviệc lấp đầy toàn bộ đĩa.

Lý do này phần lớn không liên quan trong những ngày này bởi vì việc chứng minh người dùng có quyền truy cập shell chung đã đi theo lối mòn và ngày nay các máy chủ chạy các dịch vụ chuyên dụng, chẳng hạn như máy chủ web hoặc thư. Vì bạn không có người dùng ngẫu nhiên có thể chạy các lệnh tùy ý, nên bạn thường không cần lo lắng về việc họ cố gắng lấp đầy hệ thống tệp của bạn (và ngay cả khi bạn đã làm, bạn đã có hạn ngạch đĩa để ngăn chặn điều đó).

Đối với cấp độ đột kích để sử dụng, bạn cần nhớ rằng mục đích chính của cuộc đột kích không phải là để bảo vệ dữ liệu (đó là mục đích sao lưu), mà là để duy trì thời gian hoạt động. Nếu bạn đặt /tmpraid0, thì máy chủ của bạn vẫn bị hỏng và bạn phải sửa nó nếu một trong các đĩa bị hỏng. Bạn cũng có thể muốn sử dụng raid10 thay vì raid1 để bạn có hiệu suất tốt hơn.

Một lý do rất chính đáng KHÔNG làm hỏng hệ thống tập tin là nếu bạn phân bổ sai, bạn có thể kết thúc với một phần của hệ thống tập tin đã đầy mặc dù có nhiều không gian trống ở nơi khác. Sửa lỗi này có thể khó khăn, trừ khi bạn sử dụng LVM và để lại một số không gian chưa được gán.


4
Có rất nhiều lý do để tiếp tục tạo ra một hệ thống tập tin Unix theo cách truyền thống. Nếu không có lý do để làm điều này, chúng ta sẽ dừng lại ngay bây giờ
sysadins

1
@ voretaq7, sau đó đặt tên cho một số. Nếu bạn không thể, thì mù quáng cho rằng phải có sự ngu ngốc.
psusi

1
Nó sẽ hành xử những người hạ cấp để thực sự cung cấp một lập luận chống lại chứ không phải là con vẹt khôn ngoan thông thường.
psusi

2
Giữ / var / log lấy mọi thứ bằng cách điền vào. Hạn chế tham nhũng cho một hệ thống tập tin. Đơn giản hóa các bản sao lưu - cho dù ảnh chụp nhanh hoặc gắn kết các quy tắc truyền tải, người ta thường muốn sao lưu mọi thứ theo lịch trình khác nhau. Đơn giản hóa hình ảnh / nâng cấp. Cho phép lựa chọn hiệu năng dựa trên hệ thống tập tin liên quan đến nhiệm vụ.
Jeff Ferland

1
@JeffFerland, tốt nhất đó là một lý do yếu để đặt / var / log trên phân vùng riêng của nó, nhưng không phải cho một số phân vùng khác. Trừ khi bạn vẫn đang sử dụng dump, sao lưu các phần khác nhau của fs không cần các phần đó nằm trên các phân vùng khác nhau. Nâng cấp không quan tâm cách này hay cách khác. Hình ảnh không phải là một cách rất tốt để làm mọi thứ.
psusi

3

Rất nhiều thông tin phân vùng được tạo ra khi không gian đĩa bị thiếu. Kết quả là bạn sẽ thấy các phân vùng tương đối nhỏ cho một số trường hợp. Kích thước phân vùng yêu cầu khác nhau tùy thuộc vào việc sử dụng máy chủ. Biến hầu hết có xu hướng /tmp, /var, home, /opt, và /srv. /usrcó xu hướng có kích thước hợp lý và ổn định. Không gian cho /có thể bao gồm bất kỳ hoặc tất cả các phân vùng khác và yêu cầu không gian của chúng. Kích thước thực sự phụ thuộc vào những gì bạn đang làm hệ thống.

Tôi sẽ tăng swapvà gắn kết /tmptrên tmpfs. /tmpSau đó, bạn sẽ sử dụng trao đổi như một cửa hàng sao lưu, nhưng sử dụng bộ nhớ như có sẵn. Kích thước của /tmpngoại hình của bạn rất cao, nhưng sẽ xử lý tải lên bị hủy mà không được dọn sạch.

Tôi sẽ xem xét chuyển các tập tin MySQL sang /srv. Đây là một cấp độ tương đối mới trong hệ thống phân cấp đĩa.

Nếu bạn không biết các yêu cầu cuối cùng của mình, hãy cân nhắc sử dụng LVM và mở rộng các phân vùng của bạn khi điền vào.


Cẩn thận tăng hoán đổi - Thật tốt khi có hoán đổi "đủ", nhưng nếu bạn có quá nhiều, bạn sẽ không bao giờ sử dụng nó (bởi vì khi bạn trao đổi quá nhiều thì hiệu năng hệ thống chỉ là quá đau đớn). Tôi có thể nói rằng 4G được đề xuất trong câu hỏi có lẽ là "đủ" cho ngăn xếp LAMP - nếu bạn đang sử dụng 4G trao đổi (và thực sự phân trang dữ liệu đó vào và ra) thì có lẽ bạn cũng đang hét vào điện thoại vì trang web chậm :)
voretaq7

1
@ voretaq7 Không quan trọng việc hoán đổi kích thước là gì nếu bạn đang sử dụng cho các chương trình đang hoạt động. Sử dụng nó cho tmpfs nơi các tệp lớn được ghi ra đĩa nhưng các tệp nhỏ hơn lưu lại bộ nhớ là cách sử dụng trao đổi hợp lý. Nó tiết kiệm khi ghi mọi tập tin vào đĩa khi mục đích là đặt nó ở nơi khác. Tôi đề nghị tăng không gian hoán đổi vì dường như một /tmpkhông gian rộng có thể được yêu cầu.
BillThor

Tại sao không sử dụng một tập tin thông thường để trao đổi? Họ đã không nhanh như một phân vùng trao đổi chuyên dụng trong một thời gian dài?
Chris Smith

@ChrisSmith Một tệp thông thường phải nhanh như một phần dành riêng, nhưng nó có thể không liền kề trên đĩa dẫn đến phân tách các yêu cầu I / O. Điều này có thể được bù đắp bằng cách lột. Ngoài ra, tương đối dễ dàng để vô tình xóa một tập tin trao đổi. Các tập tin bị xóa sẽ không rõ ràng cho đến khi hệ thống được khởi động lại, khi nó sẽ không còn không gian hoán đổi nữa.
BillThor

@BillThor Điều này là đúng - nếu bạn đang sử dụng tmpfsvà dự kiến ​​sẽ trao đổi với tư cách là cửa hàng sao lưu, bạn nên có "hoán đổi" đủ để đáp ứng nhu cầu tmpfs của bạn, cộng với một khoản dự phòng thích hợp cho hệ thống. (Đây không phải là điều tôi thường nghĩ đến vì hệ thống duy nhất tôi sử dụng tmpfsđược định cấu hình không được trao đổi, vì nó có thặng dư RAM và tôi đang sử dụng không gian tạm thời cho các tệp nhỏ được tạo / xóa nhanh chóng :)
voretaq7

2

Tùy thuộc vào kiến ​​trúc của bạn - bạn có thể không thực sự muốn sử dụng / tmp vì nó bị xóa sau mỗi lần khởi động lại. Nếu trang web của bạn xử lý việc tải lên cuối cùng, việc thay đổi trang này sang vị trí khác (thông qua php.ini) có thể là một ý tưởng; trong đó bạn có thể làm cho nó bất kỳ điểm gắn kết.

Như đã đề xuất trước đó, rất khuyến khích sử dụng LVM và gia tăng khi cần thiết.

Tôi cũng rất khuyến nghị một phân vùng dành riêng cho dữ liệu MySQL (bạn vẫn có thể gắn kết nó trong / var / lib / mysql).


Nói chung là một ý tưởng tốt để giả định rằng các tệp trong /tmpcó thể không có ở đó sau này - giúp bạn tránh khỏi những bất ngờ khó chịu sau này :-)
voretaq7
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.