LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2440|回复: 9

请教一个关于linux下不保存命令历史记录的问题

[复制链接]
发表于 2007-8-29 10:22:51 | 显示全部楼层 |阅读模式
我们单位有一台公用机器,大家通过ssh远程登录,然后su成root,不知道为什么其他人的命令都能保存在/home/username/.bash_history下,或者在root的根目录下的.bash_history中,可有一个用户不知道设置了什么,他运行过得命令一个也不保存,也不可能是运行了history -c,因为所有他的运行历史都没有记录;也没有改动HISTSIZE文件的默认值,请教各位这是怎么回事?
发表于 2007-8-29 10:43:24 | 显示全部楼层
可以设
  1. HISTIGNORE=*
复制代码
或者
  1. HISTFILE=/dev/null
复制代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-29 10:46:09 | 显示全部楼层
Post by biinn
可以设
  1. HISTIGNORE=*
复制代码

或者
  1. HISTFILE=/dev/null
复制代码

您说的这个是在/etc/profile中设置吗?可是那个用户这些地方都没有设置,请问还有其他的可能吗?
回复 支持 反对

使用道具 举报

发表于 2007-8-29 12:02:56 | 显示全部楼层
不需要在任何文件中设置。
ssh 登陆之后,在命令行下运行
set HISTIGNORE=*
或者
export HISTIGNORE=*
以后的命令就不会被保存了。
回复 支持 反对

使用道具 举报

发表于 2007-8-29 12:57:30 | 显示全部楼层
为何会有这样的机器容许大家都能 su 成 root?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-29 14:37:24 | 显示全部楼层
Post by d00m3d
为何会有这样的机器容许大家都能 su 成 root?
这是我们共用的测试机,root也是有密码的
Post by biinn
不需要在任何文件中设置。
ssh 登陆之后,在命令行下运行
set HISTIGNORE=*
或者
export HISTIGNORE=*
以后的命令就不会被保存了。
谢谢,这种情况能不能以root身份屏蔽呢,就是怎么才能不让他清除命令记录,也就是让他执行的“set HISTIGNORE=*”无效,呵呵
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-29 17:15:03 | 显示全部楼层
Post by biinn
不需要在任何文件中设置。
ssh 登陆之后,在命令行下运行
set HISTIGNORE=*
或者
export HISTIGNORE=*
以后的命令就不会被保存了。
刚才在机器上试了一下,“export HISTIGNORE=*”是可以实现不保存历史命令的,可是“set HISTIGNORE=*”好像不起作用,请问是怎么回事?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-30 13:26:29 | 显示全部楼层

各位请帮忙

各位,请看我最后两个帖子,还有问题没有解决,请帮忙,谢谢
回复 支持 反对

使用道具 举报

发表于 2007-8-30 13:40:50 | 显示全部楼层
因为你用的是sh,而不是csh。
回复 支持 反对

使用道具 举报

发表于 2007-10-5 21:25:45 | 显示全部楼层
Post by cocke
这是我们共用的测试机,root也是有密码的


谢谢,这种情况能不能以root身份屏蔽呢,就是怎么才能不让他清除命令记录,也就是让他执行的“set HISTIGNORE=*”无效,呵呵


这就要看谁比谁更熟悉系统了:)

既然大家都可以变成root那就没有谁能限制谁的问题了

实在需要记录命令可以重新编译bash让它把所有命令写到syslog中,当然如果他还其他shell就没有办法了 :)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表