对不起,但是我对linux不太了解,我总是在其他环境中开发,我用 electronJS 制作了一个跨平台应用程序,我需要用该代码创建一个目录
let staticPath = "/opt/pcapp/resources/monitor";
if (!fs.existsSync(staticPath)) {
fs.mkdirSync(staticPath);
}
在Windows和Mac中,它像超级按钮一样工作,但是在Linux-Ubuntu上,我安装了该应用程序,由于需要超级用户权限,因此出现此错误。
将要处理该应用程序的用户将没有超级用户特权
现在,我想知道是否可以在不使用的情况下授予在应用程序工作目录 / opt / pcapp / resources / monitor 中创建,更新和删除某些文件和目录的权限的方法> SUDO 或其他内容。
答案 0 :(得分:1)
我可以想到两种选择。
1)ACL,将花费一些学习时间。 2)简单的权限和组,可以很容易地完成。
我创建了一个群组mygroup,并向其中添加了几个用户。
# chmod 02770 /opt/pcapp/resourcees/monitor
# chgrp mygroup /opt/pcapp/resourcees/monitor
然后我更改您希望用户有权访问的文件夹的权限和组:
# ls -ld /opt/pcapp/resourcees/monitor
drwxrws---. 4 root mygroup 4096 Dec 6 17:23 /opt/pcapp/resourcees/monitor
您现在应该看到以下内容:
$ touch /opt/pcapp/resourcees/monitor/testfile1
$ ls -ld /opt/pcapp/resourcees/monitor/testfile1
-rw-rw-r--. 1 user2 mygroup 0 Dec 6 17:29 /opt/pcapp/resourcees/monitor/testfile1
现在,在文件夹中创建的所有新文件将具有一个mygroup组。您将不得不更改现有的文件和文件夹。
作为用户2
$ rm -v /opt/pcapp/resourcees/monitor/testfile1
removed ‘/opt/pcapp/resourcees/monitor/testfile1’
作为用户1
import pandas as pd
df=pd.read_excel("/home/arrow/PANDAS/IPL.xls")
print(df)
df.all()
df.info()
#Task1
df.shape
df.Year.value_counts()
df.Winning_Team.value_counts()
len(df[df['Winning_Team']=="Chasing"])
len(df[df['Winning_Team']=="FirstBatting"])
len(df[df['Winning_Team']=="Match Tied"])
bf_won=[]
tc_won=[]
tied=[]
total=[]
g=df.groupby('Year')
for yr,data_df in g:
print(df[df.Year==yr])
如果这还不够详细,请阅读有关Linux ACL的信息。
希望这会有所帮助。