我正在尝试在 RHEL5 上安装一个 3rd-party RPM 包,它依赖于 sqlite 3.4 版。根据 Yum 我已经安装了 3.3.6。
有没有办法列出依赖于 sqlite 3.3.6 的已安装包?
我有以下新的 logrotate 配置:
/var/log/nexus/nexus.log {
rotate 7
missingok
compress
delaycompress
copytruncate
daily
}
Run Code Online (Sandbox Code Playgroud)
当我运行时logrotate -d nexus
,我得到以下信息:
reading config file nexus
reading config info for /var/log/nexus/nexus.log
Handling 1 logs
rotating pattern: /var/log/nexus/nexus.log after 1 days (7 rotations)
empty log files are rotated, old logs are removed
considering log /var/log/nexus/nexus.log
log does not need rotating
Run Code Online (Sandbox Code Playgroud)
我的 /var/log/nexus/ 文件夹包含以下内容:
nexus.log
oldlogs.tar.gz
Run Code Online (Sandbox Code Playgroud)
为什么 LogRotate 不旋转 nexus.log 文件?我期待的是 nexus.log 文件会被截断,并且会创建一个新文件,比如 nexus.log-201106241000。
我正在将一台机器从 RHEL 4 迁移到 5。我们没有进行实际升级,而是创建了一个新的 VM(两台机器都在云中),我正在两者之间复制数据。
我遇到了以下文件,我需要将其从新机器中删除,但无法删除,即使以 root 身份运行:
-rw------- 1 2003 2003 219 jan 11 14:22 .bash_history
Run Code Online (Sandbox Code Playgroud)
该文件位于 /home/USER/ 中,其中 USER 是构建机器的人的帐户。他在旧机器上没有帐户,所以我试图删除他的主文件夹,以便新机器与旧机器相符,但出现以下错误:
rm: ne peut enlever `.bash_history': Opération non permise
Run Code Online (Sandbox Code Playgroud)
(法文翻译:不能删除XXX,不允许操作)
我曾尝试使用以下命令,但这没有任何区别:
chattr -i .bash_history
Run Code Online (Sandbox Code Playgroud)
是创建 ID 为 2003 的用户的唯一选择,还是有其他解决方法?
我试过使用rm -f
,我得到了同样的错误。我chmod 777
首先使用相同类型的错误。
我已经能够访问chown
包含我要删除的文件的文件夹,所以它是:
drwx------ 2 root root 1024 jan 24 15:58 USER
Run Code Online (Sandbox Code Playgroud)
lsattr
按照 Angus 的建议运行命令给出了以下输出:
-----a------- USER/.bash_history
------------- USER/..
------------- USER/.
Run Code Online (Sandbox Code Playgroud)
该文件被标记为仅附加 - 在使用更改此标志时,chattr -a .bash_history
我能够删除该文件。
如果我执行以下操作:
sudo su -
//enter password
exit
exit
//login again straight away
sudo su -
Run Code Online (Sandbox Code Playgroud)
sudo 的第二次调用不需要密码,因为即使我再次注销,我仍然在某个时间限制内,这意味着不需要再次提示我输入密码。
因为我正在尝试一些新的 privs 以确保它们工作,所以在我等待超时发生时这真的减慢了我的速度。
有没有我可以运行的命令来重置超时?
顺便说一句,我不想更改超时或影响其他用户!
有没有办法记录进程创建的所有传出连接?我知道,netstat
但这似乎更像是一个时间点的快照,而不是在一段时间内运行和记录信息的东西。
我只需要 IP 或主机名、端口和建立连接的过程。
当我在我们的 RHEL 机器上工作时,我习惯sudo su -
切换到 root。有一天,一个错字意味着我输入了sudo su --
- 在我看来,一切都与使用单个连字符相同,只是我在发出命令之前位于同一个文件夹中(我发现自己在 中使用一个连字符/root
)。
还有其他区别吗?在我知道我想在同一目录中工作的情况下使用它是否安全?
如果我运行以下命令:
find . -name "*.jar" -type f -ctime +1
Run Code Online (Sandbox Code Playgroud)
我没有得到任何结果,而如果我运行:
find . -name "*.jar" -type f -ctime 1
Run Code Online (Sandbox Code Playgroud)
我得到结果。
如果我使用此命令启动应用程序:
/path/to/my/command >> /var/log/command.log
Run Code Online (Sandbox Code Playgroud)
并且命令没有返回,有没有办法从另一个提示中查看 STDOUT 重定向设置为什么?
我正在寻找类似的东西
cat /proc/PID/redirects
Run Code Online (Sandbox Code Playgroud)
或者
ps -??? | grep PID
Run Code Online (Sandbox Code Playgroud)
但任何方法都可以。
我在一个名为的组中有一些用户,aa
我需要授予他们写入当前tomcat:tomcatdeploy
.
执行此操作的直接方法是将所有用户tomcatdeploy
一一添加到组中。
是否可以通过某种方式将组添加到组中,说组aa
的成员也自动成为成员?tomcatdeploy
aa
tomcatdeploy
还是试图将 UNIX 权限方案推得太远?
我mv a-folder /home/me
在一台机器上跑了一半,目标设备装满了。
a-folder
由各种子目录中的文件夹和文件组成。
mv
在移动成功完成之前是否保持源文件夹不变?
源文件夹和目标文件夹位于不同的文件系统上。
我问的原因是我在错误的机器上运行了这个命令,所以如果源文件夹完好无损,那么我的生活就轻松多了:)