Thu muc tmp trong linux

Sự khác nhau giữa thư mục /var/tmp và /tmp trong LinuxCuongquach.com  | Bạn có hay nhầm lẫn giữa vai trò của /var/tmp /tmp trong Linux không? Bạn có muốn biết sự khác nhau giữa 2 thư mục này như thế nào không? Mình tin là các bạn cần biết đó vì đây là một trong các câu hỏi rất hay được sử dụng khi phỏng vấn. Cùng CuongQuach tìm hiểu sự khác nhau giữa /var/tmp/tmp nhé.

Thu muc tmp trong linux

Có thể bạn cũng quan tâm chủ đề khác
– Top 20 ví dụ ‘mysqladmin’ quản trị database mysql trên Linux
– Ngxtop – Monitor log dịch vụ Nginx theo thời gian thực
– Hướng dẫn cấu hình VLAN Tagging trên Linux Interface
– Ghi log các lệnh được thực thi trên Linux
– 4 cách kiểm tra thông tin phiên bản OS CentOS/RHEL

Contents

  • Thư mục /var/tmp và /tmp là gì?
  • Sự khác nhau giữa thư mục /var/tmp và /tmp
  • Tổng kết

Đúng như tên gọi, cả 2 thư mục /var/tmp/tmp đều được sử dụng để lưu trữ dữ liệu mang tính tạm thời trong hệ thống Linux của bạn. Bạn có thể chứa dữ liệu trên /var/tmp và cả /tmp tạm thời và tiếp tục công việc của mình. Cả 2 hệ thống tập tin  này đều được các chương trình/dịch vụ sử dụng để lưu trữ tạm thời các thông tin như pid, session,…

Là một quản trị viên hệ thống, bạn có thể sử dụng không gian trong 2 file này để chứa gói RPM cho bảng vá, cho mục đích kiểm thử hoặc bất ký thứ gì khác bạn muốn lưu trữ tạm thời.

Sự khác nhau giữa thư mục /var/tmp và /tmp

Sự khác nhau chính giữa hai hệ thống tập tin này là thời gian lưu trữ dữ liệu tạm.

Dữ liệu lưu trữ trong thư mục /var/tmp lâu hơn so với /tmp. Mặc định dữ liệu giữ trong /tmp chỉ 10 ngày, trong khi /var/tmp là tận 30 ngày. Hơn nữa, một sự khác biệt nữa là dữ liệu trong /tmp sẽ được xóa khi máy chủ reboot.

Trong RHEL 7, bạn có thể sử dụng /tmp để mount point đến filesystem RAM Disk (Xem thêm: Tìm hiểu RAM Disk là gì ? tmpfs là gì trên Linux?) .

Những file cấu hình sau sẽ liên quan đến /var/tmp/tmp, cả 2 file cấu hình này đều là mặc định của hệ thống đã setup sẵn và quy định rõ thời gian lưu trữ dữ liệu trên 2 thư mục.

  • RHEL 6/CentOS 6: /etc/cron.daily/tmpwatch
# cat/etc/cron.daily/tmpwatch

#! /bin/sh
flags=-umc
/usr/sbin/tmpwatch "$flags" -x /tmp/.X11-unix -x /tmp/.XIM-unix \
	-x /tmp/.font-unix -x /tmp/.ICE-unix -x /tmp/.Test-unix \
	-X '/tmp/hsperfdata_*' -X '/tmp/.hdb*lock' -X '/tmp/.sapstartsrv*.log' \
	-X '/tmp/pymp-*' 10d /tmp
/usr/sbin/tmpwatch "$flags" 30d /var/tmp
for d in /var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?}; do
    if [ -d "$d" ]; then
	/usr/sbin/tmpwatch "$flags" -f 30d "$d"
    fi
done

Nếu bạn muốn tìm hiểu cách quản lý các file/thư mục tạm trên CentOS/RHEL6 với tmpwatch, có thể tham khảo bài viết này : LINK

  • RHEL 7/CentOS 7: /usr/lib/tmpfiles.d/tmp.conf
# cat /usr/lib/tmpfiles.d/tmp.conf

#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.

# See tmpfiles.d(5) for details

# Clear tmp directories separately, to make them easier to override
v /tmp 1777 root root 10d
v /var/tmp 1777 root root 30d

# Exclude namespace mountpoints created with PrivateTmp=yes
x /tmp/systemd-private-%b-*
X /tmp/systemd-private-%b-*/tmp
x /var/tmp/systemd-private-%b-*
X /var/tmp/systemd-private-%b-*/tmp
You have new mail in /var/spool/mail/root

Nếu bạn muốn tìm hiểu cách quản lý các file/thư mục tạm trên CentOS/RHEL 7, có thể tham khảo bài viết này : LINK

Tổng kết

Như vậy bài so sánh của CuongQuach về 2 thư mục /var/tmp và /tmp đã hoàn tất rồi. Rất đơn giản và dễ hiểu phải không nào. Cám ơn các bạn đã theo dõi nhé.

Nguồn: https://cuongquach.com/

Nội dung

  • Thư mục /tmp và /var/tmp là gì? 
    • / tmp: Tệp tạm thời
    • /var/ tmp: Các tệp tạm thời được bảo tồn giữa các lần khởi động lại hệ thống
  • Sự khác nhau giữa thư mục /var/tmp và /tmp

Thư mục /var/tmp và /tmp thường dễ bị nhầm lẫn trong Linux. Chính vì vậy, bạn cần phải nhận thấy sự khác nhau giữa 2 thư mục này. Hãy cùng tìm hiểu sự khác nhau giữ /var/tmp và /tmp nhé!

Thư mục /tmp và /var/tmp là gì? 

/ tmp: Tệp tạm thời

Thư mục /tmp phải được cung cấp cho các chương trình yêu cầu tệp tạm thời.

Các chương trình không được cho rằng bất kỳ tệp hoặc thư mục /tmp nào được bảo tồn giữa các yêu cầu của chương trình.

Thu muc tmp trong linux

Cơ sở lý luận:

Chuẩn POSIX.1-2008 của IEEE liệt kê các yêu cầu tương tự như phần trên. Mặc dù dữ liệu được lưu trữ /tmp có thể bị xóa theo cách dành riêng cho trang web, nhưng các tệp và thư mục nằm trong /tmp sẽ bị xóa bất cứ khi nào hệ thống được khởi động.

FHS đã thêm khuyến nghị này trên cơ sở tiền lệ và thông lệ lịch sử, nhưng không biến nó thành một yêu cầu vì quản trị hệ thống không nằm trong phạm vi của tiêu chuẩn này.

/var/ tmp: Các tệp tạm thời được bảo tồn giữa các lần khởi động lại hệ thống

Thư mục /var/tmp được cung cấp cho các chương trình yêu cầu các tệp hoặc thư mục tạm thời được bảo tồn giữa các lần khởi động lại hệ thống. Do đó, dữ liệu được lưu trữ trong /var/tmp liên tục hơn dữ liệu trong /tmp.

Các tập tin và thư mục nằm trong /var/tmp không được xóa khi hệ thống được khởi động. Mặc dù dữ liệu được lưu trữ /var/tmp thường bị xóa theo cách cụ thể của trang web, nhưng chúng tôi khuyên bạn nên xóa việc xảy ra ở một khoảng thời gian ít thường xuyên hơn /tmp.

Nhân xét:

Cả 2 thư mục /var/tmp và /tmp đều được sử dụng để lưu trữ dữ liệu mang tính tạm thời trong hệ thống Linux của bạn.

Bạn có thể chứa dữ liệu trên /var/tmp và cả /tmp tạm thời và tiếp tục công việc của mình. Cả 2 hệ thống tập tin này đều được các chương trình/dịch vụ sử dụng để lưu trữ tạm thời các thông tin như pid, session,…

Nếu là một quản trị viên hệ thống, bạn có thể sử dụng không gian trong 2 file này để chứa các gói RPM cho bảng vá, cho mục đích kiểm thử hoặc bất kỳ thứ gì khác bạn muốn lưu trữ tạm thời.

Sự khác nhau giữa thư mục /var/tmp và /tmp

Thời gian lưu trữ dữ liệu tạm chính là sự khác nhau chính giữa 2 hệ thống tập tin này.

Dữ liệu lưu trữ trong thư mục /var/tmp lâu hơn so với /tmp. Mặc định dữ liệu giữ trong /tmp chỉ 10 ngày trong khi /var/tmp là tận 30 ngày. Hơn nữa, một sự khác biệt nữa chính là dữ liệu trong /tmp sẽ được xóa đi khi máy chủ reboot.

Thu muc tmp trong linux

Trong RHEL 7, bạn có thể sử dụng /tmp để mount point đến filesystem RAM Disk.

Những file cấu hình sau sẽ liên quan đến /var/tmp và /tmp, cả 2 file cấu hình này đều là mặc định của hệ thống đã setup sẵn và quy định rõ thời gian lưu trữ dữ liệu trên 2 thư mục.

RHEL 6/CentOS 6: /ect/cron.daily/tmpwatch

# cat/etc/cron.daily/tmpwatch




#! /bin/sh

flags=-umc

/usr/sbin/tmpwatch "$flags" -x /tmp/.X11-unix -x /tmp/.XIM-unix \

-x /tmp/.font-unix -x /tmp/.ICE-unix -x /tmp/.Test-unix \

-X '/tmp/hsperfdata_*' -X '/tmp/.hdb*lock' -X '/tmp/.sapstartsrv*.log' \

-X '/tmp/pymp-*' 10d /tmp

/usr/sbin/tmpwatch "$flags" 30d /var/tmp

for d in /var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?}; do

    if [ -d "$d" ]; then

/usr/sbin/tmpwatch "$flags" -f 30d "$d"

    fi

done

RHEL 7/CentOS 7: /usr/lib/tmpfiles.d/tmp.conf

# cat /usr/lib/tmpfiles.d/tmp.conf




#  This file is part of systemd.

#

#  systemd is free software; you can redistribute it and/or modify it

#  under the terms of the GNU Lesser General Public License as published by

#  the Free Software Foundation; either version 2.1 of the License, or

#  (at your option) any later version.




# See tmpfiles.d(5) for details




# Clear tmp directories separately, to make them easier to override

v /tmp 1777 root root 10d

v /var/tmp 1777 root root 30d




# Exclude namespace mountpoints created with PrivateTmp=yes

x /tmp/systemd-private-%b-*

X /tmp/systemd-private-%b-*/tmp

x /var/tmp/systemd-private-%b-*

X /var/tmp/systemd-private-%b-*/tmp

You have new mail in /var/spool/mail/root

Chúc bạn thành công!

Thu muc tmp trong linux

Điều hướng bài viết