标签: read-only

为什么 nfs 服务器挂载为 rw 返回只读文件系统错误

我正在使用 64 位 Ubuntu 服务器。我已将 nfs 挂载为 rw,但每当我尝试在相关挂载点上编辑任何内容时,都会收到只读文件系统错误

我的etc/fstab读物:

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    nodev,noexec,nosuid 0       0
/dev/mapper/product-root /               ext4    errors=remount-ro 0       1
UUID=1cae6948-ca9d-4f0b-aec6-9e7a60bbbad8 /boot           ext2    defaults        0       2
/dev/mapper/product-swap_1 none            swap    sw              0       0
/dev/fd0        /media/floppy0  auto    rw,user,noauto,exec,utf8 0       0
vnxnfs1.company.com:/NFS2         /mnt/nfs2                        nfs     defaults       0       0
Run Code Online (Sandbox Code Playgroud)

mount 返回:

/dev/mapper/product-root on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type …
Run Code Online (Sandbox Code Playgroud)

ubuntu nfs mount read-only readwrite

25
推荐指数
3
解决办法
9万
查看次数

从磁盘错误中只读挂载后,如何重新挂载 ext3 fs 读写?

当 SAN 出现问题时,ext3 检测磁盘写入错误并以只读方式重新安装文件系统,这是一个相对常见的问题。这一切都很好,只有当 SAN 修复后,我才能弄清楚如何在不重新启动的情况下重新安装文件系统读写。

看:

[root@localhost ~]# multipath -ll
mpath0 (36001f93000a310000299000200000000) dm-2 XIOTECH,ISE1400
[size=1.1T][features=1 queue_if_no_path][hwhandler=0][rw]
\_ round-robin 0 [prio=2][active]
\_ 1:0:0:1 sdb 8:16  [active][ready]
\_ 2:0:0:1 sdc 8:32  [active][ready]
[root@localhost ~]# mount /dev/mapper/mpath0 /mnt/foo
[root@localhost ~]# touch /mnt/foo/blah
Run Code Online (Sandbox Code Playgroud)

一切都很好,现在我从它下面拉出 LUN。

[root@localhost ~]# touch /mnt/foo/blah
[root@localhost ~]# touch /mnt/foo/blah
touch: cannot touch `/mnt/foo/blah': Read-only file system
[root@localhost ~]# tail /var/log/messages
Mar 18 13:17:33 localhost multipathd: sdb: tur checker reports path is down
Mar 18 13:17:34 localhost multipathd: sdc: tur …
Run Code Online (Sandbox Code Playgroud)

ext3 mount centos read-only

18
推荐指数
2
解决办法
8万
查看次数

如何使用 mysqldump 创建只读 MySQL 用户以进行备份?

我正在使用该automysqlbackup脚本转储我的 mysql 数据库,但我希望有一个只读用户来执行此操作,这样我就不会将我的根数据库密码存储在纯文本文件中。

我创建了一个这样的用户:

grant select, lock tables on *.* to 'username'@'localhost' identified by 'password';
Run Code Online (Sandbox Code Playgroud)

当我运行mysqldump(通过automysqlbackup或直接)时,我收到以下警告:

mysqldump: Got error: 1044: Access denied for user 'username'@'localhost' to database 'information_schema' when using LOCK TABLES
Run Code Online (Sandbox Code Playgroud)

我做错了吗?我的只读用户需要额外的授权吗?还是只能rootinformation_schema表?这是怎么回事?

编辑:

GAH,现在它可以工作了。我以前可能没有运行 FLUSH PRIVILEGES。

顺便说一句,这种情况多久自动发生一次?

编辑:

不,它不起作用。mysqldump -u username -p --all-databases > dump.sql手动运行不会产生错误,但不会转储 information_schema。automysqlbackup确实会引发错误。

mysql backup read-only database-backup

14
推荐指数
1
解决办法
1万
查看次数

如何找到主文件系统进入只读模式的原因

Ubuntu 12.04

文件系统频繁进入只读模式。首先,我读过这个问题文件系统已经经常进入只读模式。但我必须知道它是否不是由dying hard drive. 这是我的客户提供的服务器,我只是在那里运行一些node.js workers+ 一个node.js server,我正在使用mongodb.

有时(每 20-50 小时)系统突然使文件系统只读,mongodb 进程失败(由于只读 fs)并且我的节点工作人员/服务器(由 启动forever)刚刚被杀死。

这是来自 dmesg 的日志 - 我可以看到 FS 将要只读的一些错误和消息,还有一些 JOURNAL 错误,但我想找出这些错误的原因..

http://speedy.sh/Ux2VV/dmesg.log.txt


编辑

smartctl -t long /dev/sda
smartctl 5.41 2011-06-09 r3365 [x86_64-linux-3.5.0-23-generic] (local build)
Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net

SMART support is: Unavailable - device lacks SMART capability.
A mandatory SMART command failed: exiting. To continue, add one or more '-T …
Run Code Online (Sandbox Code Playgroud)

linux ubuntu filesystems read-only ubuntu-12.04

13
推荐指数
1
解决办法
7万
查看次数

在 postgres 中创建一个新的只读用户

我想postgresql在 Ubuntu 机器上的现有数据库中创建一个新用户。我想授予此用户对所有表的只读访问权限。

我该怎么做?我是否也需要在 Ubuntu 上创建一个新用户?

谢谢,

乌迪

postgresql user-management read-only

11
推荐指数
1
解决办法
2万
查看次数

mount: 无法重新挂载块设备 /dev/sda5 读写,被写保护

除了磁盘是只读的并且不想改回来之外,一切都照常工作。

谢谢。

root@NODE02:/tmp# df .
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda5            461490504 179502128 258545928  41% /

root@NODE02:/tmp# mount -o rw,remount /dev/sda5
mount: cannot remount block device /dev/sda5 read-write, is write-protected

root@NODE02:/tmp# touch helll
touch: cannot touch `helll': Read-only file system
Run Code Online (Sandbox Code Playgroud)

这不是多路径。这没什么特别的。只是一个带有 ubuntu 9.10 的服务器。

对我来说没有意义,是吗?

- - 编辑 - -

Selinux 不活跃。

没有RAID。有 2 张光盘,每张 500Gb。第一个用于操作系统和一些家庭。第二个是分布式FS,HPC高性能。

Dmesg 自 2 天前未更新。最后几行没有任何与光盘或错误相关的内容。

重启了,没找到硬盘。从BIOS,硬盘驱动器已死,甚至没有响应名称查询。

需要新硬盘。谢谢。

linux ext3 read-only

11
推荐指数
1
解决办法
10万
查看次数

只读绑定挂载?

我使用 mount -o bind 在 chroots 中挂载目录,效果非常好。问题是我希望其中一些绑定安装的目录只能在 chroot 中读取。

是否可以?如果没有 - 任何其他方式来实现它?

我正在考虑将 NFS 用于本地主机挂载,但它看起来有点矫枉过正。

linux nfs bind mount read-only

10
推荐指数
2
解决办法
9413
查看次数

DC 的只读配置是否仅适用于 Active Directory?

首先,我不确定这个网站的用户对学生有多友好,但我的问题似乎很合适。

我正在用多台 Windows Server 2008 机器配置一个域,我很好奇我是否可以在只读域控制器上成功安装某些角色。我不确定只读配置是仅适用于 Active Directory 角色还是该服务器上的其他角色。我问是因为我无法从只读机器更改 DNS,这让我相信其他角色也会受到这种影响。我知道 DNS 的问题可能是因为它依赖于 Active Directory,但我仍然不确定。

感谢所有花时间阅读和回答我的问题的人。

domain-name-system windows-server-2008 active-directory read-only

8
推荐指数
1
解决办法
152
查看次数

一次写入,多次读取(WORM)使用 Linux 文件系统

我需要将文件写入 Linux 文件系统,该文件系统随后不能被覆盖、附加、以任何方式更新或删除。不是 sudo-er、root 或任何人。我试图满足金融服务法规对记录保存的要求,FINRA 17A-4,它基本上要求将电子文档写入 WORM(一次写入,多次读取)设备。我非常希望避免使用 DVD 或昂贵的 EMC Centera 设备。

是否有 Linux 文件系统,或者 SELinux 能否支持在写入后立即(或至少很快)使文件完全不可变的要求?或者有人知道我可以使用 Linux 权限等在现有文件系统上强制执行此操作的方法吗?

我知道我可以设置只读权限和不可变属性。但当然,我希望 root 用户能够取消这些设置。

我考虑将数据存储到卸载的小卷中,然后以只读方式重新挂载,但后来我认为 root 仍然可以卸载并重新挂载为可写。

我正在寻找任何聪明的想法,在最坏的情况下,我愿意做一些编码来“增强”现有文件系统以提供此功能。假设有一个文件系统是一个很好的起点。并放置一个精心配置的 Linux 服务器作为这种类型的网络存储设备,什么都不做。

毕竟,对文件进行加密也很有用!

linux filesystems selinux root read-only

8
推荐指数
1
解决办法
1万
查看次数

Linux:强制 fsck 只读挂载的文件系统?

我正在为运行 CentOS 6.2 的无头嵌入式设备开发。用户可以连接键盘,但不能连接显示器,串行控制台需要打开外壳,这是我们不希望用户必须做的事情。这几乎消除了使用恢复 USB 驱动器启动的可能性,除非它所做的只是盲目地重新映像硬盘驱动器。我想提供一些恢复工具,并且我已经编写了一个工具,它出现在 /dev/tty1 上来代替 getty 来提供这些功能。

其中一种功能是 fsck。我已经找到了如何以只读方式重新挂载根文件系统和其他文件系统。现在它们是只读的,fsck 它们然后重新启动应该是安全的。不幸的是,fsck 向我抱怨文件系统已挂载并且拒绝做任何事情。

如何强制 fsck 在只读挂载分区上运行?

根据我的研究,这将是一些晦涩难懂的东西。“-f”仅表示强制修复干净(但未安装)的分区。我需要修复干净或不干净的挂载分区。从我读到的内容来看,这是“只有专家”才应该做的事情,但没有人费心解释专家是如何做到的。我希望有人可以向我透露这一点。

顺便说一句,我注意到 Gentoo 上的 e2fsck 1.42.4 会让你 fsck 一个挂载的分区,甚至挂载读写,但似乎只有在 fsck 从终端运行时才会这样做,所以它可以询问用户是否肯定他们想做一些如此危险的事情。我不确定 CentOS 版本是否也做同样的事情,但 fsck 似乎可以修复已安装的分区,但它在不从终端运行时断然拒绝。

对我来说,最后的一个选择是编译我自己的被黑的 fsck。但恐怕我会以某种意想不到的方式把它搞砸。

谢谢!

注意:最初发布在这里

更新:在我写这篇文章的时候,我认为这无关紧要,但是为了重新挂载 fs 只读,我必须这样做:

echo s > /proc/sysrq-trigger
echo s > /proc/sysrq-trigger
echo u > /proc/sysrq-trigger
Run Code Online (Sandbox Code Playgroud)

这是我能找到的唯一方法。其他一切都抱怨文件系统很忙。据我所知,这是“安全的”,但它的重新安装可能与通常的方法略有不同。这可能是 fsck 不想修复它的原因。它仍然认为它以读写方式挂载。

linux read-only

7
推荐指数
1
解决办法
3万
查看次数