Unix & Linux

Linux,FreeBSD和其他类似Un * x的操作系统用户的问答

3
为什么root不提供.bash_profile文件?
每次我尝试使用su(not su -)作为root用户登录时,它都不来自.bash_profileuser1的主目录。 基本上,我的/var/root目录没有.bash_profile,所以我将.bash_profilein 的副本放入/var/roottest中su -。 它也不会自动.bash_profile(在中var/root)提供源。 无论如何,我想.bash_profile在使用时自动将user1 设为root帐户su。 我该怎么办? (它曾经工作过!有一天,它只是没有来源!也许bash中的设置发生了变化?source .bash_profile登录后进入时可以工作。) 我正在使用Mac和OS X Yosemite。
10 osx  root  bashrc  su 

3
“ ls -a |的奇怪行为” grep ^ \。”
我想列出一个密码的内容,只显示以点开头的文件。我尝试过,ls -a | grep ^\.但是我无法弄清楚为什么输出中还包含不以点开头的文件。例如: Pictures .pip .pki .profile projects Public 我知道我可以实现自己想要的,ls -ld .*只是对grep的这种行为感到好奇,我无法解释。

2
Makefile中的文件函数采用以'@'前缀的args
该代码节选自GNU makefile手册的8.6章。 Makefile中文件功能arg的@ $ @。in是什么意思?以及为什么像rm这样的shell命令以“ @”符号开头 program: $(OBJECTS) $(file >$@.in,$^) $(CMD) $(CMDFLAGS) @$@.in @rm $@.in 文件功能语法为 $(file op filename[,text])
10 make 

6
如何检查awk中是否存在文件?[-d'文件名']失败
我正在尝试生成具有不存在的主目录集的用户列表。看来我应该可以用awk做到这一点,但是我的语法有问题。 它总是在[]处告诉我“无效语法”。我究竟做错了什么? awk -F: '{ if(![ -d "$6"]){ print $1 " " $3 " " $7}}' /etc/passwd 我可能最终要使用的最终代码是: awk -F: '{if(system( "[ -d " $6 " ]") == 1 && $7 != "/sbin/nologin" ) {print "The directory " $6 " does not exist for user " $1 }}' /etc/passwd 我在这里有一个相关的问题。
10 bash  awk  directory 


1
/etc/dhcp/dhclient.conf中的“ rfc3442-classless-static-routes”是什么
我正在尝试在笔记本电脑上调试DHCP(我正在使用dhcping并dhcdump查看DHCP服务器发回的内容)。以下是我的/etc/dhcp/dhclient.conf。 option rfc3442-classless-static-routes code 121 = array of unsigned integer 8; send host-name = gethostname(); request subnet-mask, broadcast-address, time-offset, routers, domain-name-servers, interface-mtu, rfc3442-classless-static-routes; 我认为,除了以外,我所有这些选项的含义是什么rfc3442-classless-static-routes。另外,我rfc3442-classless-static-routes在DHCP回复中看不到任何相关信息。 它的含义是rfc3442-classless-static-routes什么?在什么情况下可以使用它? (文档毫无意义)

1
“ seclabel”安装选项有什么作用?
我使用Nagios和check_mk监视某些服务器。关于几个服务器的安装选项,我收到一些警告。消息为:“确定-缺少:seclabel”。 我找不到有关seclabel的文档。我唯一能找到的就是它可能与selinux有关。也许我可以只将seclabel添加到mount选项中,但是我想知道它的作用以及为什么首先在其中。 所以我的问题是,seclabel挂载选项有什么用?
10 linux  mount 

1
docker-如何在容器中运行x桌面?
我试图将我的Linux机器设置为运行多个来宾OS,其中一个是Windows VM,另一个是Linux容器。这里的目标是防止我弄乱主机系统,同时可以自由操作基本操作系统并使用主机硬件。最终,我希望在容器中运行我的桌面,然后希望运行图形加速的模拟等。由于Docker具有如此好的git内置容器版本,因此使用它似乎是一个好主意。也许libvirt与LXC一样好,但是docker的特权模式使不必为容器配置设备变得更加容易。 我已经做了一些研究,并已经提出了一些答案,但是我很难将所有内容放在一起。 LXC中的背景 从LXC运行X有助于我了解如何使用以下方式配置容器: lxc.cgroup.devices.allow = c 226:0 rwm 和使用 mknod -m 666 dri/card0 c 226 0 在容器内部以连接到主机设备。 码头工人 从cuda中-使用来自docker容器的GPU,我看到我可以使用LXC后端在Docker中使用相同的设置。 在我看来,如果docker容器在特权模式下运行,那么它可以正常访问GPU,而无需进行额外配置。因此,我启动了一个基本系统,安装了图形驱动程序,xorg-server,xorg-xinit和一个窗口管理器进行测试。 第一次尝试 # startx Cannot run from a console (or some message like that) 好的,我以为我在tty2上。 # tty /dev/console 那不是我所期望的。 # chvt 2 # tty /dev/tty2 好吧,看来好像可行。让我们再试# startx一次。它启动了窗口管理器,光标位于中间。无鼠标响应。无键盘响应。让我们尝试使用更改tty Ctrl-Alt+F3。没有反应。好吧,看来我将不得不重新启动。 第二次尝试 …

3
命令替换可以嵌套在变量替换中吗?
我想在通过命令访问的特定字符串上使用变量替换。例如,如果我将某些内容复制到剪贴板中,则可以这样访问它。 $ xclip -o -selection clipboard Here's a string I just copied. 如果将其分配给变量,则可以对其进行变量替换。 $ var=$(xclip -o -selection clipboard) $ echo $var Here's a string I just copied. $ echo ${var/copi/knott} Here's a string I just knotted. 但是,有没有办法在不将其分配给变量的情况下进行变量替换?从概念上讲,是这样的。 $ echo ${$(xclip -o -selection clipboard)/copi/knott} bash: ${$(xclip -o -selection clipboard)/copi/knott}: bad substitution …

2
用XKB覆盖一些键码
我想用XKB整理一些键。(为什么?在不方便放置某些键的笔记本电脑上。)我目前使用xmodmap: keycode 110 = Prior keycode 115 = Delete keycode 112 = Next keycode 117 = Insert keycode 119 = End keycode 118 = Home 相反,我想使用XKB并为某些物理键分配不同的符号名称,而不是为某些键码分配不同的keyym。(这就是为什么。)我希望发送键码110 PGUP而不是,发送HOME键码115 DELE而不是发送END,等等。其余的配置必须不受影响(因此PGUP要继续发送键符Prior等,并且所有其他键都将保留)像他们那样)。 如何更改这些特定键码的分配?我将加载文件xkbcomp somefile.xkb $DISPLAY,我需要放入什么文件somefile.xkb?

3
在执行期间修改二进制
我经常在开发过程中遇到这种情况,我在其中运行一个二进制文件,a.out在后台说,因为它需要很长时间。在这样做的同时,我对产生a.out并a.out再次编译的C代码进行了更改。到目前为止,我还没有遇到任何问题。正在运行的进程将a.out继续正常运行,不会崩溃,并且始终运行最初启动时的旧代码。 但是,a.out据说文件很大,可能相当于RAM的大小。在这种情况下会发生什么?并说它链接到共享对象文件,libblas.so如果我libblas.so在运行时进行修改怎么办?会发生什么? 我的主要问题是-操作系统是否保证当我运行时a.out,原始代码将始终按照原始二进制文件正常运行,而不管二进制.so文件或链接到的文件的大小如何,即使这些文件.o和.so文件在运行期间被修改运行? 我知道有一些问题可以解决类似的问题:https : //stackoverflow.com/questions/8506865/when-a-binary-file-runs-does-it-copy-its-entire-binary-data-into-memory -at-once 如果在执行过程中编辑脚本会怎样? 程序运行时如何进行实时更新? 哪些方法帮助我进一步了解了这一点,但我认为他们并没有确切地问我想要什么,这是执行期间修改二进制文件的后果的一般规则
10 linux  binary 

4
可以在应用程序级别禁用交换吗?
我目前正在将gnupg与雷鸟一起使用,以读取加密的电子邮件。如果我正确理解了交换行为,则包含交换后的电子邮件的内存页可能会交换出去,并在硬盘上留下痕迹,理论上可以稍后对其进行取证。 虽然当然可以在使用敏感文件的过程中仅使用加密的交换文件或全局禁用交换,但这会影响性能,可能会被忘记并需要root特权。 是否可以将某些文件或程序标记为不可交换?即使没有root访问权限?能否编写一个可以分发给技术上天真的用户并且其内存内容永远不会交换到磁盘的应用程序?
10 encryption  swap 

4
恢复整个磁盘的DD
我正在使用旧版本的随机数据覆盖硬盘驱动器dd: dd if=/dev/urandom of=/dev/disk/by-uuid/etc bs=512 这是一个2TB的阵列,我的MacBook(运行Linux,好吗?)只能以3.7MB / s的速度写入数据,这非常可悲,因为我已经看到我家里的台式机以20MB / s的速度运行。今晚回家时,我想在dd这里停止跑步,带回家,看看一台功能更强大的机器可以在一夜之间取得什么样的进步。 我一直在使用一个简单的循环监视进度: while true; do kill -USR1 $PID ; sleep 10 ; done 输出看起来像这样: 464938971+7 records in 464938971+7 records out 238048755782 bytes (238 GB) copied, 64559.6 s, 3.7 MB/s 如果要dd在家中恢复通行证,我将如何重新启动通行证?我知道该seek参数,但是我要指向的是记录号还是字节数?
10 dd 

3
用“读取”将脚本管道化为bash
我需要通过管道它运行一个脚本bash用wget(而不是直接使用bash运行它)。 $ wget -O - http://example.com/my-script.sh | bash 它不起作用,因为我的脚本中包含read语句。由于某些原因,在进行bash传输时这些命令不起作用: # Piping to bash works in general $ echo 'hi' hi $ echo "echo 'hi'" | bash hi # `read` works directly $ read -p "input: " var input: <prompt> # But not when piping - returns immediately $ echo 'read …
10 bash  shell  pipe  read 

1
无法在Ubuntu上正确配置eth1和eth2
我是网络管理的新手,因此发现有些困难。我有一台机器,必须将其1接口设置为子网10.0.20.0/24,将另一接口设置为10.1.0.0/24,将第三个接口设置为10.128.0.0/24。我的eth0已经在运行,并且ifconfig命令显示结果: eth0 Link encap:Ethernet HWaddr fa:16:3e:31:bc:c9 inet addr:10.0.20.3 Bcast:10.0.20.255 Mask:255.255.255.0 inet6 addr: fe80::f816:3eff:fe31:bcc9/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1454 Metric:1 RX packets:8941 errors:0 dropped:0 overruns:0 frame:0 TX packets:5324 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:5662823 (5.6 MB) TX bytes:616960 (616.9 KB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 …
10 networking 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.