AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-34039

dr_'s questions

Martin Hope
dr_
Asked: 2025-01-23 01:12:45 +0800 CST

/etc/sssd/sssd.conf 发生了什么变化?

  • 5

我有一个 Ansible 剧本,可以写入/etc/sssd/sssd.conf这个 Jinja 模板(变量在其他地方定义):

# This line is just to check that the file is written correctly

[sssd]
domains = {{ domain }}
config_file_version = 2
services = nss, pam

[domain/{{ domain }}]
id_provider = ad
auth_provider = ad
ad_domain = {{ domain }}
ad_server = {{ ad_server }}
krb5_realm = {{ domain | upper }}
cache_credentials = true
krb5_store_password_if_offline = true
default_shell = /bin/bash
ldap_id_mapping = true
use_fully_qualified_names = false
fallback_homedir = /home/EXAMPLE/%u
access_provider = simple
simple_allow_groups = {{ simple_allow_groups }}
simple_allow_users = {{ simple_allow_users }}
ignore_group_members = true
enumerate = False
ldap_purge_cache_timeout = 0
subdomain_inherit = ignore_group_members, ldap_purge_cache_timeout

然后剧本重新启动sssd,并执行一些realm leave和realm join操作。

/etc/sssd/sssd.conf运行剧本后,服务器上的内容如下:

# This line is just to check that the file is written correctly

[sssd]
domains = example.abc
config_file_version = 2
services = nss, pam

[domain/example.abc]
default_shell = /bin/bash
krb5_store_password_if_offline = True
cache_credentials = True
krb5_realm = EXAMPLE.ABC
realmd_tags = manages-system joined-with-adcli
id_provider = ad
fallback_homedir = /home/%u@%d
ad_domain = example.abc
use_fully_qualified_names = True
ldap_id_mapping = True
access_provider = ad

什么正在改变/etc/sssd/sssd.conf?如何改变?

ansible
  • 1 个回答
  • 40 Views
Martin Hope
dr_
Asked: 2025-01-17 22:49:26 +0800 CST

是否有支持 Linux 权限且 Windows 可读的文件系统?

  • 19

是否存在一个文件系统可以满足这两个要求?

  1. 支持Linux标准文件权限
  2. 被 Windows 原生识别

我想用它来格式化一个主要用于 Linux 的 USB 外部记忆棒,但也想从 Windows 机器上访问。

一个简单的解决方法是从 Windows 主机上的 Linux VM 读取 USB 驱动器的内容,但很好奇是否存在这样的文件系统。

permissions
  • 2 个回答
  • 1338 Views
Martin Hope
dr_
Asked: 2024-11-13 19:28:02 +0800 CST

通过 Ansible 加入域会返回错误“已加入此域”,而通过 shell 加入则没问题

  • 5

我收到了一条有关 Ansible 的奇怪消息。

在 RHEL 9 服务器上,我可以通过 shell 命令行加入我们的域

realm join example.xyz --user=svc-ansible --computer-ou="OU=Linux Servers, OU=Servers, OU=ACME, OU=Units, DC=example, DC=xyz"

完成后,我可以通过 成功更改用户,其中“johndoe”是在 AD 中定义的用户,属于文件中定义的 AD 组。因此配置似乎有效。su - [email protected]simple_allow_groups/etc/sssd/sssd.conf

此后,我预先运行realm leave example.xyz --remove -U 'svc-ansible'并realm list检查该服务器是否不再位于域中。

但是,当我通过 AWX 运行如下所示的 Ansible 剧本时

(...)

- name: Set staging_ou
  ansible.builtin.set_fact:
    staging_ou: "OU=Linux Servers, OU=Servers, OU=ACME, OU=Units, DC=example, DC=xyz"

- name: Realm join into domain
  ansible.builtin.expect:
    command: /bin/bash -c 'realm join {{ domain }} --user={{ ad_join_user }} --computer-ou="{{ staging_ou }}"'
    responses:
      Password.*: "{{ ad_join_password }}"
    timeout: 120

(...)

我收到以下错误:

任务 [playbook_ad_join:Realm 加入域] ************************************ 致命:[myrhel9server]:失败! => {"changed": true, "cmd": "/bin/bash -c 'realm join example.xyz --user=svc-ansible --computer-ou="OU=Linux Servers, OU=Servers, OU=ACME, OU=Units, DC=example, DC=xyz"'", "delta": "0:00:00.152467", "end": "2024-11-13 11:45:09.577079", "msg": "非零返回码", "rc": 1, "start": "2024-11-13 11:45:09.424612", "stdout": "realm: 已加入此域\r\n请查看\r\n https://red.ht/support_rhel_ad \r\n以获取常见问题的帮助。", "stdout_lines": ["realm:已加入此域”、“请检查”、“https://red.ht/support_rhel_ad”、“以获取常见问题的帮助。”]}

Arealm list确认服务器确实位于 example.xyz 域中,并返回与我realm join ...通过 shell 运行命令时相同的输出。但是,我无法su再向 AD 用户发出请求:尝试这样做会返回错误

su:用户[email protected]不存在或用户条目不包含所有必填字段

错误消息中引用的链接没有帮助。

可能出了什么问题?


编辑 1:通过 shell 运行与通过 ansible 运行相同的命令,即

/bin/bash -c 'realm join example.xyz (...) '

对于运行来说没有任何改变realm join example.xyz (...)(参见文章顶部)。

剧本中的其他任务仅修改了几个配置文件:

/etc/krb5.conf
/etc/sssd/sssd.conf
/usr/local/bin/sss_ssh_authorizedkeys_ad
/etc/ssh/sshd_config 

并安装一些软件包。这些并不重要,因为配置已经收敛。我删除了重新启动realmd守护进程的一行,因为它可能是导致问题的原因,但什么都没有改变。

ansible
  • 1 个回答
  • 34 Views
Martin Hope
dr_
Asked: 2024-11-01 19:18:15 +0800 CST

删除多路径中失败的条目

  • 5

由于一些变化,我必须强制重新扫描 CentOS 6 服务器上的光纤通道设备。

这是输出multipath -l:

(...)
36000144000000010f01c857894aede59 dm-50 EMC,Invista
size=5.0T features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=0 status=active
  |- 7:0:3:107 sdca 68:224  active undef unknown
  |- 4:0:3:107 sdbd 67:112  active undef unknown
  |- 7:0:4:107 sdeb 128:48  active undef unknown
  `- 4:0:7:107 sddg 70:224  active undef unknown
3600601602bd14600351eb55f237aa77d dm-5 DGC,VRAID
size=3.0T features='0' hwhandler='1 emc' wp=rw
|-+- policy='round-robin 0' prio=0 status=active
| |- 7:0:7:39  sdq  65:0    failed undef unknown
| `- 4:0:6:39  sdei 128:160 failed undef unknown
`-+- policy='round-robin 0' prio=0 status=enabled
  |- 7:0:0:39  sdx  65:112  active undef unknown
  `- 4:0:0:39  sdk  8:160   active undef unknown
36000144000000010f01c857894aedd26 dm-14 EMC,Invista
size=5.0T features='0' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=0 status=active
  |- 7:0:3:94  sdba 67:64   failed undef unknown
  |- 4:0:3:94  sdad 65:208  failed undef unknown
  |- 7:0:4:94  sddb 70:144  failed undef unknown
  `- 4:0:7:94  sdcg 69:64   failed undef unknown
(...)

运行multipath -f dm-5或multipath -w 3600601602bd14600351eb55f237aa77d不会删除该条目,即使在运行multipath或重新启动 multipathd 服务后也不会删除。

这些条目不存在于/etc/multipath.conf。

如何删除失败的条目?

centos
  • 2 个回答
  • 28 Views
Martin Hope
dr_
Asked: 2024-08-28 21:08:35 +0800 CST

算术扩展中的“$var”和“var”有什么区别?

  • 7

Bash 接受以下两种语法:

FOO=$(($BAR + 42))

和

FOO=$((BAR + 42))

哪一个是正确的/最可移植的/不容易出错?还是两者都同样有效?

bash
  • 1 个回答
  • 352 Views
Martin Hope
dr_
Asked: 2024-06-19 20:51:48 +0800 CST

为什么我的 Web 服务器在端口 80 上提供 HTTPS 内容?

  • 6

Rocky Linux 9 上的 Apache 网络服务器,具有从 LetsEncrypt 获得的 SSL 证书。这是特定虚拟主机“myvhost”的配置,但我的服务器上的所有虚拟主机都出现了问题:

/etc/httpd/conf.d/myvhost.conf:

<VirtualHost *:80>

    ServerName myvhost.example.org
    DocumentRoot "/var/www/html/myvhost"

    RewriteEngine on
    RewriteCond %{SERVER_NAME} =myvhost.example.org
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]

</VirtualHost>

/etc/httpd/conf.d/myvhost-le-ssl.conf(由 LetsEncrypt 自动生成):

<IfModule mod_ssl.c>
<VirtualHost *:443>

    ServerName myvhost.example.org
    DocumentRoot "/var/www/html/myvhost"

    Include /etc/letsencrypt/options-ssl-apache.conf

    Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains"

    TraceEnable off

    SSLCertificateFile /etc/letsencrypt/live/example.org-0001/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/example.org-0001/privkey.pem

</VirtualHost>
</IfModule>

命令curl -i http://myvhost.example.org返回:

HTTP/1.1 400 Bad Request
Date: Wed, 19 Jun 2024 12:39:10 GMT
Server: Apache
Content-Length: 362
Connection: close
Content-Type: text/html; charset=iso-8859-1

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>400 Bad Request</title>
</head><body>
<h1>Bad Request</h1>
<p>Your browser sent a request that this server could not understand.<br />
Reason: You're speaking plain HTTP to an SSL-enabled server port.<br />
 Instead use the HTTPS scheme to access this URL, please.<br />
</p>
</body></html>

为什么会这样?除其他外,HTTP 错误 400 阻止certbot renew验证域和更新证书。

值得注意的是,在 CentOS Stream 8 上完全相同的配置并没有导致这个问题。

编辑:命令的输出for f in $(grep -l -e SSLCertificate -e :80 /etc/httpd/conf.d/*.conf); do printf '\n== %s ==\n' "$f"; grep -hE 'SSLCertificate|VirtualHost|Server(Name|Alias)' "$f" | sed -e 's/#.*//' -e '/^[[:space:]]*$/d'; done | less:

==  /etc/httpd/conf.d/main-le-ssl.conf ==
<VirtualHost *:443>
    ServerName example.org
    SSLCertificateFile /etc/letsencrypt/live/example.org-0001/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/example.org-0001/privkey.pem
</VirtualHost>

==  /etc/httpd/conf.d/main.conf ==
<VirtualHost *:80>
    ServerName example.org
</VirtualHost>

==  /etc/httpd/conf.d/myvhost-le-ssl.conf ==
<VirtualHost *:443>
    ServerName myvhost.example.org
    SSLCertificateFile /etc/letsencrypt/live/example.org-0001/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/example.org-0001/privkey.pem
</VirtualHost>

==  /etc/httpd/conf.d/myvhost.conf ==
<VirtualHost *:80>
    ServerName myvhost.example.org
</VirtualHost>

==  /etc/httpd/conf.d/anothervhost-le-ssl.conf ==
<VirtualHost *:443>
    ServerName anothervhost.example.org
    SSLCertificateFile /etc/letsencrypt/live/example.org-0001/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/example.org-0001/privkey.pem
</VirtualHost>

==  /etc/httpd/conf.d/anothervhost.conf ==
<VirtualHost *:80>
    ServerName anothervhost.example.org
</VirtualHost>

==  /etc/httpd/conf.d/ssl.conf ==
SSLCertificateFile /etc/letsencrypt/live/example.org-0001/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.org-0001/privkey.pem
apache-httpd
  • 1 个回答
  • 50 Views
Martin Hope
dr_
Asked: 2024-06-14 23:01:37 +0800 CST

sshd:服务器拒绝公钥签名尽管接受密钥

  • 5

我正在租用一台运行 CentOS Stream 8 的 VPS,我为用户“foo”设置了 SSH 公钥身份验证。我通过 Windows 上的 PuTTY 访问它。

最近我租用了另一台运行 Rocky Linux 9 的 VPS,并以相同的方式设置了 sshd,然后将文件/home/foo/.ssh/authorized_keys从旧 VPS 复制到新 VPS。这样,我只需克隆 PuTTY 配置文件配置,仅将 IP 地址从旧地址更改为新地址,并重复使用 PuTTY 的 PPK 密钥。

但是,当我通过 PuTTY SSH 连接到新服务器时,出现错误:

Using username "foo".
Authenticating with public key "[email protected]"
Server refused public-key signature despite accepting key!
Using keyboard-interactive authentication.
Password:

我必须输入“foo”用户的密码。但是,我想放弃旧服务器中基于密码的身份验证。

两端的私钥和公钥相同。SELinux 不会干扰这里。~/.ssh和的权限~/.ssh/authorized_keys正确。

请注意,通过公钥从新服务器 SSH 连接到其自身可以完美运行。显然,在这种情况下它使用的是id_rsa,而不是 PuTTY 的 PPK 密钥。

dmesg并且/var/log/messages没有显示任何有用的内容。

可能是什么问题呢?

注意:这不是服务器拒绝公钥签名尽管接受密钥-putty的重复,因为没有一个答案适用。

sshd
  • 1 个回答
  • 51 Views
Martin Hope
dr_
Asked: 2023-11-17 18:11:24 +0800 CST

本地时钟高层值的目的(模糊选项)

  • 5

在NTP配置中,为本地时钟指定高层值的目的是什么?

fudge   127.127.1.0 stratum 10

如果我错了,请纠正我:如果远程 NTP 服务器(层数较低,例如 2 或 3)无法访问,服务器无论如何都会依赖内部时钟。否则,它将与这些 NTP 服务器同步时间。

因此,上述配置行是否不必要,并且仅当该层值低于某些远程 NTP 服务器层时设置本地时钟层才有意义?

ntp
  • 1 个回答
  • 32 Views
Martin Hope
dr_
Asked: 2023-10-05 21:46:53 +0800 CST

如何查找哪些客户端正在使用 sendmail SMTP 中继?

  • 5

我们已sendmail在 RHEL 6 计算机上设置为 SMTP 中继。

我们如何找到使用此中继发送邮件的远程客户端的主机名或 IP 地址?此信息是否记录在某处?

relay=中的字段指定/var/log/maillog接受或拒绝邮件收件人的主机名,这不是我们需要的。

rhel
  • 1 个回答
  • 27 Views
Martin Hope
dr_
Asked: 2023-06-27 18:10:55 +0800 CST

如何从网页界面访问 OwnCloud 文件到文件系统?

  • 5

我们有一个 OwnCloud 服务器。通过HTTPS接口上传的文件可以在路径中的文件系统上检索

/var/www/html/owncloud_content/our_username/path/to/files

但是,这些文件是加密的。我们怎样才能找回原始文件呢?

我们拥有 OwnCloud 应用程序的完全管理访问权限和 Linux 服务器 (CentOS 6) 的 root 访问权限。

centos
  • 1 个回答
  • 19 Views
Martin Hope
dr_
Asked: 2023-06-14 20:23:20 +0800 CST

Tomcat 上的 HAProxy 返回错误 403

  • 5

我有一台旧服务器,它在端口 8080 上运行 Tomcat 服务。出于各种原因(包括保护来自客户端的访问),我不得不在它前面设置一个 HAProxy 服务器,并使用 SSL 证书进行保护。

这是 HAProxy 相关配置:

frontend myservice
    mode    tcp
    option  tcplog
    option  logasap
    log     global
    option  tcpka
    bind    10.10.10.10:80
    bind    10.10.10.10:443 ssl crt /etc/ssl/haproxy/myservice.example.org.pem
    acl secure dst_port eq 443
    http-response add-header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload;"
    http-response replace-header Set-Cookie (.*) \1;\ Secure if secure
    use_backend bck_myservice if { hdr(Host) -i myservice.example.org myservice }
    default_backend bck_deny

backend bck_myservice
    mode     tcp
    balance  leastconn
    option   prefer-last-server
    server   oldserver.example.org oldserver.example.org:8080 weight 1 check port 8080 inter 2000 rise 2 fall 5 ssl verify none

backend bck_deny
    mode http
    http-request deny

10.10.10.10 是新服务的 VIP,映射到 myservice.example.org。

访问http://oldserver.example.org:8080正常工作。

问题: https: //myservice.example.org导致错误“403 Forbidden”。访问该 URL 似乎不会访问 Tomcat 后端,因为在 Tomcat 日志中没有它的踪迹。(注意:HAProxy 配置曾经有mode http,但它导致错误“503 服务不可用”。)

ssl
  • 1 个回答
  • 17 Views
Martin Hope
dr_
Asked: 2023-06-07 16:13:27 +0800 CST

'..'真的是一个硬链接吗?

  • 12

这是一个有点理论性的问题,但为事物使用专有名称很重要。

在 UNIX/Linux 文件系统中,..指向父目录。

但是,我们知道硬链接不能指向目录,因为这有可能破坏文件系统的无环图结构并导致命令在无限循环中运行。

那么,..真的是硬链接(如.)吗?这将使它成为一种特殊类型的硬链接,不受目录限制,但对于所有目的来说都像一个硬链接。

或者是一个特殊的 inode 映射,硬编码到文件系统中,不应该称为硬链接?

filesystems
  • 4 个回答
  • 1083 Views
Martin Hope
dr_
Asked: 2022-05-28 06:33:58 +0800 CST

通过 tower-cli 运行 shell 命令

  • 1

Ansible CLI 允许运行自定义 shell 命令(使用默认模块“ansible.builtin.command”隐式完成):

ansible myhost -a "/bin/mycommand" 

是否可以通过tower-cliaka做同样的事情awx-cli?

编辑:使用awxCLI 工具的答案是可以接受的;但是,我更喜欢使用tower-cli/的解决方案awx-cli。

command-line ansible
  • 1 个回答
  • 169 Views
Martin Hope
dr_
Asked: 2022-04-28 06:23:07 +0800 CST

如何解决 LDAP 错误 53 (WILL_NOT_PERFORM)?

  • 4

我正在尝试让 CentOS 7 服务器加入 AD,但会导致错误:

AD LDAP ERROR:53(服务器不愿意执行):0000216D:SvcErr:DSID-031A1241,问题5003(WILL_NOT_PERFORM),数据0

命令运行:

[root@myserver ~]# realm join --user='[email protected]' --computer-ou=OU=ABC,OU=Servers,OU=ACME,OU=Units,DC=example,DC=org example.org
Password for [email protected]:
See: journalctl REALMD_OPERATION=r12682208.2790
realm: Couldn't join realm: Joining the domain example.org failed

[root@myserver ~]# journalctl REALMD_OPERATION=r12682208.2790 --no-pager
-- Logs begin at Mon 2022-04-25 14:28:51 CEST, end at Tue 2022-04-26 13:51:12 CEST. --
Apr 26 13:49:01 myserver.example.org realmd[2794]:  * Resolving: _ldap._tcp.example.org
Apr 26 13:49:01 myserver.example.org realmd[2794]:  * Performing LDAP DSE lookup on: 10.1.1.1
Apr 26 13:49:01 myserver.example.org realmd[2794]:  * Performing LDAP DSE lookup on: 10.2.2.2
Apr 26 13:49:01 myserver.example.org realmd[2794]:  * Successfully discovered: example.org
Apr 26 13:49:08 myserver.example.org realmd[2794]:  * Required files: /usr/sbin/oddjobd, /usr/libexec/oddjob/mkhomedir, /usr/sbin/sssd, /usr/bin/net
Apr 26 13:49:08 myserver.example.org realmd[2794]:  * LANG=C LOGNAME=root /usr/bin/net -s /var/cache/realmd/realmd-smb-conf.HGKCL1 -U [email protected] ads join example.org createcomputer=Units/ACME/Servers/ABC
Apr 26 13:49:09 myserver.example.org realmd[2794]: Enter [email protected]'s password:ads_print_error: AD LDAP ERROR: 53 (Server is unwilling to perform): 0000216D: SvcErr: DSID-031A1241, problem 5003 (WILL_NOT_PERFORM), data 0
Apr 26 13:49:09 myserver.example.org realmd[2794]:
Apr 26 13:49:09 myserver.example.org realmd[2794]:
Apr 26 13:49:09 myserver.example.org realmd[2794]: Failed to join domain: failed to precreate account in ou ou=ABC,ou=Servers,ou=ACME,ou=Units,dc=example,dc=org: Server is unwilling to perform
Apr 26 13:49:09 myserver.example.org realmd[2794]:  ! Joining the domain example.org failed

使用的帐户有权将服务器添加到域。(在 MS Windows AD 上测试。)

--verbose选项realm不显示任何额外的有用信息。

我怎样才能找到问题的根源?

centos ldap
  • 1 个回答
  • 1091 Views
Martin Hope
dr_
Asked: 2022-04-07 06:05:18 +0800 CST

端口显示为“开放”,然后在 CentOS Stream 8 上显示为“过滤”

  • 0

我在一台机器上重新安装了 CentOS Stream 8。这台机器需要在端口 443 上连接到 Foreman 智能代理。

如果我nmap在机器启动后立即运行,它会看到端口打开:

[root@centos8stream ~]# nmap mysmartproxy -p443
Starting Nmap 7.70 ( https://nmap.org ) at 2022-04-06 15:52 CEST
Nmap scan report for mysmartproxy (10.11.12.13)
Host is up (-0.18s latency).
rDNS record for 10.11.12.13: mysmartproxy.myorg.org

 
PORT STATE SERVICE
443/tcp open https
MAC Address: 00:11:22:33:AA:BB (VMware)


Nmap done: 1 IP address (1 host up) scanned in 0.51 seconds

但是,如果nmap在几秒钟后运行,它会将端口视为已过滤:

PORT    STATE    SERVICE
443/tcp filtered https

机器设法在端口 443 上毫无问题地连接到智能代理。但是,我需要nmap将端口视为打开的,因为有依赖于它的运行状况检查。

  • 从子网中的所有计算机到端口 443 的连接在智能代理上打开。没有其他防火墙阻止通信。当nmap在同一网络中从具有不同于 CentOS Stream 8 的操作系统的其他机器上运行时,它总是将端口视为打开的。
  • 在机器上禁用 SELinux 无效。
  • 在机器上禁用firewalld没有效果。nftables并且任何其他防火墙都被禁用。
  • 机器上禁用了 IP 转发。

这种奇怪行为的原因是什么?我认为它一定是启动后加载的服务,但到目前为止我无法查明问题所在。

centos nmap
  • 1 个回答
  • 134 Views
Martin Hope
dr_
Asked: 2022-03-25 07:43:04 +0800 CST

CentOS Stream 9 的 katello-agent?

  • 0

我找不到katello-agent新的 CentOS Stream 9 的软件包。(我什至尝试为 CentOS Stream 8 安装 repo,但正如预期的那样,它会导致依赖关系损坏。)是否有安装它的解决方法?

(我知道Katello 已被弃用以支持远程执行,但现在我将不得不这样做。)

centos foreman
  • 2 个回答
  • 139 Views
Martin Hope
dr_
Asked: 2020-01-27 08:35:42 +0800 CST

无法在双启动 Windows / CentOS 8 (LVM+LUKS) 上安装 GRUB

  • 0

我有一台装有 Windows 7 的旧笔记本电脑,我在其上安装了 CentOS 8 双启动。

首次重新启动时,GRUB 仅显示 Linux 条目。因此我使用了 Boot-Repair-Disk,但不知何故无法安装 GRUB,因为现在笔记本电脑直接启动到 Windows。

磁盘分区如下(如Boot-Repair-Disk所见):

Partition  Boot  Start Sector    End Sector  # of Sectors  Id System

/dev/sda1               2,048     3,074,047     3,072,000  27 Hidden NTFS (Recovery Environment)
/dev/sda2    *      3,074,048   629,905,407   626,831,360   7 NTFS / exFAT / HPFS
/dev/sda3         629,905,408   632,002,559     2,097,152  83 Linux
/dev/sda4         632,002,560   976,773,119   344,770,560   5 Extended
/dev/sda5         632,004,608   975,978,495   343,973,888  8e Linux LVM

这是它们的粗略尺寸以及它们的用途:

/dev/sda1     1.5 Gb     Windows recovery partition
/dev/sda2     300 Gb     Windows 7 partition
/dev/sda3       1 Gb     Linux /boot partition 
/dev/sda4     164 Gb     Extended partition containing /dev/sda5
/dev/sda5     4 Gb /swap, 130 Gb /, 30 Gb /home, all LVM and LUKS-encrypted

值得注意的是,Windows 将/dev/sda4其视为主(非扩展)分区。

这是 Boot-Repair-Disk 输出的一部分:

Is there RAID on this computer? no
File descriptor 8 (/proc/17432/mountinfo) leaked on lvs invocation. Parent PID 19248: /bin/sh
Error: /dev/mapper/cl-00: unrecognised disk label
Error: /dev/mapper/cl-01: unrecognised disk label
Error: /dev/mapper/cl-02: unrecognised disk label
Warning: Unable to open /dev/sr0 read-write (Read-only file system).  /dev/sr0 has been opened read-only.
Error: Invalid partition table - recursive partition on /dev/sr0.
boot-repair is executed in live-session (Boot-Repair-Disk 64bit 1oct2017, zesty, Ubuntu, x86_64)
CPU op-mode(s):      32-bit, 64-bit
file=/cdrom/preseed/lubuntu.seed boot=casper initrd=/casper/initrd.lz quiet splash --
ls: cannot access '/home/usr/.config': No such file or directory
Set sda as corresponding disk of mapper/cl-00
Set sda as corresponding disk of mapper/cl-01
Set sda as corresponding disk of mapper/cl-02
mount: /mnt/boot-sav/mapper/cl-00: unknown filesystem type 'crypto_LUKS'.
mount /dev/mapper/cl-00 : Error code 32
mount -r /dev/mapper/cl-00 /mnt/boot-sav/mapper/cl-00
mount: /mnt/boot-sav/mapper/cl-00: unknown filesystem type 'crypto_LUKS'.
mount -r /dev/mapper/cl-00 : Error code 32
mount: /mnt/boot-sav/mapper/cl-01: unknown filesystem type 'crypto_LUKS'.
mount /dev/mapper/cl-01 : Error code 32
mount -r /dev/mapper/cl-01 /mnt/boot-sav/mapper/cl-01
mount: /mnt/boot-sav/mapper/cl-01: unknown filesystem type 'crypto_LUKS'.
mount -r /dev/mapper/cl-01 : Error code 32
mount: /mnt/boot-sav/mapper/cl-02: unknown filesystem type 'crypto_LUKS'.
mount /dev/mapper/cl-02 : Error code 32
mount -r /dev/mapper/cl-02 /mnt/boot-sav/mapper/cl-02
mount: /mnt/boot-sav/mapper/cl-02: unknown filesystem type 'crypto_LUKS'.
mount -r /dev/mapper/cl-02 : Error code 32

=================== os-prober:
/dev/sda1:Windows 7:Windows:chain
/dev/sda2:Windows 7:Windows1:chain

=================== blkid:
/dev/sda1: LABEL="System" UUID="FC30DADA30DA9B4A" TYPE="ntfs" PARTUUID="e7d2fa64-01"
/dev/sda2: LABEL="Main disk" UUID="E6C200E1C200B837" TYPE="ntfs" PARTUUID="e7d2fa64-02"
/dev/sda3: UUID="b43f57d3-c143-47b0-ad99-a5b12a0416be" TYPE="ext4" PARTUUID="e7d2fa64-03"
/dev/sr0: UUID="2017-10-29-00-56-18-00" LABEL="Boot-Repair-Disk 64bit" TYPE="iso9660" PTUUID="6b8b4567" PTTYPE="dos"
/dev/loop0: TYPE="squashfs"
/dev/sda5: UUID="sWZAY3-8hDE-wcdv-rEsu-pTcr-9lPV-QEfxlo" TYPE="LVM2_member" PARTUUID="e7d2fa64-05"
/dev/zram0: UUID="462ef96d-8ed3-405e-92c4-043654187abd" TYPE="swap"
/dev/zram1: UUID="df6b8b51-4029-4d37-86ec-d70532265f9b" TYPE="swap"
/dev/zram2: UUID="9d842b41-46c1-4ed3-aefb-447d99a6321f" TYPE="swap"
/dev/zram3: UUID="65d9a196-c801-4e87-9283-314b665108d6" TYPE="swap"
/dev/zram4: UUID="b2cb39b0-9fe1-4485-b044-7d408527117f" TYPE="swap"
/dev/zram5: UUID="f6b1cecd-603e-40a3-8eb3-2bc1ddaca8c1" TYPE="swap"
/dev/zram6: UUID="2fc865d0-0b3b-4d11-bb8d-c272a21e5c39" TYPE="swap"
/dev/zram7: UUID="5be79bcf-4b46-4d62-81b2-952b79e0ecda" TYPE="swap"
/dev/mapper/cl-00: UUID="6eac3a8f-7854-40c7-ae94-c1d288a60698" TYPE="crypto_LUKS"
/dev/mapper/cl-01: UUID="d0e378ae-9140-4335-94e6-2d73a3cb7bd1" TYPE="crypto_LUKS"
/dev/mapper/cl-02: UUID="00e698ad-ac0b-4e27-9bc7-bdcb524ce4ba" TYPE="crypto_LUKS"  

1 disks with OS, 2 OS : 0 Linux, 0 MacOS, 2 Windows, 0 unknown type OS.

在尝试重新安装 GRUB 之前真的有必要解密 LUKS LVM 分区吗?


编辑:回答评论中的问题:

输出fdisk -l /dev/sda:

Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
Disk model: Seagate ST950056
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xe7d2fa64

Device     Boot     Start       End   Sectors   Size Id Type
/dev/sda1            2048   3074047   3072000   1.5G 27 Hidden NTFS WinRE
/dev/sda2  *      3074048 629905407 626831360 298.9G  7 HPFS/NTFS/exFAT
/dev/sda3       629905408 632002559   2097152     1G 83 Linux
/dev/sda4       632002560 976773119 344770560 164.4G  5 Extended
/dev/sda5       632004608 975978495 343973888   164G 8e Linux LVM
  • 它使用来自 CentOS 8 的默认 GRUB,即 GRUB2

  • LVM 分区是直接从 CentOS 安装程序创建的

  • 笔记本电脑(将近 10 年的历史)使用 BIOS,而不是 UEFI

  • 安装程序从不询问将 GRUB 放在哪里,它是自动完成的

centos dual-boot
  • 1 个回答
  • 1258 Views
Martin Hope
dr_
Asked: 2019-12-07 07:53:44 +0800 CST

如何检测现在或过去哪个进程使用了​​文件

  • 6

这是一个假设性问题,而不是我目前遇到的问题。

您如何检测现在或过去哪个进程使用了​​文件?

找出哪个进程正在访问filename,lsof filename或者fuser filename将完成工作。但是,如果想知道filename 过去 24 小时内访问了哪些进程怎么办?

一个人可以逃脱这个丑陋的(*)黑客

while true; do fuser filename; sleep 1; done

并让它在另一个学期运行 24 小时。但实际上有没有更好的系统,而不建立一个完整的审计框架?



(*) 更不用说fuser如果不到 1 秒可能无法检测到访问...

audit lsof
  • 1 个回答
  • 175 Views
Martin Hope
dr_
Asked: 2019-10-10 03:32:36 +0800 CST

哪个 CentOS 7 软件包提供了“启动”手册页?

  • 4

在我的 CentOS 7.7.1908 上,boot没有安装(描述系统启动过程)的手册页。如何找到哪个包提供它?

yum whatprovides /usr/share/man/man7/boot.7.gz不返回任何结果。

bootup手册页是从基本 repo 安装的,并引用了boot(7)SEE ALSO 部分中的手册页。

centos
  • 2 个回答
  • 216 Views
Martin Hope
dr_
Asked: 2019-08-23 23:28:42 +0800 CST

lvresize 报告不正确的逻辑卷大小

  • 0

根据(和我们的记录) ,我曾经lvresize将 15 Gb 添加到大小为 10 Gb 的逻辑卷中。df但是,lvresize发现 LV 的大小为 20 Gb,因此调整大小的 LV 为 35 Gb。

这是为什么?

[root@host]# df -h /mydir
Filesystem                                          Size  Used Avail Use% Mounted on
/dev/mapper/myvg-mylv                                10G  7.0G  3.1G  70% /mydir

[root@host]# lvresize -r -L+15G /dev/mapper/myvg-mylv    
  Size of logical volume myvg/mylv changed from 20.00 GiB (5120 extents)
  to 35.00 GiB (8960 extents).
  Logical volume myvg/mylv successfully resized.
meta-data=/dev/mapper/myvg-mylv isize=256    agcount=20, agsize=131072 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=0        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=2621440, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 2621440 to 9175040

[root@host]# df -h /mydir
Filesystem                                          Size  Used Avail Use% Mounted on
/dev/mapper/myvg-mylv                                35G  7.0G   29G  20% /mydir
lvm disk-usage
  • 1 个回答
  • 159 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve