le fichier Linux ne peut pas être supprimé
Suppression normale
si fichier S'il appartient à l'utilisateur actuel, utilisez la commande rm pour le supprimer
rm -rf file.sh
S'il ne peut pas être supprimé, essayez de le supprimer en utilisant l'utilisateur root. S'il ne peut pas être supprimé, veuillez consulter les instructions ci-dessous. .
Commandes que vous devez connaître
Si la méthode de suppression ordinaire ne fonctionne pas, alors nous devons connaître la commande suivante pour la supprimer
lsattr
La commande lsattr est utilisée Pour afficher les attributs d'un fichier, utilisez la méthode suivante :
# 列出 file.sh 文件的属性 lsattr file.sh # 列出当前目录下所有文件以及文件夹的属性 lsattr
Description de l'attribut
i Après avoir défini l'attribut, le fichier ne peut pas être supprimé, renommé et la connexion ne peut pas être écrite ou pour ajouter des données, seul l'utilisateur root peut définir
a. Une fois l'attribut défini, le fichier ne peut ajouter que des données et les données ne peuvent pas être supprimées ou modifiées uniquement. l'utilisateur root peut définir
A. Après avoir défini l'attribut A, si vous accédez à ce fichier ou répertoire, son temps d'accès ne sera pas modifié, ce qui peut empêcher les machines avec des E/S lentes d'accéder de manière excessive au disque. Cela aide sur les ordinateurs plus lents.
s Une fois l'attribut défini, si le fichier est supprimé, il sera complètement supprimé du disque dur
S Une fois l'attribut défini, le fichier sera écrit sur le disque dur de manière synchrone (généralement asynchrone) u Une fois l'attribut défini, le fichier sera supprimé Une fois que le contenu des données est toujours sur le disque, vous pouvez récupérer le fichier
e signifie que le fichier est un fichier exécutable
chattr
chattr est utilisé pour modifier l'attribut du fichier, veuillez passer à l'utilisateur root pour utiliser cette commande. Si vous êtes un utilisateur Ubuntu, vous pouvez ajouter sudo avant la commande. modifiez-le
# 为 file.sh 文件增加 i 标识 chattr +i file.sh # 为 file.sh 文件去除 i 标识 chattr -i file.sh # 为 file.sh 增加 i, a 两个标识 chattr +ia file.sh # 为 file.sh 文件移除 i, a 两个标识 chattr -ia file.sh
L'opération réelle
est connue de ce qui précède Lorsque le fichier est défini sur l'attribut i ou a, nous ne pouvons pas supprimer le fichier, nous devons donc d'abord supprimez les attributs i, a, puis effectuez la suppression :
# 移除 i, a 属性 chattr -ia file.sh # 查看是否移除成功 lsattr file.sh # 移除文件 rm -rf file.sh
Si le fichier n'a pas été supprimé avec succès, nous devons déterminer si le dossier auquel appartient le fichier a le i ou un attribut défini (ce est vraiment difficile à trouver)
# 退回上一级 cd .. # 直接使用 lsattr 命令,这样可以列出当前文件夹下所有文件和文件夹的属性 # 不要使用 lsattr 文件夹 这样的语法,这样是列出该文件夹下的文件的属性lsattr
Si le dossier est défini, supprimez l'attribut du dossier, puis supprimez le fichier
Recommandé : maintenance du serveur Linux
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!