mount -t cifs ... /mnt ...
在 linux 机器上使用on目录挂载网络驱动器后/mnt
,系统究竟是如何从中读取文件的?每当应用程序请求文件内容时,它是否以流的形式打开,是复制到某些 tmpfs 中还是复制到磁盘上的某个位置?
以下命令有效:
sudo mount -t cifs //192.168.1.77/something /mnt/192.168.1.77/something \
-o username=alpha,rw,uid=alpha,gid=tango,dir_mode=0770,file_mode=0770,nounix,sec=ntlmssp
由于 . Observe 可以将长命令分成两行\
。
但是为了演示命令本身,如果我现在尝试再次拆分参数的-o
参数\
- 这是不可能的,它会出现错误,因为存在空格。好吧,我删除了所有空白,但在某些地方添加了它们。
有可能实现这个目标吗?如何?
我可以在我的 AWS Workspace 上手动挂载公司共享目录,但我需要为所有用户执行此操作。
$ sudo ksu
[sudo] password for <Domain>\<User.Name>:
Leaving uid as root (0)
$ mount -t cifs //<Domain>/<Path> /home/*/<Mount\ Point\ Name> -o multiuser,sec=krb5
$ exit
我需要它为所有用户工作,这意味着我需要一个通用的解决方案。
Amazon Workspaces 为每个用户创建一个虚拟机。我需要创建我的操作系统映像以与其他用户共享。因此,即使我以某种方式使用我的凭据创建 fstab 条目,这些凭据对任何其他用户的工作区都无效。
我可能有错误的一端,这可能无法实现。
我想像上面这样的东西,可以通过创建一个在用户登录时运行的脚本来工作,因为用户使用 ksu 创建上下文,然后在用户的主目录中挂载一个目录。因此,用户的凭据在运行时将不可用,因为他们只是登录。
在我们公司,我们有一个共享的 Windows 文件夹。如果我从 Windows 访问它,我可以弹出文件的属性菜单并找到它的元数据:创建它的人、上次访问时间等等。
在 linux 上,我使用mount -t cifs
. 我想编写一个脚本来获取有关文件夹使用情况的一些统计信息。
有没有办法从 linux 访问这个元数据?
UPD:我不能使用getfacl
,stat
或ls -la
用于我的任务,因为所有这些都只给了我安装此文件夹的本地 linux 用户名,而不是来自 Windows 域服务器的名称。
UPD2:我使用命令安装共享:sudo mount -t cifs //data/Shared /mnt/Shared -o uid=1000,gid=1000,user=<my_windows_account_name>,dom=<my_domain>,pass=<my_windows_password>
,其中 uid=1000 和 gid=1000 是我的 linux 帐户的 uid 和 gid。
我想从我的大学安装一个驱动器,在我使用 Linux mint Sarah 之前它可以工作。
我现在有
mount.cifs version 6.4,
cifs-utils 2:6.4-1ubuntu1.1,
Linux mint version 18.3 (Sylvia),
Kernel version 4.13.0-41-generic.
这是我写的/etc/fstab
:
//<server>/<drive> /home/XXX/<drive> cifs credentials=/home/XXX/.credentials 0 0
这就是我的 .credentials 的样子:
username=<myusername>
password=<mypassword>
为了安装:
sudo mount --verbose <drive>
错误信息是:
mount.cifs kernel mount options: ip=<myIP>,unc=\\<server>\<drive>,user=<myusername>,pass=********
mount error(5): Input/output error
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
这是我尝试过的:我试过sec=ntlm
了,但会有其他错误消息。我检查了 mount.cifs 是否设置了 suid-root 位。我检查了我是否与服务器在同一个域中。我检查了我的用户名和密码以及服务器地址,都正确。
还有其他想法我能做什么吗?
我尝试从 Windows Server 2012 R2 手动安装在我的 Linux 共享文件夹上。
语法是正确的,但我坚持同样的问题错误 13:
#mount.cifs //ip/division /mnt/division -o username=bob@dude-uk,password=myscretpass,vers=2.1
dmesg:
Status code returned 0xc000006d STATUS_LOGON_FAILURE
CIFS VFS: Send error in SessSetup = -13
CIFS VFS: cifs_mount failed w/return code = -13
如果我尝试其他 vers= 选项,我会遇到同样的问题。如果我删除选项 vers= 然后 syslog 声明:
No dialect specified on mount. Default has changed to a more secure dialect, SMB2.1 or later (e.g. SMB3), from CIFS (SMB1). To use the less secure SMB1 dialect to access old servers which do not support SMB3 (or SMB2.1) specify vers=1.0 on mount.
如果我使用选项 sec= 然后我指定此选项然后我得到错误 126
#mount.cifs //ip/division /mnt/division -o username=bob@dude-uk,password=myscretpass,vers=2.1,sec=krb5
mount error(126): Required key not available
包 Keyutils 已安装。
如果我尝试其他 sec= 选项,我会收到错误 22 或错误 13
如果我尝试提示密码:
#mount.cifs //ip/division /mnt/division -o username=bob@dude-uk
Password for bob@dude-uk@//ip/division:
mount error(13): Permission denied
Nemo(Linux Mint 中的文件资源管理器)可以挂载共享文件夹。MacOsx 可以挂载共享文件夹。
我的内核是 4.13 Mount.cifs 是 6.4 我在设置 fstab 之前尝试手动挂载。
你有什么主意吗 ?
在启动期间,我收到此错误消息:
Failed to start NetworkManager-wait-online
并在网络共享无法挂载后立即。但是一旦系统启动,发布mount -a
就可以很好地安装它们。在执行之前,如何确保网络在启动时完全启动/etc/fstab
?
#uname -a
localhost.localdomain 4.15.15-200.fc26.x86_64 #1 SMP Mon Apr 2 16:25:08 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
@Patrick 在下面询问 fstab 条目,我认为这不是必需的,因为所述目的NetworkManager-waitonline
是保证网络初始化在fstab
处理之前完成。
操作系统:Linux Mint 18.3 Xfce 64 位。
我正在尝试重新安装samba
,到目前为止我已经完成了:
sudo apt-get install samba cifs-utils system-config-samba
但是在运行配置 GUI 时:
sudo system-config-samba
它像这样崩溃:
Traceback (most recent call last):
File "/usr/sbin/system-config-samba", line 45, in <module>
mainWindow.MainWindow(debug_flag)
File "/usr/share/system-config-samba/mainWindow.py", line 121, in __init__
self.basic_preferences_win = basicPreferencesWin.BasicPreferencesWin(self, self.xml, self.samba_data, self.samba_backend, self.main_window)
File "/usr/share/system-config-samba/basicPreferencesWin.py", line 97, in __init__
self.admin = libuser.admin()
SystemError: could not open configuration file `/etc/libuser.conf': No such file or directory
- 我没有看到“sar”命令接受日期和时间作为开始时间(-s)或结束时间(-e)而不仅仅是时间。那么,如何使用较旧的日期和时间查询“sar”以获取超过一天的数据点(-f 在这里没有帮助)。'sar' 命令的输出也应该具有数据点的日期值 - 而不是仅以小时和分钟为单位的时间。
- 我看到 sysstat 每天都在拆分 pa 数据文件。是否可以修改默认的 sysstat cron 条目以每周在单个 pa 文件中收集 sysstat(sa1/sa2) 数据。
系统统计配置:
cat /etc/sysconfig/sysstat
# sysstat-9.0.4 configuration file.
# How long to keep log files (in days).
# If value is greater than 28, then log files are kept in
# multiple directories, one for each month.
HISTORY=7
# Compress (using gzip or bzip2) sa and sar files older than (in days):
COMPRESSAFTER=10
# Parameters for the system activity data collector (see sadc manual page)
# which are used for the generation of log files.
SADC_OPTIONS="-S DISK"
sysstat cron 条目:
cat /etc/cron.d/sysstat
# Run system activity accounting tool every 10 minutes
*/10 * * * * root /usr/lib64/sa/sa1 1 1
# 0 * * * * root /usr/lib64/sa/sa1 600 6 &
# Generate a daily summary of process accounting at 23:53
53 23 * * * root /usr/lib64/sa/sa2 -A