小编Vla*_*kov的帖子

如何更改进程创建的文件的默认权限?

我在 Centos 6 x86 上运行游戏服务器(2004 年虚幻锦标赛)。我使用 sh 脚本在后台进程中启动它。这个进程(游戏服务器)会创建不同的文件(演示、日志),默认情况下它们都带有 0600 权限。我必须用一些应用程序处理它们,所以我想要的是更改它们的默认权限(例如,更改为 0644)。

我是 root,我有 umask 022,我创建的文件默认为 0644。但似乎这个游戏服务器进程没有继承我的 umask。我怎样才能改变它?我对 linux 还很陌生,所以如果能提供详细的答案,我们将不胜感激。

用于运行服务器的脚本:

#!/bin/sh
# Set the following to your UT2004 directory.
UT2004HOME=/home/ut2004

LOG=Server1.log

if [ ! -d "$UT2004HOME/Logs" ]; then
mkdir $UT2004HOME/Logs
fi

cd $UT2004HOME/System

while true; do

./ucc-bin server DM-Rankin-FE?game=XGame.xDeathMatch?Mutator=UTzoneTAv1.MutUTzoneTA,utcompv17a.MutUTComp,XWeapons.MutNoSuperWeapon,XGame.MutNoAdrenaline?MaxPlayers=2?DoubleDamage=False?TimedOverTimeLength=0?GameStats=True?AntiTCCSettings=NoMidGameChecks ini=server1.ini -nohomedir -lanplay &> $UT2004HOME/Logs/$LOG

DATE=20`date +%y%m%d`-`date +%H%M%S`
mv $UT2004HOME/Logs/$LOG $UT2004HOME/Logs/crash-$DATE.log

done;
Run Code Online (Sandbox Code Playgroud)

我把它放在一个 sh 文件中,然后在 putty shell 中作为 root 启动它作为后台进程使用 & 在字符串的末尾。

更新 #1

输出ls -ld $UT2004HOME/Logs

drwxr-xr-x 2 …
Run Code Online (Sandbox Code Playgroud)

permissions centos games

5
推荐指数
1
解决办法
6333
查看次数

标签 统计

centos ×1

games ×1

permissions ×1