小编Boa*_*ann的帖子

为什么大部分磁盘 IO 都归因于 jbd2 而不是实际使用 IO 的进程?

在监控磁盘 IO 时,大部分 IO 都归因于 jbd2,而导致高 IO 的原始进程归因于低得多的 IO 百分比。为什么?

这是iotop输出的示例(省略了 IO<1% 的其他进程):

在此处输入图片说明

process io disk

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

Linux 上 USB3 外部存储的连接问题(UAS 驱动程序问题)

在 Ubuntu 15.10 上,当我想使用 NTFS 文件系统格式化通过 USB3 连接的外部 4TO 磁盘(在 StarTech USB/eSATA 硬盘底座上)时,我有很多I/O 错误,并且格式化失败。

我在最新的 live CD 上尝试了 GParted v 0.19 和 GParted,但遇到gparted-live-0.23.0-1-i586.iso了同样的问题。

之后,在 Ubuntu 15.10 和相同的 USB3 连接上使用 GParted,我尝试格式化为ext4,没有问题。这真的很奇怪。

因为不知道mkfs.ext4GParted用来格式化磁盘的工具是不是对磁盘进行了像(或不像)这样的测试mkntfs,所以首先假设问题出在新磁盘上。也许这个新磁盘引起了问题。所以我尝试e2fsck -c在这个硬盘上运行。在 Ubuntu 15.10 上,e2fsck -c冻结在 0.45%,我不知道为什么。

因此,在同一台 PC 上使用另一个版本的 Ubuntu (15.04),我尝试使用 StarTech HDD 扩展坞的 eSATA 连接来连接同一个 4TO 磁盘。这一次,e2fsck -c运行正确。

几个小时后,您可以看到结果:

sudo e2fsck -c /dev/sdc1
e2fsck 1.42.12 (29-Aug-2014)
ColdCase : récupération du journal
Vérification …
Run Code Online (Sandbox Code Playgroud)

drivers kernel usb external-hdd e2fsck

27
推荐指数
3
解决办法
4万
查看次数

Linux/xBSD 在 GRUB 之前是如何引导的?

根据维基百科,GRUB 于 1995 年发布。那时 Linux 和 xBSD 已经存在了好几年。我知道早期的 Unix 版本在 70 年代和 80 年代与硬件相关联,但 Linux 和 xBSD 可以免费分发和安装。这就引出了一个问题,那时您将如何引导 Linux?发行版是否带有自己的引导加载程序实现?

boot-loader history

22
推荐指数
4
解决办法
7329
查看次数

为什么使用dd写入随机数据会导致磁盘分区?

在运行该dd命令之前,该命令lsblk返回以下输出:

NAME              MAJ:MIN  RM   SIZE    RO TYPE  MOUNTPOINT
sda               8:0       0    931.5G  0  disk  
Run Code Online (Sandbox Code Playgroud)

dd if=/dev/urandom of=/dev/sda conv=fsync status=progress运行命令。然而,设备断电并关闭。恢复供电后,该命令lsblk将返回以下输出:

NAME              MAJ:MIN     RM   SIZE    RO TYPE  MOUNTPOINT
    sda           8:0          0   931.5G  0  disk 
      sda2        8:2          0   487.5G  0  disk
Run Code Online (Sandbox Code Playgroud)

partition dd lsblk

11
推荐指数
3
解决办法
2784
查看次数

用户如何在未经许可的情况下执行文件?

我创建了一个 Bash 脚本,它与"Hello World"相呼应。我还创建了一个测试用户bob,使用adduser.

没有人有权执行该文件,如下所示ls

$ ls -l hello.sh 
-rw-r--r-- 1 george george 19 Mai 29 13:06 hello.sh
Run Code Online (Sandbox Code Playgroud)

正如我们从上面看到的,文件的所有者是乔治,他只有读写访问权限,但没有执行访问权限。但是以乔治身份登录我可以直接执行脚本:

$ . hello.sh 
Hello World
Run Code Online (Sandbox Code Playgroud)

更糟糕的是,我以bob身份登录,我只有读取权限,但我仍然可以执行该文件:

$ su bob
Password: 
$ . /home/george/testdir/hello.sh 
Hello World
Run Code Online (Sandbox Code Playgroud)

这是怎么回事?

command-line bash users permissions executable

11
推荐指数
3
解决办法
2870
查看次数

为什么很多 Unix 系统默认的 umask 是 002 或 022?默认情况下似乎不安全

我已经使用 Linux 和 Unix 很长时间了。我第一次学习Unix是在一个有很多学生的电脑教室里,老师告诉我们可以用ssh它登录我就读的大学提供的远程工作站。

在这种情况下,我立即知道 Unix 是一个多用户操作系统,因为学生多于工作站。(鸽巢原理。)

不知何故,经过多年的使用,我基本上知道umask(默认为 002)是什么,并且用户(和新用户)的默认权限是755文件夹、644文件。

但是仔细想想,在这样的多用户操作系统中,默认权限设置似乎是不安全的。虽然它使共享数据更容易,但当您可以轻松地在他们的主目录中列出和复制其他用户的文件时,我仍然感到奇怪。

那么为什么在许多 Unix 系统中默认 umask 002 呢?传统Unix选择这种设计有什么历史原因吗?

(我能想到的一个可能的原因是,1970~1980年计算机主要用于科学研究,计算能力非常有限。所以当Unix早期版本出来时,他们决定默认权限应该是为了方便共享而不是隐私保护。)

security permissions umask privacy historical-unix

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

KDE 发出响亮、惊人的噪音

我有 KDE 作为窗口管理器,但我不知道如何阻止它在极端音量下发出叮叮当当的噪音。例子:

  1. 打开控制台。
  2. 打开第二个选项卡。
  3. 用它的×按钮关闭整个窗口。
  4. 一个消息框询问我,询问我是否真的要关闭这两个选项卡。消息框将系统音量从我需要的耳机音量(~10%)重置为 100%,然后发出毫无意义的叮当声。声音大得吓人。我每次都跳。

我没有对声音设置做任何奇怪的事情来导致这种情况。自从我一个月前设置 Linux 以来,它的行为一直如此。

问:关闭 KDE 噪音的复选框在哪里?当我使用 Windows 时,关闭声音主题很容易,但我觉得我已经遍及 KDE 并没有找到设置。目前我生活在害怕点击我知道会发出噪音的东西中。

系统:Debian Stretch 9.5
KDE:Plasma 5.8.6

kde gui audio

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

如果值为 0(数字零),为什么 awk 对 $1 的行为不同?

当 awk 接收“0”作为输入时,它在某些情况下的行为会有所不同。代码如下:

var=$1
echo ""; echo -n 'o/p of $1=$1 ==>'; echo $var | awk '$1=$1'
echo "";echo -n 'o/p of {$1=$1;print} ==>';echo $var | awk '{$1=$1;print}'
echo "";echo -n 'o/p of $1==$1 ==>';echo $var | awk '$1==$1'
echo "";echo -n 'o/p of {$1==$1;print} ==>';echo $var | awk '{$1==$1;print}'
Run Code Online (Sandbox Code Playgroud)

带有“0”(数字零)的输出:

[root@host ~]# sh /tmp/te.sh 0

o/p of $1=$1 ==>
o/p of {$1=$1;print} ==>0

o/p of $1==$1 ==>0

o/p of {$1==$1;print} ==>0
[root@GORJALA ~]#
Run Code Online (Sandbox Code Playgroud)

带有“1”(第一) …

awk

5
推荐指数
3
解决办法
2672
查看次数