几个小问题
作者:互联网
1、 无法设置用户进程限制
在使用命令ulimit的时候,发现手动能调整用户的进程数量,如下所示:
[root@RHEL8 ~]#ulimit -u(默认最大的用户进程数,user process)
1024
[root@RHEL8 ~]#ulimit -u 4096(将用户进程数最大值修改为4096,临时生效)
[root@RHEL8 ~]#ulimit -u (查看用户进程数量)
4096
进行永久设置如下:
[root@RHEL8 ~]#ls -l /etc/security/limits.conf (永久生效的配置文件)
-rw-r--r-- 1root root 1896 Jan 16 00:43 /etc/security/limits.conf
[root@RHEL8 ~]#grep nproc /etc/security/limits.conf (修改所有用户的最大进程数量为4096)
* soft nproc 4096
* hard nproc 4096
[root@RHEL8 ~]#ulimit -u(重启测试查看,发现没有变化)
1024
然后开始检查所有的环境变量配置文件,查看其中是否进行设置ulimit,如下配置文件:
[root@RHEL8 ~]#ls -l ~/.bashrc ~/.bash_profile /etc/profile /etc/bashrc (没有进行设置限制)
-rw-r--r-- 1 root root 2681 Jan 16 00:57 /etc/bashrc
-rw-r--r--. 1root root 1793 Jun 30 2011 /etc/profile
-rw-r--r--. 1root root 176 May 20 2009 /root/.bash_profile
-rw-r--r--. 1root root 176 Sep 22 2004 /root/.bashrc
查看/etc目录下的所有文件,进行ulimit过滤,如下:
[root@RHEL8 ~]#find /etc/ |xargs grep "ulimit" (未发现设置ulimit)
在环境变量中设置ulimit,查看是否能够生效:
[root@RHEL8 ~]#echo "ulimit -u 2048" >>/etc/bashrc (在环境变量中追加ulimit设置)
[root@RHEL8 ~]#tail -1 /etc/bashrc
ulimit -u 2048
[root@RHEL8 ~]#ulimit -u (重启测试)
2048
最后,在进行全盘查找的时候,试试使用nproc进行查找,如下:
[root@RHEL8security]# find . |xargs grep "nproc" | awk '{print $1}' (查找直接nproc设置ulimit)
./limits.d/90-nproc.conf:*
./limits.conf
[root@RHEL8 ~]#cd /etc/security/limits.d/ (查看默认设置用户进程数)
[root@RHEL8limits.d]# ls
90-nproc.conf
[root@RHEL8limits.d]# cat 90-nproc.conf
# Default limitfor number of user's processes to prevent
# accidental fork bombs.
# See rhbz#432903 for reasoning.
* soft nproc 1024
发现在配置文件90-nproc.conf中进行设置了默认的用户进程数,用来进行防止bash炸弹,在默认情况下用户的进程数为没有限制,从而使用1024作为用户进程最大数量限制,即使是root用户也会受制于次设置,最后将此文件中的设置删除即可设置用户的最大进程数。
重启测试发现能够正常设置,如下:
[root@RHEL8 ~]#ulimit -u(ulimit用户进程数能正常设置)
4096
2、 文件名中文显示乱码
在很多时候,如果主机上有文件名为中文,可能会显示为乱码,如下所示:
[root@RHEL8 ~]#ls -l
total 4
drwxr-xr-x 2root root 4096 Jan 16 02:18 涓..娴..
当需要进入此目录时,有几种方式可以进去,如下:
[root@RHEL8 ~]#cd ???牟??(直接拷贝显示的乱码,然后直接cd进去,可能会进去)
[root@RHEL8 中文测?#
将文件进行改名:
[root@RHEL8 ~]#ls -li(查看文件的inode号)
total 4
391690 drwxr-xr-x2 root root 4096 Jan 16 02:25 ???牟??
[root@RHEL8 ~]#find -inum 391690 -exec mv {} kel \; (使用find修改文件名,虽然报错,但是依旧能修改成功)
find:`./\326\320\316牟\342\312': No such file or directory
[root@RHEL8 ~]#ls -l(查看修改之后的文件名)
total 4
drwxr-xr-x 2 rootroot 4096 Jan 16 02:25 kel
还有就是利用上传下载工具,将文件下载下来,然后进行命名为英文名,然后再次上传即可。
删除的时候,如下所示:
[root@RHEL8 ~]#ls -li
total 4
391690 drwxr-xr-x2 root root 4096 Jan 16 02:30 ???牟??
[root@RHEL8 ~]#find -inum 391690 |xargs rm -rf (根据索引号删除文件)
[root@RHEL8 ~]#ls -l
total 0
修改终端编码(显示正确的汉字),如下:
[root@RHEL8 ~]#ls -l(修改终端编码后能正常显示中文名称)
total 4
drwxr-xr-x 2root root 4096 Jan 16 02:18 中文测试
3、 无法启动init 5
在启动级别为5的时候,无法启动,报错如下:
[root@RHEL8 ~]#tail -f /var/log/messages (日志错误信息)
Jan 16 06:52:39RHEL8 init: start-ttys main process (1165) terminated with status 1
Jan 16 06:52:39RHEL8 init: prefdm main process (1164) terminated with status 1
Jan 16 06:52:39RHEL8 init: prefdm main process ended, respawning
Jan 16 06:52:39RHEL8 init: prefdm main process (1185) terminated with status 1
Jan 16 06:52:39RHEL8 init: prefdm main process ended, respawning
在无法启动5级别服务的时候,依旧是可以使用ssh连接的,从而可以直接切换到3级别,然后使用,如下:
[root@RHEL8 ~]#init 3(切换到3级别)
[root@RHEL8 ~]#init 5 (切换到5级别)
[root@RHEL8 ~]#runlevel (查看当前级别)
3 5
上面的主要原因是没有安装KDE包,从而进行安装KDE包,如下:
[root@RHEL8 ~]#yum -y groupinstall "KDE Desktop" (安装KDE包)
在安装完毕之后,可以重启尝试,然后使用命令startx来尝试启动桌面即可:
[root@RHEL8 ~]#startx (启动桌面环境)
标签:16,几个,etc,RHEL8,问题,ulimit,nproc,root 来源: https://blog.51cto.com/15060545/2654260