SShortSingh.
Back to feed

Why Unix File Permissions Like 600, 644, and 755 Follow a Security Principle

0
·3 views

Unix-based operating systems use a 3x3 grid of permissions — owner, group, and others, each with read, write, and execute rights — to control file access. Numeric codes like 600, 644, and 755 compress these permissions into octal digits, where read equals 4, write equals 2, and execute equals 1. A private SSH key set to 600 means only the owner can read or write it, while a script at 755 allows anyone to read and run it but not modify it. These conventions reflect the principle of least privilege, which limits access to only what is strictly necessary for a given file's purpose. Tools like OpenSSH actively enforce these rules, refusing to load a private key if its permissions are too open, treating even the possibility of unauthorized access as a security risk.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

How to Diagnose a Windows Desktop App That Opens to a Blank Screen

A blank application window is a symptom, not a diagnosis, and requires a structured troubleshooting approach rather than random fixes. The first step is to observe what Windows is actually doing by checking Task Manager for the main process and any child processes like msedgewebview2.exe. Event Viewer logs from the same minute the blank screen appears can reveal whether a graphics driver, Visual C++ runtime, or WebView2 component is at fault. Testers should make only one reversible change at a time to isolate the cause, avoiding combined actions like reinstalling runtimes and clearing caches simultaneously. The workflow was developed around a real case involving Youdao Translate on Windows 11 but applies broadly to any desktop app that embeds a web-rendered interface.

0
ProgrammingDEV Community ·

What Is an Event Loop and Why Does It Matter for Modern Software?

An event loop is a programming paradigm that processes tasks as asynchronous events in a continuous loop, rather than relying on single or multi-threaded models. It was designed to address the inefficiencies of blocking I/O operations, where a thread sits idle waiting for a response instead of handling other work. Multi-threaded approaches can partially solve this but introduce overhead from thread synchronization and have a hard ceiling on throughput based on thread count. Technologies like Node.js, Redis, and Nginx use event loops as their core processing mechanism to handle high concurrency efficiently. Understanding this paradigm helps developers move beyond surface-level advice like 'don't block the event loop' and grasp the deeper performance trade-offs involved.

0
ProgrammingDEV Community ·

iCloud's 'Optimize Storage' silently evicted 69 files, halting a developer's publishing for 4 days

A developer's automated publishing system went dark for four days starting August 3, 2026, after macOS quietly evicted 69 local article files to iCloud under its 'Optimize Storage' feature. When disk usage hit 98%, macOS deleted local copies of files stored under Desktop and Documents, leaving them in a 'dataless' state invisible to automation scripts. All affected scripts exited with status 0, meaning the system registered no errors — it simply found no files to process, masking the failure entirely. Attempts to read dataless files returned EDEADLK (errno 11), a POSIX code macOS repurposes to signal a pending remote download rather than an actual deadlock. The incident highlights a critical risk for developers running automated workflows on machines with iCloud Drive enabled, as any folder synced to iCloud is vulnerable whenever disk pressure triggers storage optimization.