小编Sin*_*osh的帖子

交换空间有文件系统吗?

为了使用存储设备,我们需要一个文件系统,那么交换空间呢?

如果它没有文件系统,操作系统如何使用它?数据(来自 RAM)如何写入磁盘,以及如何再次访问?

filesystem partitioning swap

28
推荐指数
3
解决办法
9642
查看次数

rm:无法删除目录/:权限被拒绝

我创建了一个名为“shadi”的目录并为其设置了此权限

sinoosh@ubuntu:/home$ ls -ld shadi
drwxr-xrwx 2 root root 4096 Jul  1 01:58 shadi
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我有“其他”权限,但为什么我不能删除它?

sinoosh@ubuntu:/home$ rm -r shadi/
rm: cannot remove ‘shadi/’: Permission denied
Run Code Online (Sandbox Code Playgroud)

permissions rm

23
推荐指数
3
解决办法
29万
查看次数

“xargs”和命令替换之间的区别?

在许多情况下,我使用命令替换而不是xargs. 例如rm $(ls)ls | xargs rm

它们之间的真正区别是什么?

我认为差异之一是命令替换在子shell中xargs运行,而在当前shell中运行,但我不确定。

请列出差异。

bash xargs

15
推荐指数
1
解决办法
1644
查看次数

通配符是 shell 的一个特性吗?

我读了很多的问题和答案像这个这个

我知道通配符在运行命令之前被 shell 扩展,它们是 shell 的一个特性。通配符也适用于那些可以接受许多参数的命令。在find . -name *.rb 我们若在当前目录多个文件find会给我们一个错误,因为发现不能接受多个参数,解决这个是方法:

find . -name "*.rb"
find . -name '*.rb'
find . -name \*.rb
Run Code Online (Sandbox Code Playgroud)

我们避开星号并防止 shell 扩展,但通配符是 shell 的一个特性;当我们转义 asterisk shell 不知道它的含义时,它应该找到一个名为 的文件*.rb,那么在这种情况下星号是如何扩展的?

bash find wildcards

12
推荐指数
1
解决办法
2061
查看次数

为什么即使使用 '! ' 在它的影子条目中?

$cat /etc/passwd |grep -i root
root:x:0:0:root:/root:/bin/bash

$sudo cat /etc/shadow |grep -i root
root:!:17179:0:99999:7:::
Run Code Online (Sandbox Code Playgroud)

在影子文件的第二个字段中,!表示 root 用户无法登录,但为什么我可以通过 登录到 root 用户sudo su

为什么我不能通过su root或登录到 root 用户su -

permissions sudo passwd shadow

9
推荐指数
1
解决办法
2202
查看次数

“LD_LIBRARY_PATH”是否存在安全风险?

我们知道ld.so在环境变量指定的目录中搜索库$LD_LIBRARY_PATH,但普通用户可以运行:

export LD_LIBRARY_PATH=dir1:dir2...
Run Code Online (Sandbox Code Playgroud)

他们可以将受感染的库保存在优先级高于原始路径的路径中,以便ld.sold.so.cache.

这是一个风险吗?
我们如何禁止普通用户写入这个环境变量?

security shared-library environment-variables

8
推荐指数
1
解决办法
2664
查看次数

为什么我们要让锁定的帐户过期以完全阻止访问?

来自man usermod

注意:如果您希望锁定帐户(不仅是使用密码访问),您还应该将 EXPIRE_DATE 设置为 1。

  • 为什么我们要让锁定的帐户过期以完全阻止对该帐户的访问?
  • 如果我的锁定帐户没有过期会怎样?

users accounts user-management

8
推荐指数
1
解决办法
762
查看次数

“history -w”和关闭shell会话的动作有什么区别?

我做了一些关于历史的测试:

  1. 我跑了history-c然后注销了。这清除了当前 shell 的历史记录。

  2. 我跑了history -c && history -w。这删除了所有内容。

  3. 我通过 vi 编辑器删除了历史文件的全部内容:$vi ~/.bash_history. 然后我退出了。在下次登录时,当我history只运行最后一个 shell 会话的行或命令时。

这表明history -w当我们关闭 shell 会话时,和之间存在差异。

当我们关闭一个 shell 会话时到底发生了什么?

我认为将history -w内存内容覆盖到历史文件,并history -c删除内存内容。这样对吗?

command-line bash history

7
推荐指数
1
解决办法
5767
查看次数

find 命令中“perm -mode”和“perm /mode”之间的区别

我阅读了手册页,find但我不清楚。

find -perm -mode ------>至少必须设置这些位才能匹配文件

例如:find -perm -754查找 754,755,757,774,777

关于什么?find -perm /754 请举例说明

command-line bash find

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

静态库的作用是什么?

默认情况下,静态库位于/usr/lib/usr/lib64但我使用以下命令在我的操作系统中删除了所有它们:

find / -name *.a -exec rm -rf {} \;
Run Code Online (Sandbox Code Playgroud)

我的 linux 已经可以了,一切正常!

我们能说吗?

" Package.rpm 或 *.deb 包含编译器输出,只有它们需要共享库。

当我们从源代码安装软件时,如果在结构中使用静态库,链接器在编译期间,将静态库复制到它的可执行文件中。

如果*.a我的系统中没有文件,也许将来如果我从源代码安装软件,我会遇到问题”

请用简单的方式向我解释

package-management shared-library compiling

4
推荐指数
1
解决办法
1305
查看次数