若仅需临时恢复挂载分区的读写权限(如修复文件或临时操作),可使用mount命令的-o remount,rw选项。操作步骤如下:
lsblk -f或df -hT命令查看目标分区的挂载点(如/mnt/data)或设备标识(如/dev/sda1)。sudo mount -o remount,rw /挂载点(例如sudo mount -o remount,rw /mnt/data);sudo mount -o remount,rw /dev/sdXn(例如sudo mount -o remount,rw /dev/sda1)。mount | grep '挂载点'或df -hT查看挂载选项,确认包含rw(读写)而非ro(只读)。若系统因检测到文件系统错误(如非法关机、硬盘坏道)自动将分区挂载为只读,需先修复文件系统再重新挂载:
sudo umount /挂载点(如sudo umount /mnt/data);若提示“设备正忙”,需关闭占用该分区的程序(可通过lsof /挂载点或fuser -m /挂载点查找并结束进程)。sudo fsck -y /dev/sdXn(-y选项自动回答“yes”以修复所有问题);ntfs-3g工具(sudo apt install ntfs-3g),运行sudo ntfsfix /dev/sdXn;sudo fsck.vfat -a /dev/sdXn。sudo mount /dev/sdXn /挂载点,系统通常会默认以读写模式挂载。若每次启动系统时某分区均被挂载为只读,需检查并修改/etc/fstab文件(系统启动时自动挂载的配置文件):
sudo cp /etc/fstab /etc/fstab.backup(避免配置错误导致系统无法启动)。sudo nano /etc/fstab)打开文件,找到目标分区的配置行(可通过UUID或设备名识别,例如UUID=xxxx-xxxx /mnt/data ext4 defaults,ro 0 2)。ro(只读)改为rw(读写),或确保选项包含defaults(默认包含rw);对于NTFS分区,需将驱动改为ntfs-3g(旧版ntfs驱动为只读),例如:UUID=xxxx-xxxx /mnt/data ntfs-3g defaults,rw,uid=1000,gid=1000,umask=000 0 0(uid/gid设置用户权限,umask设置文件权限掩码)。sudo mount -a,若无报错则说明配置正确;重启系统后验证分区是否以读写模式挂载。若上述方法无效,需检查硬件或磁盘空间问题:
smartmontools工具(sudo apt install smartmontools),运行sudo smartctl -a /dev/sdX(sdX为硬盘设备,如sda),关注Reallocated_Sector_Ct(重映射扇区数)、Pending_Sector(待修复扇区数)等警告项,若存在大量错误,建议备份数据并更换硬盘。df -h查看磁盘使用情况,若根分区(/)或目标分区剩余空间不足(建议保留至少10%空闲空间),需清理大文件(如旧内核sudo apt autoremove --purge、日志sudo journalctl --vacuum-time=7d)或转移数据。若仅特定文件或目录无法写入(如提示“Read-only file system”但分区本身可写),可能是使用了chattr命令设置了不可修改属性:
sudo chattr -i /path/to/file_or_directory(-i选项取消“不可修改”属性);lsattr /path/to/file_or_directory,确认无i属性(若有i,则表示文件不可修改)。注意事项:
/etc/fstab文件时需谨慎,错误的配置可能导致系统无法启动;