readline的模式和键盘映射之间有什么区别?
如何找到每种模式的默认键绑定?
在我的 Linux Mint 17.2 VMware 来宾上,df -h报告我的总磁盘使用量稳定在 10GB 左右。我正在使用这台机器在运行 Workstation 12.1.1 Pro 的 Windows 主机中进行 Ruby on Rails 开发。
该*.vmdk文件保存在稳步增长到大约100GB。试图缩小vmware-vdiskmanager -k或vmware-toolbox-cmd disk shrinkonly没有任何区别。
我有Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize。有更完整的dumpe2fs输出可用。
正在运行e4defrag /并且e2fsck -E discard不允许回收更多空间(在前几个 vmdks(从 6GB 左右开始)显示没有缩小的迹象后,我终止了缩小。)
最终的诀窍是用NUL字节填充所有可用空间:
dd if=/dev/zero of=wipefile bs=1M; sync; rm wipefile
我现在可以*.vmdk使用vmware-toolbox-cmd disk shrinkonly …
我的各种方式之间的混淆LUKS/ dmcrypt/cryptsetup丢弃/ TRIM操作可以通过Linux的内核命令行来实现。
rd.luks.allow-discards允许在所有 LUKS 分区上使用丢弃 (TRIM) 请求。
该systemd-cryptsetup-generator手册页
luks.options=, rd.luks.options=... 如果只指定了没有 UUID 的选项列表,则它们适用于其他地方未指定的任何 UUID,并且 /etc/crypttab 中没有条目。...
此处rd.luks.options=discard推荐该参数。
关于 LUKS 和 SSD的Arch wiki 部分 显示了第三个以冒号分隔的字段:
cryptdevice=/dev/sdaX:root:allow-discards
问题:
discard和 和有allow-discards什么区别?前者是强制性的,后者是可选的吗?luks.options=或rd.luks.options=申请给定cryptdevice=/dev/sda2(例如不是 UUID)?如果cryptdevice=给了一个 UUID,那算不算“在别处指定的”?luks.options=或rd.luks.options=覆盖/添加/添加如果cryptsetup=已经给出了选择?rd.luks.allow-discards如果到处都需要 TRIM,那么使用似乎最简单的方法有什么缺点吗?ls -l列表中的文件具有以下权限:
-rw-r-----+
Run Code Online (Sandbox Code Playgroud)
如何找到由+?表示的扩展访问控制列表 (ACL) 权限?
我如何获得以下列表:
inotify,以及我问是因为我发现syncthing'sinotify手表阻止我的磁盘被卸载。
如下所示,没有任何内容出现在lsof或fuser列表中。
我猜对了syncthing......如果磁盘因以下原因无法卸载,我该如何消除未来的猜测inotify?
# umount /media/backup
umount: /media/backup: target is busy.
# lsof +f -- /media/backup/
# echo $?
1
# fuser -vmM /media/backup/
USER PID ACCESS COMMAND
/media/backup: root kernel mount /media/backup
# systemctl stop syncthing@ravi
# umount /media/backup
# echo $?
0
Run Code Online (Sandbox Code Playgroud) 绝对/规范/相对路径之间有什么区别?
我想绝对以/. 可以包含/../吗?
规范路径与绝对路径的不同之处在于它不能包含/../?
是foo相对路径吗?
谷歌搜索posix canonical path并没有出现太多......这些术语的POSIX参考是什么?
使用 zram 的主要缺点是LRU 反转:
较旧的页面进入优先级较高的 zram 并快速填充它,而较新的页面被换入和换出较慢的 [...] 交换
该zswap文件说,zswap不会从此苦:
Zswap 通过 Frontswap API 接收要压缩的页面,并且能够在 LRU 的基础上从其自己的压缩池中驱逐页面,并在压缩池已满的情况下将它们写回后备交换设备。
通过设置max_pool_percent为,我可以拥有 zram 的所有好处和完全压缩的 RAM100吗?
Run Code Online (Sandbox Code Playgroud)Zswap seeks to be simple in its policies. Sysfs attributes allow for one user controlled policy: * max_pool_percent - The maximum percentage of memory that the compressed pool can occupy.
max_pool_percent这里没有指定默认值,但Arch Wiki 页面说它是20.
除了解压对性能的影响外,设置max_pool_percent为是否有任何危险/不利因素100?
它会像使用改进的交换支持的 zram 一样操作吗?
我遇到系统冻结并在日志中看到内核 ( 4.14.15-1-MANJARO) 错误,例如:
kernel: tpm_crb MSFT0101:00: [Firmware Bug]: ACPI region does not cover the entire command/response buffer. [mem 0xfed40000-0xfed4087f flags 0x201] vs fed40080 f80
kernel: tpm_crb MSFT0101:00: [Firmware Bug]: ACPI region does not cover the entire command/response buffer. [mem 0xfed40000-0xfed4087f flags 0x201] vs fed40080 f80
Run Code Online (Sandbox Code Playgroud)
(是的,消息是重复的,时间戳完全相同)
稍后,我得到:
tpm tpm0: A TPM error (379) occurred attempting get random
Run Code Online (Sandbox Code Playgroud)
我正在为我的华硕 UX330 运行最新版本的固件 (v3.05)。我的内核是:
4.16.0-1-MANJARO #1 SMP PREEMPT Wed Mar 21 09:02:49 UTC 2018 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)
除了祈祷华硕更新 UEFI / BIOS 固件之外,还有其他解决方法吗?
我想获得别名的扩展。
例如,如果我有:
alias g=hub
alias cdh='cd $HOME'
Run Code Online (Sandbox Code Playgroud)
我希望有:
expand_alias g == hub
expand_alias cdh == cd $HOME
棘手的是两个shell有不同的输出:bash:
$ alias g cdh
alias g='git'
alias cdh='cd $HOME'
Run Code Online (Sandbox Code Playgroud)
zsh:
% alias g cdh
g=hub
cdh='cd $HOME'
Run Code Online (Sandbox Code Playgroud)
注意没有alias 前缀,也没有引号hub。
在 zsh 中,是否可以将set -x( set -o xtrace)的跟踪输出定向到 stderr 以外的文件描述符?
我正在寻找一种等效的方法$BASH_XTRACEFD或一种模拟相同行为的方法。