CentOS:Cannot execute "/etc/rc.d/rc"

本文详细记录了CentOS4.5服务器在挂载另一台服务器后出现的一系列错误,包括无法正常启动、服务未启动、网络问题等。作者通过放入CentOS4.4安装盘进行引导、尝试恢复文件、手动复制关键文件等方法,最终解决了问题并恢复了系统。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我的CentOS 4.5在一次mount另一台服务器后,可能因为没有正常退出,就挂了,开机提示一些错误:
...
INIT : can't execute /etc/rc.d/tc.sysinit not found
...
进入系统时提示:
...
Kernel 2.4.26-15.EL on an i686
( none ) login :
可以登录,但会提示:
modprobe : modprobe : Can't locate module Char-major-10-224
login(PAM-unix)[22] Session ipened for user root by (uid=0)
-bash: Command not found
...
reboot后提示
...
INIT : can not execute "/etc/rc.d/rc"
INIT: no more processes left in this runlevel
...

网络及很多服务都没有启动
后来google一些帮助,试着恢复:
放入CentOS 4.4的安装盘,并引导
:linux rescue   *进入恢复模式
跳过网卡启用
检查发现/etc/rc.d/下面没有rc及rc.sysinit这两个文件?
于是,
#fsck -y /dev/hda1
#cd /mnt/source/CentOS/RPMS
#rpm -ivh --root --force /mnt/sysimage init*
可是无法安装?错误提示好象也是不能创建错误日志
进入single user后,也是一样无法安装
手头上没有CentOS 4的系统,没有办法只有找了一个RedHat 9.0上的/etc/rc.d/rc和/etc/rc.d/rc.sysinit通过U盘复制到CentOS的/etc/rc.d目录下。
呵呵,开始有一些服务启动了,但是开机过程中还是有两个错误:
#rpm -ivh --force /mnt/u/init*
终于可以执行了,开机网络服务等也都恢复了,可是关机还是关不了,提示:
...
INIT: no more processes left in this runlevel
...
查看应该是rc.sysinit的文件恢复了,可是rc文件还是我从RedHat 9.0上面copy的。
算了,忙活半天,还会有一些莫名的错误,将一些配置文件FTP到另一台服务器上备份,重装了事!

阅读(1526) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
评论热议
[root@control ansible]# ansible-playbook -i inventory k8s-deploy.yml PLAY [Deploy Kubernetes Cluster on openEuler] ************************************************************************* TASK [Gathering Facts] ************************************************************************************************ [WARNING]: Platform linux on host control is using the discovered Python interpreter at /usr/bin/python3, but future installation of another Python interpreter could change this. See https://docs.ansible.com/ansible/2.9/reference_appendices/interpreter_discovery.html for more information. ok: [control] [WARNING]: Platform linux on host node02 is using the discovered Python interpreter at /usr/bin/python3, but future installation of another Python interpreter could change this. See https://docs.ansible.com/ansible/2.9/reference_appendices/interpreter_discovery.html for more information. ok: [node02] [WARNING]: Platform linux on host node01 is using the discovered Python interpreter at /usr/bin/python3, but future installation of another Python interpreter could change this. See https://docs.ansible.com/ansible/2.9/reference_appendices/interpreter_discovery.html for more information. ok: [node01] TASK [Install required packages] ************************************************************************************** fatal: [node02]: FAILED! => {"changed": false, "msg": "Failed to download metadata for repo 'docker-ce-stable': Cannot prepare internal mirrorlist: Cannot resolve path for: \"releasever/$\"", "rc": 1, "results": []} fatal: [control]: FAILED! => {"changed": false, "msg": "Failed to download metadata for repo 'docker-ce-stable': Cannot prepare internal mirrorlist: Cannot resolve path for: \"releasever/$\"", "rc": 1, "results": []} fatal: [node01]: FAILED! => {"changed": false, "msg": "Failed to download metadata for repo 'docker-ce-stable': Cannot prepare internal mirrorlist: Cannot resolve path for: \"releasever/$\"", "rc": 1, "results": []} PLAY RECAP ************************************************************************************************************ control : ok=1 changed=0 unreachable=0 failed=1 skipped=0 rescued=0 ignored=0 node01 : ok=1 changed=0 unreachable=0 failed=1 skipped=0 rescued=0 ignored=0 node02 : ok=1 changed=0 unreachable=0 failed=1 skipped=0 rescued=0 ignored=0 [root@control ansible]# cat k8s-deploy.yml --- - name: Deploy Kubernetes Cluster on openEuler hosts: k8s_cluster become: yes vars: kubernetes_version: "1.28.0" containerd_version: "1.6.21" tasks: - name: Install required packages dnf: name: - curl - wget - vim - socat - conntrack-tools - ipvsadm - docker state: present - name: Start and enable Docker service systemd: name: docker enabled: yes state: started - name: Disable Swap command: swapoff -a ignore_errors: yes - name: Remove Swap from /etc/fstab replace: path: /etc/fstab regexp: '^([^#].*?\sswap\s+sw\s+.*)$' replace: '# \1' - name: Load Kernel Modules modprobe: name: "{{ item }}" state: present loop: - br_netfilter - overlay - name: Install containerd dnf: name: "containerd.io-{{ containerd_version }}.el7.x86_64" state: present - name: Configure containerd copy: dest: /etc/containerd/config.toml content: | version = 2 [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc] runtime_type = "io.containerd.runc.v2" [plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"] endpoint = ["https://registry-1.docker.io"] - name: Persist Kernel Modules copy: dest: /etc/modules-load.d/k8s.conf content: | br_netfilter overlay - name: Configure Sysctl copy: dest: /etc/sysctl.d/k8s.conf content: | net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 net.ipv4.ip_forward = 1 notify: Reload Sysctl - name: Add Kubernetes YUM Repo copy: dest: /etc/yum.repos.d/kubernetes.repo content: | [kubernetes] name=Kubernetes baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/ enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg - name: Install Kubernetes components dnf: name: - kubelet-{{ kubernetes_version }} - kubeadm-{{ kubernetes_version }} - kubectl-{{ kubernetes_version }} state: present disable_gpg_check: yes - name: Enable kubelet systemd: name: kubelet state: started enabled: yes - name: Initialize Kubernetes Master (Control Node Only) command: kubeadm init --pod-network-cidr=192.168.0.0/16 when: inventory_hostname == "control" register: kubeadm_init - name: Save kubeadm join Command (Control Node Only) copy: dest: /root/kubeadm-join.sh content: | #!/bin/bash {{ kubeadm_init.stdout_lines[-1] }} mode: '0700' when: inventory_hostname == "control" - name: Get kubeadm join Command from Control Node (Worker Nodes Only) slurp: src: /root/kubeadm-join.sh register: kubeadm_join delegate_to: control when: inventory_hostname != "control" - name: Execute kubeadm join on Worker Nodes command: "{{ kubeadm_join.content | b64decode }}" when: inventory_hostname != "control" handlers: - name: Reload Sysctl command: sysctl --system [root@control ansible]#
最新发布
07-09
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值