在 AIX 下,我可以使用以下命令检查umask所有用户:
cut -d : -f 1 /etc/passwd | while read ONELINE; do lsuser -a umask "$ONELINE"; done
Run Code Online (Sandbox Code Playgroud)
但是如何umask在 Linux 下检查所有用户的设置?(su对每个用户然后umask命令?有没有更好的方法?)
更新1:
这su对所有用户来说并不是最好的,因为在一些 RHEL 服务器上,一些用户的默认 shell 是暂停/关闭..:
shutdown:x:6:0:shutdown;asdf;asdf;F:/sbin:/sbin/shutdown
Run Code Online (Sandbox Code Playgroud)
所以如果我su对用户...然后服务器关闭?
UPDATE2:我为一个非 su 的答案创建了一个赏金。
如何找出给定目录中最近访问的文件?
我可以使用该find命令列出最后n几分钟内修改/访问的所有文件。但在我的情况下,我不确定最后一个文件何时被修改/访问?我所需要的只是列出所有其他子文件或子目录中最近访问/修改的所有文件,例如按访问/修改时间排序。
那可能吗?
我正在使用最新版本的 netcat ( v1.10-41.1),它似乎没有 IPv6 地址的选项(就像-6旧版本的nc)。
如果我输入nc -lvnp 2222并检查监听端口netstat -punta,服务器似乎只监听2222IPv4 地址的端口:
tcp 0 0 0.0.0.0:2222 0.0.0.0:* LISTEN 2839/nc
Run Code Online (Sandbox Code Playgroud)
tcp6 不活跃,例如,我的 apache2 服务器:
tcp6 0 0 :::80 :::* LISTEN -
Run Code Online (Sandbox Code Playgroud) 我最近设置了 Fedora 28 和 Ubuntu 18.04 系统,并想在这两个系统上配置我的主要用户帐户,以便我可以在sudo不提示输入密码的情况下运行命令。
我怎样才能在各自的系统上做到这一点?
使用 Ubuntu 12.04 LTS,我的问题是,如果我在终端窗口中启动了一个应用程序,那么在没有先正确退出应用程序的情况下关闭终端窗口有什么不好的地方。例如,我使用 MATLAB。我打开一个终端并输入
matlab -nodisplay -nodesktop -nosplash
Run Code Online (Sandbox Code Playgroud)
然后运行一堆脚本。那我也可以
exit
Run Code Online (Sandbox Code Playgroud)
结束 MATLAB,然后关闭终端窗口或仅关闭终端窗口。这两种方法之间的真正区别是什么?第二种方法是否以某种方式“伤害”了任何东西?第一种方法是首选吗?为什么?
我想问一下有什么理由不使用rsync一切而放弃cp吗?
我不知道,rsync现在我不知道为什么cp需要。
这个问题以本地化的方式出现了很多次,这个问题旨在提供使用 NTP 同步系统时钟的首选/最佳方法。
该解决方案应正确处理多个问题,例如:
在时钟有较大偏差的情况下快速校正启动时间。
提供一种配置,以保护和/或纠正时钟有时会随着时间的推移出现较大偏差的情况。
一个强大的解决方案,可以在出现某些问题时快速处理和同步时间,例如:“启动期间无法访问时间服务器”或“启动期间无法访问互联网”。
理想的解决方案是能够处理所有这些的单个NTP 配置文件。
许多将提供“终极”解决方案的部分散布在 U&L 网站上,涉及以下问题:
肯定会有其他的,但这些是我所看到的,这些是我认为相关的。
我正在遵循的安装文档指示添加这样的用户:
sudo adduser --disabled-login --gecos 'GitLab' git
Run Code Online (Sandbox Code Playgroud)
--disabled-login我搜索过的大多数手册页中都没有该标志。
我创建了两个用户,一个带有--disabled-login( foo),一个没有 ( git)。
据我所知,--disabled-login旗帜什么也不做。我仍然可以su给两个用户,并且都/bin/bash用作他们的登录 shell。
我能看到的唯一区别是getent passwd在禁用登录的用户的主文件夹之前有额外的逗号。有没有文件,我可以找到,表示什么这意味着。
root@gitlab:~# getent passwd git
git:x:998:998:GitLab:/home/git:/bin/bash
root@gitlab:~# getent passwd foo
foo:x:1001:1002:GitLab,,,:/home/foo:/bin/bash
Run Code Online (Sandbox Code Playgroud)
我发现了另一个区别,一个用户*的密码是 a,另一个用户有!:
root@gitlab:~# getent shadow git
git:*:15998::::::
root@gitlab:~# getent shadow foo
foo:!:15998:0:99999:7:::
Run Code Online (Sandbox Code Playgroud)
--disabled-login在 Ubuntu 上究竟做了什么?
这一切都非常令人困惑。那里有不同的例子,例如:
<package-name>_<epoch>:<upstream-version>-<debian.version>-<architecture>.deb
Run Code Online (Sandbox Code Playgroud)
来源:debian 包文件名
是部分5.6.12版本或Debian策略手册还涉及到实际的包文件名吗?还是只针对控制文件中的字段?
在这个关于存储库格式的wiki 主题中,它并没有真正说明任何关于约定的内容,在开发人员最佳实践指南中也是如此。
也许我只是在寻找错误的东西,请帮助我并告诉我在哪里可以找到 Debian 软件包名称约定。我特别好奇 Debian 代号放在哪里。我想做这样的事情:
<package-name>_<version>.<revision>-<debiancodename>_<architecture>.deb
Run Code Online (Sandbox Code Playgroud)
哪里<debiancodename>只是squeeze或wheezy。