linux主目录bash,关于bash:不能在主目录中使用mkdir:权限被拒绝(Linux Lubuntu)

在Linux上,用户遇到了在主目录下创建bin目录时收到'权限被拒绝'的错误。问题在于尝试在/home目录下创建目录,而不是在个人主目录中。解决方案是使用~符号或$HOME环境变量指向个人主目录,并可能需要使用sudo来获取权限。此外,提到了chown和fuser命令,但这些不是直接解决权限问题的方法。正确的做法是确保脚本在个人目录内创建目录,并根据需要使用sudo。
摘要由CSDN通过智能技术生成

我正在尝试使用mkdir命令在Linux上的主目录中创建一个目录,但是我收到了"权限被拒绝"错误。 我最近在笔记本电脑上安装了Lubuntu,并在计算机上拥有唯一的用户配置文件。

这是在我的命令行上发生的事情:

jdub@Snowball:~$cd /home

jdub@Snowball:/home$ mkdir bin

mkdir: cannot create directory ‘bin’: Permission denied

jdub@Snowball:/home$

如何获得对此文件夹的访问权限? 我正在尝试编写一个脚本并按照教程进行操作:http://linuxcommand.org/wss0010.php

谢谢你的帮助!

/home不是您的主目录; 它是一个包含每个人主目录的文件夹。 您的主目录是/home/my_user_name; 你也可以简单地使用~,bash扩展到你的主目录。

正如@ kirbyfan64sos在评论中注明,/home不是您的主目录(a.k.a.主文件夹):

/home是一个没有用户特定组件的绝对文字路径这一事实提供了一个线索。

虽然/home恰好是基于Linux的系统上所有用户特定主目录的父目录,但您不应该依赖它,因为这在不同平台上有所不同:例如,OS X上的等效目录是< X3>。

所有Unix平台的共同点是以下导航到/引用您的主目录的方法:

使用带有NO参数的cd更改为您的主目录。即,使您的家庭目录。工作目录。

例如:cd # changes to home dir; e.g., '/home/jdoe'

在路径字符串的开头,未加引号的~本身/未加引号的~/表示您的主目录。 /从你家里开始的路径。这被称为波浪扩展(见man bash)

例如:echo ~ # outputs, e.g., '/home/jdoe'

$HOME - 作为未加引号或最好是双引号字符串的一部分 - 指的是你的家庭目录。 HOME是预定义的,特定于用户的环境变量:

例如:cd"$HOME/tmp" # changes to your personal folder for temp. files

因此,要创建所需的文件夹,您可以使用:

mkdir"$HOME/bin"  # same as: mkdir ~/bin

请注意,您家外的大部分地点都是。需要超级用户(root用户)权限才能创建文件或目录 - 这就是您遇到Permission denied错误的原因。

您可以尝试使用'sudo'编写命令:

sudo mkdir DirName

如果您打算稍后运行需要权限的自动化脚本,这将不会很好,它会强制您稍后在可能存在问题的实例中使用sudo。

@AmyPellegrini使用sudo创建目录后,可以使用chown -R将所有权更改为自己。 这将解决许可问题。

尝试运行fuser命令

[root@guest2 ~]# fuser -mv /home

USER PID ACCESS COMMAND

/home: root 2919 f.... automount

[root@guest2 ~]# kill -9 2919

已知autofs服务会导致此问题。

你可以使用命令

#service autofs stop

然后再试一次。

这与这个问题无关,而且是糟糕的建议。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值