linux系统用户不能登录报错

本文介绍了解决Linux系统中user用户登录错误及显示错误目录的问题。通过调整用户目录的所有权和组权限,确保用户可以正常登录并访问正确的家目录。

Linux系统用户创建了user用户,用户为liuqiang,系统登陆报错;

user用户登陆系统后,显示的是root的/目录;

Last login: Sat Jan 13 14:07:31 2018 from mu02
[root@c02b03 ~]# su liuqiang
bash: /home/liuqiang/.bashrc: Permission denied
bash-4.1$ ls -l /home
解决方法:
使用命令ls -l /home查看该目录下的权限,发现user用户的/home下的user的属主和属组都已经变更了,不是user了;

使用以下命令修改user的属主和属组:
sudo chown user(属主)-R  /home/user;
sudo chgrp user(属组)-R  /home/user;

比如: 

chown liuqiang  -R /home/liuqiang

chgrp liuqiang -R /home/liuqiang
再次查看user的属主和属组都是liuqiang了;
重新用user用户登陆:登陆成功;

或者直接使用  chown -R -v liuqiang6:liuqiang6   hadoop-1.2.1

这样目录连带下面的文件所有者都会更改。

查看mount -l 有 /lustre/home on /home type none (rw,bind)

执行umount /home 


<think>我们正在讨论的是在Linux系统启动时禁用报错相关服务的方法。根据用户提供的引用,报错可能涉及多个方面:网络服务重启报错(引用[1])、VMware与Device/Credential Guard兼容性问题(引用[2])、系统启动时因自动挂载配置错误导致的问题(引用[3])、以及Redis服务因透明大页(THP)导致的警告(引用[4])。我们的目标是禁用或调整这些导致报错的服务或配置,以避免系统启动时出现错误。 解决方案将分为以下几个部分: 1. 禁用导致网络服务报错的服务(针对引用[1]) 2. 解决VMware与Device/Credential Guard的兼容性问题(针对引用[2]) 3. 修复系统启动时自动挂载配置错误(针对引用[3]) 4. 禁用透明大页(THP)以解决Redis警告(针对引用[4]) 注意:在修改任何系统配置之前,建议备份相关文件。 具体方法如下: ### 1. 禁用导致网络服务报错的服务 当网络服务重启报错时,可能是由于网络服务配置错误或依赖服务未启动。我们可以通过禁用有问题的网络服务或修复其配置来解决。 - **步骤1:检查网络服务状态** ```bash systemctl status networking.service # Debian/Ubuntu systemctl status NetworkManager.service # RHEL/CentOS ``` - **步骤2:禁用问题服务(如果确定不需要)** ```bash sudo systemctl stop [service_name] sudo systemctl disable [service_name] ``` - **步骤3:修复网络配置** 根据引用[1],检查网络配置文件(如`/etc/network/interfaces`或`/etc/sysconfig/network-scripts/`下的文件)是否有误,并修复。 ### 2. 解决VMware与Device/Credential Guard的兼容性问题(引用[2]) 在Windows主机上运行VMware时,如果启用了Device Guard或Credential Guard,可能会导致报错。解决方法是在Windows主机上禁用这些特性。 - **步骤1:禁用Device Guard和Credential Guard** 在Windows主机上以管理员身份运行 PowerShell: ```powershell # 禁用Device Guard Set-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Control\DeviceGuard -Name EnableVirtualizationBasedSecurity -Value 0 Set-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Control\DeviceGuard -Name RequirePlatformSecurityFeatures -Value 0 # 禁用Credential Guard Set-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Control\Lsa -Name LsaCfgFlags -Value 0 ``` - **步骤2:重启Windows主机** 注意:此操作需要在宿主机的Windows系统上进行,而不是在Linux虚拟机内。 ### 3. 修复系统启动时自动挂载配置错误(引用[3]) 如果系统启动时因为自动挂载配置(如`/etc/fstab`中的配置)错误导致无法启动,可以进入救援模式修复。 - **步骤1:使用Live USB启动系统** - **步骤2:挂载原系统根分区** ```bash sudo mount /dev/sdXn /mnt # sdXn 是根分区 ``` - **步骤3:编辑自动挂载配置文件** ```bash sudo nano /mnt/etc/fstab ``` 注释或删除导致问题的挂载行(比如指向已删除的Windows分区)。 - **步骤4:更新initramfs(如果需要)** ```bash sudo mount --bind /dev /mnt/dev sudo mount --bind /proc /mnt/proc sudo mount --bind /sys /mnt/sys sudo chroot /mnt update-initramfs -u exit ``` ### 4. 禁用透明大页(THP)以解决Redis警告(引用[4]) Redis在启动时可能会因为透明大页(Transparent Huge Pages)导致性能问题,需要禁用THP。 - **步骤1:临时禁用THP** ```bash echo never > /sys/kernel/mm/transparent_hugepage/enabled ``` - **步骤2:永久禁用THP** ```bash # 在/etc/rc.local中添加(如果没有则创建) echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' | sudo tee -a /etc/rc.local sudo chmod +x /etc/rc.local # 或者使用systemd服务(适用于使用systemd的系统) # 创建服务文件 sudo nano /etc/systemd/system/disable-thp.service ``` 内容如下: ```ini [Unit] Description=Disable Transparent Huge Pages (THP) [Service] Type=oneshot ExecStart=/bin/sh -c "echo never > /sys/kernel/mm/transparent_hugepage/enabled" [Install] WantedBy=multi-user.target ``` 然后启用服务: ```bash sudo systemctl daemon-reload sudo systemctl start disable-thp sudo systemctl enable disable-thp ``` - **步骤3:重启Redis服务** ```bash sudo systemctl restart redis ``` 以上方法针对不同的报错情况提供了相应的服务禁用或配置调整方案。请根据实际报错情况选择对应的方法。 --- §§相关问题§§ 1. 如何查看Linux系统启动时的服务状态? 2. 如何在Windows主机上彻底禁用Device Guard? 3. 如何修复Linux系统启动时`/etc/fstab`配置错误? 4. 透明大页(THP)对Redis性能有什么影响? </think> ### Linux系统启动时禁用报错相关服务的解决方法 根据引用内容中的报错类型,以下是针对性的服务禁用方法: --- #### **1. 网络服务报错处理(引用[1])** **禁用问题服务并修复配置** ```bash # 查看失败的服务 systemctl list-units --failed # 禁用问题服务(示例:NetworkManager) sudo systemctl stop NetworkManager sudo systemctl disable NetworkManager # 启用传统网络服务 sudo systemctl enable networking sudo systemctl start networking # 检查网络配置(关键文件) sudo nano /etc/network/interfaces # Debian/Ubuntu sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0 # RHEL/CentOS ``` > **注意**:修复后使用`systemctl daemon-reload`重载配置[^1] --- #### **2. VMware兼容性报错(引用[2])** **永久禁用Device/Credential Guard** ```powershell # 在Windows主机执行(管理员权限) bcdedit /set hypervisorlaunchtype off bcdedit /set {current} nx AlwaysOff ``` ```bash # 在Linux中确保内核模块加载 echo "blacklist vboxdrv" | sudo tee /etc/modprobe.d/blacklist-vmware.conf sudo update-initramfs -u ``` > 需重启宿主Windows系统生效[^2] --- #### **3. 自动挂载错误处理(引用[3])** **修复fstab错误配置** ```bash # 在Live USB环境下操作 sudo mount /dev/sda2 /mnt # 挂载根分区 sudo nano /mnt/etc/fstab # 注释或删除错误挂载行(例如Windows分区) # /dev/sda1 /mnt/win ntfs defaults 0 0 → # /dev/sda1 ... # 重建内核镜像 sudo mount --bind /dev /mnt/dev sudo chroot /mnt mount -t proc proc /proc update-initramfs -u exit ``` > 使用`lsblk`确认分区标识符[^3] --- #### **4. Redis透明大页警告(引用[4])** **禁用THP服务** ```bash # 创建禁用THP的服务 sudo nano /etc/systemd/system/disable-thp.service ``` ```ini [Unit] Description=Disable Transparent Huge Pages (THP) After=sysinit.target [Service] Type=oneshot ExecStart=/bin/sh -c "echo never > /sys/kernel/mm/transparent_hugepage/enabled" [Install] WantedBy=multi-user.target ``` ```bash # 启用服务 sudo systemctl daemon-reload sudo systemctl enable --now disable-thp # 验证结果 cat /sys/kernel/mm/transparent_hugepage/enabled ``` > 输出应为`always madvise [never]`[^4] --- ### 通用服务管理技巧 **服务状态检查公式** $$ \text{服务状态} = \begin{cases} \text{正常} & \text{if } \texttt{systemctl is-active service}=active \\ \text{需修复} & \text{otherwise} \end{cases} $$ **服务禁用工作流**: ```mermaid graph LR A[识别报错服务] --> B[备份配置文件] B --> C[停止服务] C --> D[禁用自启] D --> E[检查依赖关系] E --> F[测试系统启动] ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值