[DEBUG] Linux resolve df command is stuck

Error phenomenon:

Input df command and the command is stuck
Can not us cd / command to access /(root) directory
Can not us ls / command to display /(root) directory

Analysis:

There may be some network storage disconnected

Solution:

Step One: Use mount command to check if there is any disconnected network storage here

# mount

Step Two: Use unmount command to unmount this disconnected network storage

# umount -f -l <nfs storage which is stuck>

[步骤] SLES 软件库的启用和禁用

注意:

在启用或禁用 SLES 的软件库前,要先注册此 SLES

正文:

步骤一:显示所有可用软件库

# SUSEConnect --list-extensions

步骤二:启用软件库

# SUSEConnect -p sle-module-live-patching/15.3/x86_64

(补充:这里以启用 sle-module-live-patching/15.3/x86_64 软件库为例)

步骤三:禁用软件库

# SUSEConnect -d -p sle-module-basesystem/15.3/x86_64

(补充:这里以禁用用 sle-module-live-patching/15.3/x86_64 软件库为例)

[步骤] RHEL 系统的注册 (注册到 Red Hat 官网)

正文:

步骤一:清除旧有的注册信息

1.1 清除所有的旧有注册信息

# subscription-manager remove --all

1.2 取消注册

# subscription-manager unregister

1.3 清楚所有的就有数据

# subscription-manager clean

1.4 确保所有 satellite 客户端安装包已经删除

# yum remove katello-ca-consumer-*

步骤二:确保 RHEL 系统的注册网站指向 Red Hat 官网

# vim /etc/rhsm/rhsm.conf

确保部分内容如下:

......
hostname = subscription.rhsm.redhat.com
......
baseurl = https://cdn.redhat.com
......

步骤三:注册 RHEL 系统到 Red Hat 官网

3.1 非交互式

# subscription-manager register --username <username> --password <password> --auto-attach

(注意:如果完成了本文的 2.1 就不用再执行 本文的 2.2 了)

3.2 交互式注册 RHEL 系统到 Red Hat 官网

3.2.1 交互式注册 RHEL 系统到 Red Hat 官网
# subscription-manager register
3.2.2 在 Red Hat 官网上将相关订阅 (license) 分配给系统

登录 Red Hat 官网 –> Red Hat Customer Portal –> subscriptions –> systems –> <system name> –> 添加订阅

3.2.3 刷新订阅
# subscription-manager refresh

参考文献:

https://access.redhat.com/solutions/253273

[步骤] SFTP 安全 (多用户免密码登录)

注意:

在设置多用户免密码登录 SFTP 之前要先搭建 SFTP

正文:

步骤一:指定 SFTP 公钥的存放位置

1.1 修改 /etc/ssh/sshdsftp_config 配置文件

# vim /etc/ssh/sshdsftp_config

并将部分内容修改如下:

......
Subsystem       sftp    internal-sftp -l VERBOSE -f LOCAL3
Match LocalPort 2222
Match Group sftp
ChrootDirectory /%u
AuthorizedKeysFile /etc/ssh/authorized_keys/%u/.ssh/authorized_keys
ForceCommand    internal-sftp -m 770
AllowTcpForwarding no
X11Forwarding no


补充:
1) 这里以将:
SFTP 的端口设置为 2222
SFTP 用户可以进入的目录只能为 /<user>
SFTP 用户存放的公钥的文件为 /etc/ssh/authorized_keys/<user>/.ssh/authorized_keys
SFTP 上传的文件默认权限是 770 (-m 770 参数也可以使用 -u 770 替代,但是 -u 参数有时候会不起作用)
为例
2) 其它配置方案可以参考

SFTP 的配置案例

(注意:当使用 %u 参数来保证不通的用户使用不通的 SFTP 目录时,用户名为 user_a 、user_b、user_c 的用户可能会使用同一个名为 user 的目录)

1.2 让限制 SFTP 用户可以进入的目录的设置生效

# systemctl restart sshdsftp

步骤二:创建 /etc/ssh/authorized_keys 目录

2.1 进入 /etc/ssh/ 目录

# cd /etc/ssh/

2.2 创建 /etc/ssh/authorized_keys 目录

# mkdir authorized_keys

2.3 更改 /etc/ssh/authorized_keys 目录的所属主和所属组

# chown root:root authorized_keys

2.4 更改 /etc/ssh/authorized_keys 目录的权限

# chmod 755 authorized_keys

步骤三:创建 /etc/ssh/authorized_keys/<user>/ 目录

3.1 进入 /etc/ssh/authorized_keys 目录

# cd authorized_keys

3.2 创建 /etc/ssh/authorized_keys/<user>/ 目录

# mkdir sftpuser

3.3 更改 /etc/ssh/authorized_keys/<user>/ 目录的所属主和所属组

# chown sftpuser:sftpuser sftpuser

3.4 更改 /etc/ssh/authorized_keys/<user>/ 目录的权限

# chmod 755 sftpuser

步骤四:创建 /etc/ssh/authorized_keys/<user>/.ssh 目录

4.1 进入家目录

# cd <user name>

4.2 创建 /etc/ssh/authorized_keys/<user>/.ssh 目录

# mkdir .ssh

4.3 更改 /etc/ssh/authorized_keys/<user>/.ssh 目录的所属主和所属组

# chown sftpuser:sftpuser .ssh

(补充:这里用户名是 sftpuser 主组名是 sftpuser 为例)

4.4 更改 /etc/ssh/authorized_keys/<user>/.ssh 目录的权限

# chmod 700 .ssh

步骤五:创建 /etc/ssh/authorized_keys/<user>/.ssh/authorized_keys 文件

5.1 进入 /etc/ssh/authorized_keys/<user>/.ssh 目录

# cd .ssh

5.2 创建 /etc/ssh/authorized_keys/<user>/.ssh/authorized_keys 文件

# touch authorized_keys

5.3 更改 /etc/ssh/authorized_keys/<user>/.ssh/authorized_keys 文件的所属主和所属组

# chown sftpuser:sftpuser authorized_keys

(补充:这里用户名是 sftpuser 主组名是 sftpuser 为例)

5.4 更改 /etc/ssh/authorized_keys/<user>/.ssh/authorized_keys 文件的权限

# chmod 600 authorized_keys

(补充:在本文步骤二中的 authorized_keys 文件也可以通过使用 ssh-copy-id 命令创建以后拷贝到 /etc/ssh/authorized_keys/<user>/.ssh/ 目录下)

步骤六:复制 SSH 公钥

# vi authorized_keys

将 SSH 公匙复制于此

(步骤略)

(补充:在本文步骤五和步骤六中 authorized_keys 文件也可以通过以 ssh-copy-id 命令创建以后拷贝到 /etc/ssh/authorized_keys/<user>/.ssh/ 目录下)

参考文献:

https://access.redhat.com/solutions/3787571

[内容] /etc/resolv.conf 配置文件的 search 选项

内容一:测试 search 选项的配置

# cat /etc/resolv.conf
search eternalcenter.com local new
nameserver 8.8.8.8

内容二:测试 search 选项

2.1 查询 zhumingyu

# host -a zhumingyu
Trying "zhumingyu.eternalcenter.com"
Trying "zhumingyu.local"
Trying "zhumingyu.new"
Trying "zhumingyu"
Host zhumingyu not found: 3(NXDOMAIN)
Received 102 bytes from 8.8.8.8#53 in 62 ms

(补充:当查询 zhumingyu 时,也就是中间没有点 “.”,则默认会被视为查询主机名,会先依次把 eternalcenter.com、local 和 new 作为后缀添加到 zhumingyu 后进行查询,最后才查询 zhumingyu)

2.2 zhumingyu.com

# host -a zhumingyu.com
Trying "zhumingyu.com"
Received 31 bytes from 1.1.1.1#53 in 217 ms
Trying "zhumingyu.com.eternalcenter.com"
Trying "zhumingyu.com.local"
Trying "zhumingyu.com.new"
Host zhumingyu.com.new not found: 4(NOTIMP)
Received 35 bytes from 1.1.1.1#53 in 218 ms

(补充:当查询 zhumingyu.com 时,也就是中间有 1 个点 “.”,则默认会被视为查询域名,会先查询 mingyuzhu.com,如果查询失败,则会先依次把 eternalcenter.com、local 和 new 作为后缀添加到 zhumingyu 后进行查询)

2.3 查询 zhumingyu.com.

# host -a zhumingyu.com.
Trying "zhumingyu.com"
Host zhumingyu.com not found: 4(NOTIMP)
Received 31 bytes from 1.1.1.1#53 in 204 ms
Received 31 bytes from 1.1.1.1#53 in 204 ms

(补充:当查询 zhumingyu.com. 时,也就是末尾有 1 个点 “.”,默认会被视为查询域名,且只会查询这个域名。不会查询 search 里的每 1 项)