Articles of unix

不能写入nginx www文件夹

我最近在Ubuntu 12.04的开发机器上安装了nginx。 我目前以myuser身份login,在安装nginx后,我设置了以下文件权限(nginx www文件夹属于root用户,所以我想改变它,以便用myuser编辑文件): # add myuser to nginx group sudo usermod -a -G www-data myuser # change ownership for www folder to nginx user (www-data) chown -R www-data:www-data /usr/share/nginx/www chmod -R 775 /usr/share/nginx/www 然后我去/ usr / share / nginx / www并尝试创build一个新的文件夹/文件。 我总是获得权限被拒绝。 以下是该文件夹的列表: drwxrwxr-x 2 www-data www-data 4096 Apr 29 11:01 . drwxrwxr-x 3 […]

为什么需要在新贵脚本中使用exec?

我经常看到一些新贵脚本有使用exec ,有什么意义呢? 似乎删除exec的脚本也工作? 例如 start on runlevel [2345] stop on runlevel [06] exec /path/to/program

创build一个到Unix套接字的链接

有没有可能创build一个unix套接字的硬链接? 我正在创build一个监狱和符号链接将无法正常工作,所以我正在寻找一个解决scheme,如何在chrootted环境中提供一个unix套接字。 我唯一的想法是使用像netcat这样的东西,但有没有可靠的可能性?

chattr – 如何更改文件+我的属性,而不使用chattr

这是问题。 我的服务器可能被黑客入侵。 我想改变一个configuration文件,但它是不可变的(具有+ i属性),所以我不能编辑它。 试图在文件上执行“chattr -i”不起作用,因为我没有在chattr命令上执行写入。 在chattr命令上尝试chmod不起作用,因为chattr命令也具有+ i属性。 有没有办法删除该属性,而不使用chattr? 服务器被黑了,可能需要重新安装,但同时我需要一个临时的解决scheme。

期望脚本错误发送:Spawn id exp4在执行时未打开

更新:为其他人添加工作代码 CREDITS: https : //serverfault.com/users/30957/glenn-jackman @Glenn对不起! 只是道歉,我的意思是! 对不起,格伦你的代码需要一些改变,我在这里添加并得到它的工作。 谢谢你! 抱歉我的粗鲁。 这里是任何需要它的人的固定代码。 你可以把这些IP放在一个文本文件中,然后放在servers_addresses里面。 像servers_addresses =('猫ip_list.txt')在IP列表添加IP是这样的10.10.10.1 10.10.10.2 10.10.10.3 如果需要还有更多的例子。 运行一个命令: ./test.sh "sudo cat /etc/hosts" 运行多个命令 ./test.sh "sudo cat /etc/hosts & /etc/init.d/network status" search并replace ./test.sh "sed -i -e 's/SEARCH_STRING/REPLACE_STRING/g' /tmp/FileNAME.txt" 完整的代码: #!/bin/bash (( $# != 1 )) && { echo >&2 "Usage: $0 \"[COMMAND]\""; exit 1; } servers_addresses=( […]

防火墙:允许通过来源authentication的所有stream量。 一个打开的SSH连接

我正在寻找一种避免在testing和开发服务器上始终编辑防火墙规则的方法。 我不想打开所有的端口。 所以我想也许有一种方法来自动build立ssh连接来源的所有stream量。 (几年后,有人告诉我,他们是这样做的开发/testing服务器 – >没有根和防火墙编辑要求和应用程序不需要保护) 我知道我可以使用ssh隧道,但问题在于dynamic端口应用程序,多端口应用程序和纯粹的工作开销。 IpTables和其他防火墙可能不知道一个SSH连接是否通过身份validation,但有没有解决办法或替代? (例如build立超过5秒 – >发布/私钥自动断开失败) input下降 允许循环 允许SSH 允许本地networking 允许使用build立的ssh连接来源的所有stream量。 除了最后一条之外,所有的规则都是直截了当的。 不幸的是,我没有与我曾经谈过的人的联系信息,我不能在一个小时的研究中挖掘任何相关/相似的东西。 这样的事情甚至可能吗? 我很欣赏任何input:)

将Apachevariables传递给SetHandler指令

我试图在我的Apache(2.4.18)服务器(使用mod_proxy_fcgi )上dynamic确定用于不同分离的PHP“apps”(不同的套接字导致不同的PHP-FPM池)的Unix套接字 : <DirectoryMatch "/home/apps/app_(?<appname>[a-zA-Z]+)"> <FilesMatch \.php$> SetHandler "proxy:unix://var/run/app_%{env:MATCH_APPNAME}.sock|fcgi://localhost:42001" </FilesMatch> </DirectoryMatch> 不幸的是, Apache与SetHandler指令一起使用时, 似乎无法识别/评估 <DirectoryMatch>指令中由正则expression式匹配定义的variables 。 error.log说: [proxy:error] (2)No such file or directory: AH02454: FCGI: attempt to connect to Unix domain socket /run/app_%{MATCH_APPNAME}e.sock (*) failed 如何将一个variables传递给SetHandler指令? 当我使用UDS的“刚性”path(例如"proxy:unix://var/run/app_someappname.sock|fcgi://localhost:42001" ,我的PHP-FPM正常工作,但似乎有在它使用一个variables时出现问题。 我也尝试使用几个variables连接在一起来构buildpath: <FilesMatch \.php$> Define one "proxy:unix://var/run/app_" Define two ".sock|fcgi://localhost:42001" Define final ${one}%{MATCH_APPNAME}e${two} Header set HANDLER_PATH ${final} </FilesMatch> […]

.profile更改后的AIX更新环境

我正在运行AIX 5.3。 我对用户的.profile文件进行了更改(添加了几个环境variables)。 有没有一个命令,我可以用来重新处理特定用户的.profile文件,而不必注销,然后回来?

存储1000张照片的最佳文件结构(不同大小)

我正在开发一个让人们上传图片的网站。 我们调整每个图像的大小4。 我们期待着很多很多的图像,并且正在考虑如何提高文件结构的性能,因为我们并不需要一个10000个文件的目录。 有人对我们如何组织文件有任何build议吗? 显而易见的选项是 每个用户都有自己的文件夹,并在每个大小的文件夹内 (四个文件夹中的每一个都可以容纳很多图像) /user_uploads/user01/ |-/size_thumb/ |-/size_small/ |-/size_medium/ |-/size_large/ /user_uploads/user02/ |-/size_thumb/ |-/size_small/ |-/size_medium/ |-/size_large/ etc etc 或每个用户的照片存储在每个用户的一个文件夹 (每个目录更多的照片,但较less的整体目录) /user_uploads/user01/ /user_uploads/user02/ etc etc 每张照片按大小存储 每个目录有很多很多的照片(可能有更多的子文件夹?) /user_uploads/small/ /user_uploads/medium/ /user_uploads/large/ /user_uploads/thumbs/ 任何人有任何想法? 我想我们可能会去/user_uploads/userID/除非任何人有任何build议。 (现在一切都将托pipe在一台计算机上,所以我们不必担心文件在不同的服务器上)

有没有办法来限制系统日志

我们使用Log4J及其SyslogAppender将消息发送到中央系统日志服务器,所有服务器都运行在Unix机器上。 有没有一种方法(无论是Java还是Unix)来限制发送的消息数量,以避免服务器不稳定,从而影响networking? 我能想到的唯一select是将日志级别设置得更高,以便实际发送更less的消息,但是这不是理想的,因为重要的消息可能会被压制在本来是自身行为的机器上。 我认为在一个理想的世界里,一个dynamic变化的水平会是很好的:如果每秒消息数量超过某个水平,那么门槛会上升,但同时这听起来有点像过度杀伤力。 有任何想法吗? 谢谢 丰富