小编Bor*_*kov的帖子

Debian 中默认安装了哪些软件包?那一套有术语吗?为什么有些软件包是“自动安装的”而有些则不是?

是否有一个术语来指代 Debian 发行版自动安装的软件包子集?

我认为它与包优先级有关,但似乎并非如此,因为默认情况下安装的包中有所有优先级级别的包。

此外,初始子集的某些包具有automatically installed标志,例如wireless-tools. 因此,如果根据它们手动删除初始子集的包,它们将被自动删除。我想知道,安装工具是否只保留要考虑手动安装的软件包列表并自动安装它们的依赖项?

回答前两个问题: 在安装核心 Debian 实用程序后,Debian 安装程序似乎会调用tasksel以执行安装“任务”。其中典型的任务是“标准”任务和“笔记本电脑”任务。从工具tasksel页:

“标准”任务

标准任务是 Debian 安装程序使用的特殊任务。它实际上依赖于包的优先级。“标准系统”任务包括什么?

tasksel --task-packages standard

这是一个 aptitude 搜索字符串,相当于

aptitude search ~pstandard ~prequired ~pimportant -F%p

所以tasksel安装standardrequiredimportant包。

“笔记本电脑”任务

笔记本电脑任务是 Debian 安装程序使用的一项特殊任务,用于提取笔记本电脑上有用的软件包:

  • 无线工具
  • acpi-支持
  • 处理器频率
  • 阿皮
  • 请求者
  • 电源
  • apmd
  • 实用程序
  • pm-utils
  • 安克龙
  • avahi-autoipd
  • 蓝牙

桌面

请参阅https://wiki.debian.org/DebianDesktop/Tasks

aptitude debian dpkg apt package-management

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

谁阅读/etc/resolv.conf?

我的 Centos 7 服务器无法正确解析域名。据我所知,在现代 Linux 系统/etc/resolv.conf中,通常使用dhclient, dnsmasqNetwork Manager.

因此,我有一个关于现代 Linux 中网络堆栈的一般理论问题:

谁负责阅读/etc/resolv.conf?域名解析涉及哪些参与者(服务或内核子系统)?

简短回答: Arch linux 手册说域名解析的高级配置 /etc/nsswitch.conf在名称服务切换glibcAPI 中完成并依赖的。

glibc使用nss-resolve函数向 DNS 服务器发送 DNS 请求。

通常现代 CentOS 系统nss-resolve 依赖于 systemd-resolved服务。If/etc/resolv.conf是由类似的东西生成的dhclient-scriptsystemd-resolved读取它并在兼容模式下工作,模拟旧系统(如BINDDNS 客户端)的行为。

networking dns networkmanager resolv.conf

18
推荐指数
2
解决办法
4869
查看次数

ALSA:如何临时更改输出设备

我想在 ALSA 中做一件最简单的事情:让 USB 耳机产生声音,而不是平板电脑的内置扬声器。我不想更改配置文件,例如asound.rcoralsa.confasound.conf并通过更改设备的顺序将耳机永久设置为默认输出设备,我想要一个临时效果,直到我拔掉耳机。奇怪的是,我无法用谷歌搜索答案。有alsamixer能力做到这一点(似乎没有)?

在 Gnome 中,您可以PulseAudio在 GUI 或 CLI 界面中使用 轻松选择当前输出设备,但PulseAudio它本身在 ALSA 之上工作!所以我也想知道,它是如何强制 ALSA 更改输出设备的?

alsa audio pulseaudio

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

当我执行“cat debian.iso > /dev/sdX”时会发生什么?

我正在创建一个实时 USB 并且不能准确理解:当我将文件(甚至文件系统)直接复制到设备节点(而不是文件系统)时会发生什么?

linux live-usb devices

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

`arp`表中没有与IP对应的MAC:如何排除故障?

我有一台 Debian 7 linux 机器和一个 TP-link MR3020 路由器通过eth0接口处的以太网电缆连接到它,在 WISP 模式下工作意味着使它成为客户端而不是接入点:

在此处输入图片说明

我还有一个单独的路由器连接到 ISP 并很好地提供 Wi-Fi。我的 linux 机器缺少内置 wi-fi 适配器,我想使用 WISP 模式路由器而不是外部 USB wi-fi 适配器,因为它们非常不稳定(尝试了其中的 3 个,2 个不起作用,1 个故障)。

我的问题是,看起来,我的 Linux 机器无法将 WISP 路由器的 IP 地址与其 MAC 地址相关联:

我曾经使用 eth0 的网络管理器,我的设置是

gateway ip 192.168.1.1
mask /24
static ip 192.168.1.2 (for my Debian machine itself)
Run Code Online (Sandbox Code Playgroud)

但现在我直接输入了它们/etc/network/interfaces(见下文)

当我ping 192.168.1.1,它说From 192.168.1.2 icmp_seq=1 Destination Host Unreachable

我发现arp不知道这个 ip 的 MAC 地址:192.168.1.1 对应于HWaddress [incomplete].

你对如何解决这个问题有什么建议吗?我应该手动为 …

networking troubleshooting arp

6
推荐指数
1
解决办法
3万
查看次数

loop-device:这是一个 Linux 实体还是一个较低级别的实体?

这是一个关于从闪存上的 ISO 映像启动的 Ubuntu 操作指南。

http://ubuntuforums.org/showthread.php?t=1288604

我没有得到的是在引导内核之前在 GRUB2 中创建循环设备:

menuentry "Ubuntu" {
    set isofile="/boot/isos/ubuntu.iso"

    loopback loop $isofile 
    linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile quiet splash noprompt --
    initrd (loop)/casper/initrd.lz
}
Run Code Online (Sandbox Code Playgroud)

我不明白,什么是循环设备,与操作系统无关。我想,循环设备是 Linux 实体,除此之外不存在。或者它是一个 GRUB2 实体?我在哪里可以阅读更多关于它们的信息(我没有用谷歌搜索任何东西)?

我会理解,如果他们首先直接从闪存加载内核,然后从 ISO 创建一个 linux 循环设备。但是这样我就不明白了。

linux iso grub2 loop-device

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

Android 是否违反 GPL?

刚好奇。如果 Android 基于修改过的 Linux 内核并且其源代码是封闭的,是否违反 GPL2 的条款,即 GPL 衍生产品也必须提供其源代码,“自由或死亡”?:)

gnu android gpl

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

TLDP 中虚拟内存的误导性解释

我对 TLDP 中虚拟内存的解释完全困惑:

http://www.tldp.org/LDP/tlk/kernel/processes.html#tthFtNtAAB

他们说:

每个单独的进程都在其自己的虚拟地址空间中运行,除非通过安全的内核管理机制,否则无法与另一个进程交互。

我的“自己的虚拟地址空间”在 32 位模式下读取为自己的 4Gb RAM:0000:0000 - FFFF:FFFF。但他们不是那个意思,对吧?如果两个进程指向虚拟地址 1111:1111,它们意味着相同的物理地址,那么所有进程共享相同的 4 Gb 虚拟地址空间?

此外,我在这里阅读了有关 Windows 的内容,它们确实为每个进程提供了单独的虚拟地址空间,为用户模式提供了单独的 2Gb RAM,为内核模式提供了共享的 2Gb,因此两个不同的进程都可以指向 1111:1111,它映射到不同的物理内存。他们吗?:)

更新:我的问题的插图。哪些图片适合 Linux:

情况1: 在此处输入图片说明

案例二 在此处输入图片说明

kernel virtual-memory

5
推荐指数
2
解决办法
1329
查看次数

如何指定 ISO 作为 GRUB 的根文件系统的位置?

我正在尝试了解 Debian “从硬盘启动”安装手册。

过程如下:我将a kernel image、aramdisk initrd和an ISOwith installer拷贝到硬盘,然后配置GRUB启动内核和ramdisk,还要告诉GRUB,根文件系统在哪里(应该位于ISO),这样内核就可以将根转为它。但是debian 提供的 grub 配置似乎将整个硬盘驱动器指定为根文件系统,而不是其中的 ISO 文件:

GRUB1:

title  New Install
root   (hd0,0)
kernel /boot/newinstall/vmlinuz
initrd /boot/newinstall/initrd.gz
Run Code Online (Sandbox Code Playgroud)

GRUB2:

menuentry 'New Install' {
insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
linux /boot/newinstall/vmlinuz
initrd /boot/newinstall/initrd.gz
}
Run Code Online (Sandbox Code Playgroud)

为什么会这样?GRUB 将 ISO 文件作为根文件系统挂载在硬盘上,而不是整个硬盘,这么聪明吗?还是我必须将ddISO 的内容直接放到硬盘上?Debian 对此含糊其辞。

boot kernel debian grub2 system-installation

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

X11 会话:当会话开始和结束时,`gdm` 是否运行会话?

我对 X11 会话很困惑。也就是说,我不明白,当 X 会话开始时:

  • 我想用我自己的bob-session程序以编程方式启动 X 会话,类似于gnome-session. 我怎么做?或者做什么gnome-sessiongdm做什么来开始一个新的会话?
  • 当我们在启动时运行 X 时,它们是否运行任何会话?
  • 当 gdm/xdm 等运行时,它们是否在某个 X 会话下运行?由 gdm config 启动的程序(例如虚拟键盘)不能在任何 X 会话下运行?
  • 当我们在 Gnome 的 hotseat 切换用户时,用户会话会发生什么?
  • XDMCP 协议是否意味着 Xserver 可能在机器 A(终端)上运行而 gdm 在机器 B 上运行并且用户可以从 A 登录到 B?

你能提供一些有指导意义的事件,发生在 X 会话中吗?

xorg x11

5
推荐指数
0
解决办法
289
查看次数

为什么在子目录中找不到列表文件?

我正在尝试在我的项目的子目录中查找所有 javascript 文件。

工作树如下:

.
??? app
??? assets
??? components
??? email.txt
??? gulpfile.js
??? node_modules
??? package.json
Run Code Online (Sandbox Code Playgroud)

为此我说:

find . -name *.js
Run Code Online (Sandbox Code Playgroud)

或者

find . -path *.js
Run Code Online (Sandbox Code Playgroud)

奇怪的是,第一个命令只报告gulpfile.js,而第二个命令什么都不报告。但是我有.js文件app,componentsnode_modules! 他们为什么不出现?

find

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

鉴于 vmlinuz 和 initrd.gz,我如何找出内核将从哪里加载 /(根)文件系统?

我正在尝试各种 Linux 安装方式(从 iso、flash、iso on flash、kernel on flash、root FS in iso-file on flash...)并想了解发生了什么。

我的问题是:是否有可能,根据发行版(vmlinuz 和 initrd)中构建的内核和 ramfs 文件,找出他们将在哪里寻找“/”文件系统?是否可以在不重新编译内核的情况下进行配置?

还有一个:当内核从环回设备加载根文件系统时,从 .iso-filesystem 创建,我该如何配置这个过程?谢谢!

编辑: 实际上,GRUB 配置包含 GRUB 根目录,它不是真正的内核根文件系统位置,而只是一个包含 GRUB 物品的文件夹。

真正的根是在init脚本中配置的,initrdhere所述。

这就是 Debian 内核如何在硬盘驱动器上找到 ISO 文件,从它启动时 - initramfs 找到它:http : //www.debian.org/releases/stable/i386/apas02.html.en#howto-getting-images-hard -磁盘; 请注意,GRUB 配置不包含对 ISO location 的任何引用

linux boot kernel initramfs root-filesystem

3
推荐指数
1
解决办法
2万
查看次数

Debian 替代系统:具有相同名称和优先级的程序

我无法从update-alternatives文档中理解优先级系统是如何工作的。

假设我想在其他情况下/usr/bin/node指向nodejsnodejs 应用程序和业余无线电节目,称为node。我不得不说:

update-alternatives --install /usr/bin/node nodejs /usr/bin/nodejs 100 --slave /usr/share/man/...
Run Code Online (Sandbox Code Playgroud)

假设我有 2 个期望/usr/bin/node不同的程序,第一个 - nodejs,第二个 - 业余无线电。他们将如何确定使用哪一个?

优先级在此过程中的作用是什么?

添加:请注意,npmnodejs 包管理器需要调用 nodejs 命令node,因此我必须将 nodejs 安装为node.

debian alternatives

3
推荐指数
1
解决办法
570
查看次数