Nir*_*mik 5 users ntfs restricted-access
我使用的是 Ubuntu 12.04。我有 4 个 NTFS 分区。我创建了 2 个用户:一名为我自己(管理员),另一名为家庭(标准/非管理员)。
我成功限制了该标准用户对我的主文件夹的访问。现在我想限制它访问我的所有 NTFS 分区。我怎样才能做到这一点?
我检查了“限制其他用户对 NTFS 分区的访问”,但尽管答案已被接受,但正如稍后的评论中所见,它似乎也没有帮助该OP。
使用以下命令打开 fstab 文件
gksudo gedit /etc/fstab
Run Code Online (Sandbox Code Playgroud)您应该在 /etc/fstab 文件中添加如下行,
/dev/sda7 /media/EXTRA ntfs-3g noauto,uid=XXX,unmask=7 0 0
Run Code Online (Sandbox Code Playgroud)
这XXX是我的用户 ID。id您可以使用命令找到您的分区,/dev/sda7这就是我要限制访问的分区。
创建一个文件夹,命名EXTRA如下/media/,
sudo mkdir /media/EXTRA
Run Code Online (Sandbox Code Playgroud)现在,每当您登录时,您都需要将其安装为,
sudo mount /dev/sda7 /media/EXTRA
Run Code Online (Sandbox Code Playgroud)完毕!
说明:
如果某个特定分区包含 VFAT 或 NTFS 文件系统,并且您只希望自己能够访问它,则非常简单:
将选项包含"noauto", "uid=XXX", and "umask=7"在 fstab 行中,并删除“user”和/或“users”选项(如果它们现在出现在那里)。
这意味着在启动时系统将显示该分区unmounted,并且只有您(以 root 身份操作,可能使用 sudo )才能挂载它。
安装后,它将由您的非特权用户拥有(假设该用户的 uid 是 XXX,它被赋予在 MDV 安装时安装时创建的第一个用户 - 检查以该用户身份运行的“id”命令,并调整 fstab相应地)并且所有其他本地用户将无法访问。
通过发出mount四次命令来安装受限制的 4 个分区是一项无聊的任务。为了减少这个无聊的任务,我编写了一个 shell 脚本:
#!/bin/bash
#Mount Unmount secret partitions now with choice of partition
function checkPartitions(){
local state=$1
local dev=$2
case $state in
"unmounted")
mount | grep -q $dev
if [ $? -eq 1 ]; then
echo $dev
fi
;;
"mounted")
mount | grep -q $dev
if [ $? -eq 0 ]; then
echo $dev
fi
;;
esac
}
function safeUnmount() {
local dev=$1
mount | grep -q $dev
if [ $? -eq 0 ]; then
echo "Device $dev found. Unmounting now"
sudo umount $dev
if [ $? -eq 0 ]; then
echo "Device $dev unmounted successfully."
else
echo "You are not root??"
fi
else
echo "Device $dev is already unmounted."
fi
}
function safeMount() {
local dev=$1
mount | grep -q $dev
if [ $? -eq 1 ]; then
echo "Device $dev not found. Mounting now"
sudo mount $dev
if [ $? -eq 0 ]; then
echo "Device $dev mounted successfully."
else
echo "You are not root??"
fi
else
echo "Device $dev is already mounted."
fi
}
echo -e "What you want to do? \n 1. Mount Secret Partitions \n 2. Unmount Secret Partitions"
read -p "Enter your choice :" choice
case $choice in
1)
echo -e "You want to Mount your secret partitions"
echo "-------List of Unmounted secret partitions-------"
checkPartitions "unmounted" "/dev/sdaX1"
checkPartitions "unmounted" "/dev/sdaX2"
checkPartitions "unmounted" "/dev/sdaX3"
checkPartitions "unmounted" "/dev/sdaX4"
anythingelse="y"
#echo -e "\n"
while [ $anythingelse == y -o $anythingelse == Y ]; do
read -p "Which partition should be mounted?" partNum
safeMount "/dev/sda"$partNum
read -p "Do you want to mount any other partition? [y/n]" anythingelse
done
;;
2)
echo -e "You want to Unmount your secret partitions\n"
echo "--------List of Mounted secret partitions--------"
checkPartitions "mounted" "/dev/sdaX1"
checkPartitions "mounted" "/dev/sdaX2"
checkPartitions "mounted" "/dev/sdaX3"
checkPartitions "mounted" "/dev/sdaX4"
anythingelse="y"
#echo -e "\n"
while [ $anythingelse == y -o $anythingelse == Y ]; do
read -p "Which partition should be unmounted?" partNum
safeUnmount "/dev/sda"$partNum
read -p "Do you want to unmount any other partition? [y/n]" anythingelse
done
;;
esac
Run Code Online (Sandbox Code Playgroud)
替换/dev/sdaX为您的 4 个分区。
另存secret-mount-unmount.sh为然后发出命令
chmod +x /path/to/file/secret-mount-unmount.sh
Run Code Online (Sandbox Code Playgroud)
双击该文件,然后点击Run in Terminal并继续。
| 归档时间: |
|
| 查看次数: |
2555 次 |
| 最近记录: |