云服务器内容精选

  • 处理方法一:系统范围设置 以root用户登录云服务器。 执行以下命令,查看操作系统中当前打开的所有文件数和最大打开文件数设置(部分版本默认为366954)。 cat /proc/sys/fs/file-nr cat /proc/sys/fs/file-max 回显输出的第一列表示当前系统中所有打开的文件数。 执行以下命令,更改系统范围的最大打开文件数。 vim /etc/sysctl.conf 按i键进入编辑模式。 在文件末尾添加如下内容,具体的数值可以根据实际情况修改。 fs.file-max = 495000 按ESC键退出,并输入:wq保存配置。 执行以下命令,使修改生效。 sysctl -p
  • 问题原因 常见的可能导致系统启动失败或者无法进入系统的系统配置错误如表1所示。 表1 常见系统配置错误 问题类型 典型问题 配置错误 /etc/fstab文件缺失或者配置错误 SELinux配置错误 /etc/security/limits.conf配置错误 /etc/passwd配置格式错误 /etc/shadow配置格式错误 /etc/ssh/sshd_config配置格式错误 文件或目录缺失 /etc/ssh目录被误删 /etc/security目录被误删 /etc/passwd文件被误删 /etc/shadow文件被误删 /etc/ssh/sshd_config文件被误删 文件权限错误 SSH依赖的私钥权限配置过大 SSH依赖的公钥权限配置过大 内核参数配置错误 vm.nr_hugepages配置过大
  • 可能原因 Windows云服务器的动态端口耗尽。 由于Windows操作系统中TCP默认的TIME_WAIT时间为4分钟,因此,当Windows操作系统云服务器在长时间使用后,可能会存在处于TIME_WAIT状态并占用大量端口的连接,从而导致Windows云服务器访问外部网站或应用出现异常。 您可以在Windows云服务器的CMD命令提示符中,执行以下命令查看处于TIME_WAIT状态的连接。 netstat -an |find "TIME_WAIT" /c 执行结果如下: 图1 查看TIME_WAIT状态的连接数量
  • 处理方法 登录Windows云服务器。 以管理员身份运行CMD。 执行以下命令,查看当前的动态端口数量。 netsh int ipv4 show dynamicport tcp 图2 查看当前动态端口 执行以下命令,增大动态端口数量并再次查看当前动态端口数量。 netsh int ipv4 set dynamicport tcp start=1025 num=60000 netsh int ipv4 show dynamicport tcp 图3 设置动态端口 重新访问外部网站或应用。
  • 可能原因 一般来说不会出现删除文件后空间不释放的情况,但是也存在例外,比如文件进程锁定,或者有进程一直在向这个文件写数据。 Linux系统中的一个文件在文件系统中存放分为两个部分:数据部分和指针部分,指针位于文件系统的meta-data中,在将数据删除后,这个指针就从meta-data中清除了,而数据部分存储在磁盘中。在将数据对应的指针从meta-data中清除后,文件数据部分占用的空间就可以被覆盖并写入新的内容,之所以出现删除文件后,空间还没有释放,就是因为进程还在一直向这个文件写入内容,导致虽然删除了文件,但是由于进程锁定,文件对应的指针部分并未从meta-data中清除,而由于指针并未删除,系统内核就认为文件并未被删除,因此通过df命令查询空间并未释放。 当一个文件被删除后,在文件系统目录中已经不可见了,所以du就不会再统计它了。然而如果此时还有运行的进程持有这个已经被删除了的文件的句柄,那么这个文件就不会真正在磁盘中被删除,分区超级块中的信息也就不会更改。这样df仍旧会统计这个被删除了的文件。
  • 切换其他语言的输入法 以Windows 2008操作系统云服务器,切换日语输入法为例,: 登录云服务器,打开“控制面板”。 单击“区域和语言”选项。 图7 区域和语言 选择“键盘和语言”标签,并单击“更改键盘”。 图8 键盘和语言 打开“文本服务和输入语言”对话框,在“常规”标签中单击“添加”。 图9 文本服务和输入语言 在弹出的“添加输入语言”对话框中,找到“日语(日本)”。 图10 添加输入语言 双击“日语(日本)”展开,双击“键盘”子项展开,勾选“Microsoft IME”和“日语”,单击“确定”,分别再单击“应用”和“确定”保存修改后退出。 图11 选择日语
  • 处理方法 确认镜像是否支持UEFI启动。 若镜像中存在如下图所示的bootx64.efi文件,说明镜像支持UEFI启动,继续执行2。 若镜像中不存在bootx64.efi文件,说明镜像不支持UEFI启动,请通过BIOS方式启动。 手动选择启动项 输入exit,进入BIOS设置界面。 选择“Boot Manager”,按回车键。 选择“UEFI QEMU DVD-ROM xxxxxx”,按回车键。 按任意按键进入启动界面。 单击回车键,启动文件加载中。 进入安装界面,单击“现在安装”。 在“你想执行哪种类型的安装?”界面,选择“自定义:仅安装Windows(高级)(C)”。 在“你想将Windows安装在哪里?”界面,选择“加载驱动程序”。 在“加载驱动程序”弹窗中,单击“浏览”。 选择“CD驱动器”。 根据当前的操作系统版本,选择对应的驱动目录。 选择“viostor”目录,单击“确定”。 选择驱动程序,单击“下一步”。 选择磁盘,单击“下一步”。 进入“正在安装Windows”界面,开始安装操作系统。 安装过程大约耗时50分钟,安装完成后请重新登录弹性云服务器。
  • 处理方法 关闭AppX Deployment Service服务,操作步骤如下: 按“Win+R”键打开运行对话框,输入regedit并按回车键,打开注册表编辑器。 打开至注册表键值:“HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\AppXSvc”。 双击右侧子项中的“Start”,将“数值数据”中的“3”修改为“4”。 图1 修改数值数据 如果要启用AppX Deployment Service服务,将“数值数据”由“4”改回“3”即可。
  • 配置kdump操作步骤 查看是否已经安装kexec-tools。 rpm -q kexec-tools 如果没有安装,则执行下面命令安装。 yum install -y kexec-tools 开启kdump默认启动。 systemctl enable kdump 设置craskkernel参数,设置这个参数的目的是预留内存给capture kernel。 首先查看参数是否已经设置。 grep crashkernel /proc/cmdline 如果有显示,则表示已经设置,如果没有显示,则需要重新设置。 设置crashkernel,编辑/etc/default/grub文件。 GRUB_TIMEOUT=5 GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CM DLI NE_LINUX="crashkernel=auto rd.lvm.lv=rhel00/root rd.lvm.lv=rhel00/swap rhgb quiet" GRUB_DISABLE_RECOVERY="true" 找到GRUB_CMDLINE_LINUX参数,添加crashkernel=auto,其他内容不变。 执行grub命令,使以上配置生效。 grub2-mkconfig -o /boot/grub2/grub.cfg 打开/etc/kdump.conf文件中找到“path”参数,添加以下内容。 path /var/crash 默认是保存在/var/crash目录下,如果要保存到其他目录,则改成对应的目录, 例如保存在/home/kdump下,则改成: path /home/kdump 要确保指定的路径有足够的空间保存vmcore,建议剩余空间不小于 RAM 大小;也可以保存在SAN,nfs等共享设备上。 设置转存vmcore级别。 修改/etc/kdump.conf文件,添加如下参数,如果存在则无需添加。 core_collector makedumpfile -d 31 -c -c表示压缩vmcore文件, -d表示过滤掉部分无效的内存数据,可以根据需要调整,一般31即可,31是由如下的值与计算而成。 zero pages = 1 cache pages = 2 cache private = 4 user pages = 8 free pages = 16 执行如下命令重启系统,使以上配置生效。 reboot
  • 操作场景 本节操作介绍atop和kdump的配置方法。 不同的Linux版本使用的atop工具版本不同,因此配置方法稍微有所不同。 配置atop: atop简介 atop安装前准备 CentOS 7/8、AlmaLinux、 Rocky Linux系列操作系统配置atop CentOS 6系列操作系统配置atop Ubuntu 20/22、Debian 10/11系列操作系统配置atop Ubuntu 18、Debian 8/9系列操作系统配置atop Ubuntu 16系列操作系统配置atop SUSE 15、SUSE 12系列操作系统配置atop 使用源码方式安装(适用于CentOS Stream 9、openEuler、EulerOS等系列操作系统) 分析atop日志 配置kdump: 配置kdump使用须知 kdump简介 配置kdump操作步骤 检查kdump配置是否生效
  • CentOS 6系列操作系统配置atop 执行以下命令,安装atop。 yum install -y atop 编辑配置文件,修改采样周期。 vi /etc/sysconfig/atop 修改如下配置参数,修改后保存并退出。 LOG INTERVAL默认是600,可以修改成15,单位秒。 LOGINTERVAL=15 vi /etc/logrotate.d/atop 修改如下配置参数,修改后保存并退出。 默认atop日志保存周期为40天,可以根据实际修改“-mtime”的值为3,单位为天。 postrotate /usr/bin/find /var/log/atop/ -maxdepth 1 -mount -name atop_\[0-9\]\[0-9\]\[0-9\]\[0-9\]\[0-9\]\[0-9\]\[0-9\]\[0-9\]\* -mtime +3 -exec /bin/rm {} \; endscript 启动atop服务。 service atop start 检查是否启动成功,is running 表示运行正常。 service atop status atop (pid 3170) is running
  • Ubuntu 20/22、Debian 10/11系列操作系统配置atop 执行以下命令,安装atop。 apt-get install -y atop 编辑配置文件,修改采样周期。 vi /etc/default/atop 修改如下配置参数,修改后保存并退出。 LOGINTERVAL默认是600,可以修改成15,单位秒。 默认atop日志保存周期为28天,可以根据实际修改LOGGENERATIONS的值为3,单位为天。 LOGINTERVAL=15 LOGGENERATIONS=3 启动atop服务。 systemctl start atop 检查是否启动成功,active(running) 表示运行正常。 systemctl status atop atop.service - Atop advanced performance monitor Loaded: loaded (/etc/init.d/atop; bad; vendor preset: disabled) Active: active (running) since Sat 2024-03-11 14:09:47 CS T; 16s ago
  • Ubuntu 16系列操作系统配置atop 执行以下命令,安装atop。 apt-get install -y atop 编辑配置文件,修改采样周期。 vi /etc/default/atop 修改如下配置参数,修改后保存并退出。 LOGINTERVAL默认是600,可以修改成15,单位秒。 默认atop日志保存周期为28天,不支持修改。 LOGINTERVAL=15 启动atop服务。 systemctl start atop 检查是否启动成功,active(running) 表示运行正常。 systemctl status atop atop.service - LSB: Monitor for system resources and process activity Loaded: loaded (/etc/init.d/atop; bad; vendor preset: enabled) Active: active (running) since Mon 2024-04-29 19:33:22 CST; 38s ago
  • SUSE 15、SUSE 12系列操作系统配置atop 下载atop源码安装包。 wget https://www.atoptool.nl/download/atop-2.6.0-1.src.rpm 执行以下命令安装源码atop。 rpm -ivh atop-2.6.0-1.src.rpm 安装编译atop依赖软件包 zypper -n install rpm-build ncurses-devel zlib-devel 执行以下命令编译atop cd /usr/src/packages/SPECS rpmbuild -bb atop-2.6.0.spec 执行以下命令安装atop cd /usr/src/packages/RPMS/x86_64 rpm -ivh atop-2.6.0-1.x86_64.rpm 编辑配置文件,修改采样周期。 vi /etc/default/atop 修改如下配置参数,修改后保存并退出。 LOGINTERVAL默认是600,可以修改成15,单位秒。 默认atop日志保存周期为28天,可以根据实际修改LOGGENERATIONS的值为3,单位为天。 LOGINTERVAL=15 LOGGENERATIONS=3 重启atop服务。 systemctl restart atop 检查是否启动成功,active(running) 表示运行正常。 systemctl status atop atop.service - Atop advanced performance monitor Loaded: loaded (/usr/lib/systemd/system/atop.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2021-06-19 16:50:01 CST; 6s ago
  • 分析atop日志 atop启动后,会将采集记录存放在/var/log/atop目录下的日志文件中。 执行如下命令,查看日志文件。 atop -r /var/log/atop/atop_2024XXXX atop常用命令 打开日志文件后,您可以使用以下命令筛选数据。 c:按照进程CPU使用率进行降序筛选。 m:按照进程内存使用率进行降序筛选。 d:按照进程磁盘使用率进行降序筛选。 a:按照进程资源综合使用率进行降序筛选。 n:按照进程网络使用率进行降序筛选。 t:跳转到下一个监控采集点。 T:跳转到上一个监控采集点。 b:指定时间点,格式为YYYYMMDDhhmm。 系统资源监控字段含义 下图为部分监控字段以及数值,具体数值根据采样周期和atop版本有所不同。下图仅供参考,具体数据以您实际数据为准。 图1 系统资源监控字段 主要参数说明如下: ATOP 行:主机名、信息采样日期和时间点。 PRC 行:进程整体运行情况。 #sys 及 user:内核态和用户态所占 CPU 的时间值。 #proc:进程总数。 #zombie:僵死进程的数量。 #exit:采样周期期间退出的进程数量。 CPU 行:CPU 整体(即多核 CPU 作为一个整体 CPU 资源)的使用情况。CPU 行的各字段数值相加结果为 N*100%,N 为 CPU 核数。 #sys 及 user:内核态和用户态所占 CPU 的时间比例。 #irq:CPU 被用于处理中断的时间比例。 #idle:CPU 处在完全空闲状态的时间比例。 #wait:CPU 处在进程等待磁盘 IO ,导致 CPU 空闲状态的时间比例。 CPL 行:CPU 负载情况。 #avg1、avg5 和 avg15:过去1分钟、5分钟和15分钟内运行队列中的平均进程数量。 #csw:指示上下文交换次数。 #intr:指示中断发生次数。 MEM 行:内存的使用情况。 #tot:物理内存大小。 #free:空闲的物理内存大小 #cache :用于页缓存的内存大小。 #buff:用于文件缓存的内存大小。 #slab:系统内核占用的内存大小。 SWP 行:交换空间的使用情况。 #tot:交换区总量。 #free:空闲交换空间大小。 DSK 行:磁盘使用情况,每一个磁盘设备对应一列。如果有 sdb 设备,那么增加一行 DSK 信息。 #sda:磁盘设备标识。 #busy:磁盘忙时比例。 #read 及 write:读、写请求数量。 NET 行:多列 NET 展示了网络状况,包括传输层(TCP 和 UDP)、IP 层以及各活动的网口信息。 #xxxxxi:各层或活动网口收包数目。 #xxxxxo:各层或活动网口发包数目。 停止 atop atop运行会占用额外的系统和磁盘资源,不建议在业务环境下长期运行,您可在问题排查完成后,执行以下命令停止atop。 systemctl stop atop CentOS 6执行以下命令停止atop。 service atop stop