Blob Blame History Raw
diff --git a/src/main/java/tachyon/worker/WorkerStorage.java b/src/main/java/tachyon/worker/WorkerStorage.java
index 592ddf8..95bf1ce 100644
--- a/src/main/java/tachyon/worker/WorkerStorage.java
+++ b/src/main/java/tachyon/worker/WorkerStorage.java
@@ -25,6 +25,9 @@ import java.io.RandomAccessFile;
 import java.net.InetSocketAddress;
 import java.nio.ByteBuffer;
 import java.nio.channels.FileChannel.MapMode;
+import java.nio.file.Files;
+import java.nio.file.attribute.PosixFilePermission;
+import java.nio.file.attribute.PosixFilePermissions;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.HashSet;
@@ -513,10 +516,16 @@ public class WorkerStorage {
   private void initializeWorkerStorage() throws IOException, FileDoesNotExistException,
   SuspectedFileSizeException, BlockInfoException, TException {
     LOG.info("Initializing the worker storage.");
+    
+    // Set Default directory permissions to 775
+    Set<PosixFilePermission> perms = PosixFilePermissions.fromString("rwxrwxr-x");
+    
     if (!mLocalDataFolder.exists()) {
       LOG.info("Local folder " + mLocalDataFolder + " does not exist. Creating a new one.");
       mLocalDataFolder.mkdir();
       mLocalUserFolder.mkdir();
+      Files.setPosixFilePermissions(mLocalDataFolder.toPath(), perms);
+      Files.setPosixFilePermissions(mLocalUserFolder.toPath(), perms);
       return;
     }
 
@@ -534,6 +543,7 @@ public class WorkerStorage {
       }
     }
     mLocalUserFolder.mkdir();
+    Files.setPosixFilePermissions(mLocalUserFolder.toPath(), perms);
 
     mUnderfsOrphansFolder = mUnderfsWorkerFolder + "/orphans";
     if (!mUnderFs.exists(mUnderfsOrphansFolder)) {