我需要定期运行一个命令,以确保某些文本文件保持在 Linux 模式下。不幸的是dos2unix总是修改文件,这会弄乱文件和文件夹的时间戳并导致不必要的写入。
我编写的脚本是用 Bash 编写的,所以我更喜欢基于 Bash 的答案。
sysadmin 更换 NAS 后,我无法再挂载网络共享
sudo mount -t cifs //netgear.local/public /media/mountY -o uid=1000,iocharset=utf8,username="adam",password="password"
Run Code Online (Sandbox Code Playgroud)
两个NAS都是基于linux的,一个是Samba 3.5.15(旧的),另一个是Samba 3.5.16(新的)(从smbclient获取的信息)
但是,我可以在 的帮助下登录并使用共享smbclient,如下所示:
smbclient //NETGEARV2/public -U adam
Run Code Online (Sandbox Code Playgroud)
我能做什么?有没有smbmount在Linux Mint的(也不在Ubuntu)了。
当我检查时,dmesg我得到了这个信息:
CIFS VFS: Send error in QFSUnixInfo = -95
CIFS VFS: cifs_read_super: get root inode failed
Run Code Online (Sandbox Code Playgroud) 有时,当我在使用全屏 VirtualBox 来宾时使用我的机器之间的协同作用时,我会遇到一些奇怪的键修饰符打开的情况。如果它们存在于我的键盘上(如 Shift_L),我只需点击它,它们的状态就会重置,我可以继续输入小写字母。但是其中一些根本没有映射到我的键盘(例如 ISO_Level3_Shift),所以我根本没有办法关闭它们!
如何重置它们?现在,我所能做的就是重新启动计算机,但这是一个相当尴尬的解决方案。
我想要的只是一些可以人为“点击”所有可能的键盘修饰符的程序,因此它们的状态将被重置。可以做到吗?
我使用 Mint 14(Ubuntu 12.10 Quantal 的克隆)。
可以识别此类文件的 Linux 命令行命令是什么?
AFAIKfind命令(或grep)只能匹配文本文件中的特定字符串。但我想匹配整个内容,即我想查看哪些文件匹配正则表达式\0+,忽略行尾字符。也许这个find . cat | grep习语可以工作,但我不知道如何让 grep 忽略行(并将文件视为二进制文件)。
背景:每隔几天,当我的笔记本电脑死机时,我的 btrfs 分区会丢失信息:打开用于写入的文件将其内容替换为零(文件大小或多或少保持不变)。我使用同步,我不希望这些假文件传播:我需要一种方法来识别它们,以便我可以从备份中获取它们。
有时 VirtualBox 会导致我的 Mint 16 Cinnamon Desktop 64 位随机冻结。我无法查明什么是真正的错误,甚至无法确定在哪里填写错误报告。
但是生活还在继续,我需要一些方法来重新初始化窗口子系统,同时又不丢失我对现有应用程序所做的工作。
当我运行sudo service mdm restart所有已经运行的应用程序时,它被残忍地杀死了。
该cinnamon --replace -d :0咒语没有任何作用;它只是挂起。我猜这是因为它需要与已经运行的肉桂进行某种形式的合作,我猜这不会对此做出回应。
使用 Alt+F2 输入的命令以及用于重新启动 Cinnamon 的“r”命令将被忽略。屏幕未更新,似乎忽略了按键。
我的其他选择是什么?
冻结的症状:
该错误仅通过冻结图形终端的屏幕更新来体现;鼠标移动正常,当鼠标悬停在屏幕的不同部分时,它甚至会改变图标。问题是我不能用它做任何事情;除了屏幕不更新,键盘也不做任何事情。但是我可以切换到文本控制台,我可以看到 Windows 的进程运行良好。我可以与提供某种形式的 cli 交互(如 VBoxManage)的应用程序进行事件交互。
重现:
编辑:
我已经更新了症状。随着时间的流逝,我能够更好地对问题进行分类。它与 VirtualBox 活动没有任何关系。
我决定尝试一下 btrfs 突袭功能。我设置了一个 btrfs
sudo mkfs.btrfs -m raid10 -d raid10 /dev/sda9 /dev/sdb9 /dev/sdc9 /dev/sdd9
Run Code Online (Sandbox Code Playgroud)
现在我想克隆我现有的 btrfs 分区(它位于 linux-raid 之上)。不能使用简单的cp -a,因为有超过 40 个基于快照的备份(我希望保留这些备份),而且我只会多次填充我可以备用的所有存储。
到目前为止,我可以看到两个选项:
partclone.btrfs -s /path/to/original/fs -o /dev/sda9 -b
Run Code Online (Sandbox Code Playgroud)
我想我还需要 btrfs balance start /dev/sda9
和
do:增量复制,cp -a尽可能多地放入存储中,然后用于bedup去重文件,然后循环。
什么是首选(即最佳实践)方法?我更喜欢第一个;它应该花费更少的时间。或者也许在任何这些程序中都潜伏着一些邪恶的“陷阱”(当然,除了 btrfs 是实验性的这一事实)
第一个问题简直是无稽之谈;无论多么出色的工具partclone.btrfs,它显然都不支持多设备文件系统。:-(
我有几个模拟要做,每个模拟都用python simulate.py <parameter list>. 这些模拟的问题在于其中一些没有退出就挂起,这使我无法使用简单的脚本批量运行它们。
我需要的是某种形式的“运行时约束”命令,它会在指定时间后自动终止进程(最好通过虚拟按下Ctrl+C,但我认为简单的 kill 也可以),如果这个过程本身并没有优雅地结束。
当然,我可以自己编写这样的脚本,但我怀疑有人已经在我之前完成了,所以我不必花费数小时使用ps,time和 bash 手册重新发明轮子。
有时(非常随机),我的 Linux Mint 14 Cinnamon 上的 Nemo 开始看起来像这样

通常它看起来像这样: 
重新启动 Cinnamon ( Alt+ F2, r, Enter) 没有帮助,我需要注销,然后再登录。
谁能告诉我,
dmesg没有显示任何东西。)如何诊断,究竟发生了什么?(更新:似乎是 gnome-settings-daemon崩溃了)可疑条目 xsession-errors.lob
[0x7f9590006068] main input error: ES_OUT_SET_(GROUP_)PCR is called too late (pts_delay increased to 300 ms)
[0x7f9590006068] main input error: ES_OUT_RESET_PCR called
[0x7f9590006068] main input error: ES_OUT_SET_(GROUP_)PCR is called too late (pts_delay increased to 1108 ms)
[0x7f9590006068] main input error: ES_OUT_RESET_PCR called
Run Code Online (Sandbox Code Playgroud)
(……)
[h264 …Run Code Online (Sandbox Code Playgroud) 这个问题并非微不足道。BTRFS 是 COW 文件系统,存储在硬盘上的一个对象可以被多个文件引用。
我在生产服务器上使用 BTRFS 快照作为备份解决方案的一部分。这样我就有了给定子卷的空间高效、可浏览的历史记录(我使用了SnapBtr的修改)。
我有几个独立的 btrfs 子卷用于不同的目的,每个子卷都有一个备份方案。当可用空间用完时,我可以根据 的智能对数时间成本算法从每个备份池中获取最不需要的备份快照SnapBtr。
我需要一种方法来衡量在删除每个备份后将释放的数据量与旧快照的年龄及其备份池的重要性。我错过了以前的信息。
我理解 BTRFS 上的可用空间的计算过程既不简单也不快速。我需要一些可以模拟子卷删除的东西来获得可能被释放的空间的大小。
谁能帮我?我应该将此消息发布到linux-btrfs@vger.kernel.org吗?