Skip to main content

OS File System Comparison

A file system is a compilation of functions that facilitate the reading, writing and executing of files in directories, including how to reference files and directories. File systems change the usability and stability of an operating system and its programs (utilities and applications). When people talk about a Windows-type operating system they assume it was built on the file systems "ntfs3" or "ntfs5". When people talk about a Linux-type operating system they assume it was built on the file systems "ext2", "ext3" or "ext4"; unless stated otherwise. When people talk about a BSD-type operating system they assume it was built on "ufs" or "ufs2". When people talk about a Solaris-type operating system they assume it was built on "ufs" or "zfs". Here's a not-so interesting comparison:

File System OS Type Max. File Max. Vol. Permissions Encryption Compression Recoverable
BtrFS Linux 8-16 EiB 16 EiB POSIX Yes Yes Yes
EXT2 Linux, BSD 16 GB - 2 TB 2-32 TB POSIX, SVR4 No No Yes
EXT3 Linux, BSD 16 GiB - 2 TiB 2-16 TiB POSIX, SVR4 No No No
EXT4 Linux, BSD 16 TiB 1 EB POSIX, SVR4 No No No
FAT32 Windows, Linux 4 GB 4 GB None No No Yes
HFS Linux, Mac OSX 2 GB 2 TB None, ACL No No No
HFS+ Linux, Mac OSX 8 EB 8 EB POSIX Yes Yes Yes
JFS Linux, Unix 4 PB 32 PB SVR4 No Yes No
NTFS3 Windows, Linux, BSD 2-16 TB 4 GiB None, ACL Yes Yes Yes
NTFS5 Windows 16 TB 64-256 TB ACL Yes Yes No
ReiserFS Linux, BSD 8 TiB - 1 EiB 16 TiB POSIX, SVR4 No No No
UFS2 BSD, Solaris 8 EB 8 EB SVR4 No No Yes
XFS Linux, Unix 8 EiB 16 EiB SVR4 No No No
ZFS BSD, Solaris 16 EB 16 EB SVR4 Yes Yes Yes

Do you have a suggestion about how to improve this blog? Let's talk about it. Contact me at David.Brenner.Jr@Gmail.com or 720-584-5229.

Comments

Popular posts from this blog

OpenStack+Ceph as Software-Defined Storage

SDS reduces the costs of the management of growing data stores by decoupling storage management from its hardware to allow for centralized management of cheaper, popular commodity hardware. The example SDS ecosystem uses open source software like OpenStack as a front-end interface on top of Ceph as the resource provider of a RADOS cluster of commodity solid-state drives. OpenStack provides user-friendly wrappers for accessing and modifying underlying Ceph storage. OpenStack comes in the form of distributed microservices with RESTful API's: Block (Cinder), File (Manila), Image (Glance), and Object (Swift). Each microservice can scale-out as a cluster of stand-alone services to accommodate the varying demands of high-growth storage. With OpenStack the underlying Ceph storage can address the block storage needs, file storage needs, image storage needs, and object storage needs of datacenters adopting open source as their new norm in an industry trend for high performace and high a

Network traffic monitoring in Linux with Python

You can investigate suspicious activity in your network traffic by collecting relevant machine data from your endpoint. You can use the machine data to create your own analysis. Before you start your investigation you will need to determine normal activity on your endpoint. Normal activity is the scope of functionality of the software on your endpoint during periods of low activity and high activity. You will need some kind of software that periodically collects specific machine data from your endpoint like my software developed in Python that's available for free download at https://github.com/davidbrennerjr/server-stats-collector Ingest one or more of the following machine data: Application specific logs from /var/log Raw dumps from sniffing at Layers 2-3 Raw dumps from /proc of kernel data structures Raw dumps of kernel routing tables General system-wide error messages from /var/log/syslog Do you

What are attack vectors?

In the generalized sense an attack vector is a path or means by which a hacker can gain unauthorized access to an endpoint in order to deliver a payload or to facilitate a crime. Attack vectors enable hackers to exploit vulnerabilities in the design of a network through the manipulation of applications and protocols. Attack vectors typically manipulate the software installed in the operating system of an endpoint. Examples of attack vectors are email attachments, pop-up windows, instant messages, service configurations, new software, and firewall modifications. Human ignorance or weaknesses could also be used for engineering attack vectors. For example, users could be fooled into weakening network defenses during times of remote collaboration and file sharing. Anti-virus software and firewalls do provide some defense or block attack vectors to some extent. Some of the mitigation measures used to thwart hackers usage of attack vectors include deep packet inspection, IP source trackers