Häufige Berechtigungsfehler
„Erlaubnis verweigert“
# View file permissions
ls -la /path/to/file
# View current user and groups
id„Betrieb nicht erlaubt“
Erfordert normalerweise Root-Rechte – verwenden Sie sudo:
sudo COMMANDGrundlagen der Dateiberechtigung
-rwxr-xr-- 1 user group 4096 Mar 24 10:00 file.txt
|---|---|---|
| | | +-- Other users: r-- (read)
| | +----- Group: r-x (read+execute)
| +--------- Owner: rwx (read+write+execute)
+------------- File type (- regular file, d directory, l symlink)Häufige Szenario-Korrekturen
Konfigurationsdateien können nicht bearbeitet werden
# Files in /etc belong to root
sudo nano /etc/xxx/config.conf
# Or temporarily change permissions (not recommended for system files)
sudo chmod 666 /path/to/fileEin Skript kann nicht ausgeführt werden
# Add execute permission
chmod +x script.sh
# Owner only can execute
chmod u+x script.shBerechtigungen für das Webserververzeichnis
# Typical web directory permission setup
sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html
sudo chmod -R 644 /var/www/html/*.htmlAuf das bereitgestellte Laufwerk kann nicht geschrieben werden
NTFS- oder FAT32-Partitionsberechtigungen werden durch Mount-Optionen gesteuert:
# View current mounts
mount | grep /dev/sd
# Remount NTFS as writable
sudo mount -o rw,uid=$(id -u),gid=$(id -g) /dev/sdX1 /mnt/data
# Configure in /etc/fstab
# UUID=xxx /mnt/data ntfs-3g defaults,uid=1000,gid=1000 0 0SSH-Schlüsselberechtigungen
SSH stellt strenge Anforderungen an Schlüsseldateiberechtigungen:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_rsa
chmod 644 ~/.ssh/id_rsa.pub
chmod 600 ~/.ssh/authorized_keys
chmod 644 ~/.ssh/configDie Berechtigungen für das Home-Verzeichnis wurden geändert
# Restore home directory permissions
sudo chown -R $USER:$USER ~/
chmod 755 ~/Sudo-bezogene Probleme
Benutzer nicht in der Sudo-Gruppe
# Need to log in as root or use recovery mode
su - root
usermod -aG sudo USERNAME
# User needs to log out and log back inSudo-Passwort vergessen
Wenn Sie Ihr Passwort vergessen haben, setzen Sie es im Wiederherstellungsmodus zurück:
- GRUB-Menü > Erweiterte Optionen > Wiederherstellungsmodus
- Wählen Sie die Root-Befehlszeile aus
- Führen Sie Folgendes aus:
passwd USERNAME
/etc/sudoers-Syntaxfehler, der zum Abbruch von sudo führt
# Use pkexec to fix (no sudo needed)
pkexec visudo
# Or fix from recovery mode
# Make sure /etc/sudoers contains:
# %sudo ALL=(ALL:ALL) ALLSonderberechtigungen
SUID/SGID/Sticky Bit
# Set SUID (execute as file owner)
chmod u+s /path/to/file
# Set SGID (new files inherit the directory's group)
chmod g+s /path/to/directory
# Set Sticky Bit (only owner can delete files in the directory)
chmod +t /path/to/directoryErweiterte ACL-Berechtigungen
# Install ACL tools
sudo apt install acl
# Set permissions for a specific user
setfacl -m u:USERNAME:rwx /path/to/file
# View ACL
getfacl /path/to/file
# Remove ACL
setfacl -b /path/to/fileAppArmor-Einschränkungen
Ubuntu verwendet AppArmor für die obligatorische Zugriffskontrolle:
# View AppArmor status
sudo aa-status
# Temporarily set a program to complain mode
sudo aa-complain /usr/bin/PROGRAM_NAME
# Disable a profile
sudo aa-disable /etc/apparmor.d/PROFILE_NAMEZusammenfassung der Fehlerbehebung
- Verwenden Sie
ls -la, um die Eigentümer-, Gruppen- und Berechtigungsbits der Datei zu überprüfen - Verwenden Sie
id, um die aktuelle Benutzeridentität zu bestätigen - Überprüfen Sie, ob der Benutzer zur erforderlichen Gruppe gehört:
groups USERNAME - Überprüfen Sie, ob für AppArmor oder SELinux Einschränkungen gelten
- Überprüfen Sie die Mount-Optionen (insbesondere für externe Partitionen).