Unix & Linux

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


1
在Debian引导时启动mysql服务器
我使用的是Debian Etch和我有以下这并试图在启动写这样一个脚本来自动启动MySQL服务器: #! /bin/sh # /etc/init.d/blah # # Some things that run always sudo /etc/init.d/mysql start 我update-rc.d也用过,但是mysql服务器无法在启动时启动,为什么?
8 debian  mysql  startup 

4
Shell编程,避免使用临时文件
我经常编写遵循相同模式的KSH Shell脚本: (1)从一个或多个命令检索输出 (2)使用grep | cut | awk | sed格式化并打印到屏幕或文件中 为了做到这一点,我经常将(1)的输出存储在一个临时文件中,然后对该文件进行(2)的格式化。 以该代码为例: TMPFILE=file.tmp # If tmpfile exists rm it. [ -f $TMPFILE ] && rm -f $TMPFILE for SERVICE in $(myfunc); do getInfo $SERVICE > $TMPFILE # Store raw output in the TMPFILE # I retrieve the relevant data from …
8 shell  scripting  ksh 

2
VIM:显示会话中编辑的所有行
是否可以使用命令或插件显示在Vim会话中编辑的所有行?我希望能够将在同事项目中工作时所做的所有更改都突出显示,而不会在代码行中丢失。
8 vim 

1
多个安装的git版本-centos
我在一两年前手动安装了git 1.6。今天我注意到yum中提供了1.7版本,并安装了它(软件包git-all),我现在得到以下输出: [root@ovz5197 ~]# git --version bash: /usr/local/bin/git: No such file or directory [root@ovz5197 ~]# which git /usr/bin/git [root@ovz5197 ~]# /usr/bin/git --version git version 1.7.4.1 [root@ovz5197 ~]# 知道为什么输出which似乎与上面的第一行矛盾吗?
8 centos  git  version 

2
Linux中的“ sys / ioctl.h”标头
我在 Linux 2.6.32-26-generic 当我查看“ ioctl.h”听众文件的linux源代码时,我可以看到许多变体。(对于不同的平台,我想)。即 ./fs/ocfs2/ioctl.h ./fs/btrfs/ioctl.h ./fs/ceph/ioctl.h ./include/config/i2o/config/old/ioctl.h ./include/asm-generic/ioctl.h ./include/linux/hdlc/ioctl.h ./include/linux/ioctl.h ./drivers/video/via/ioctl.h ./drivers/staging/vt6655/ioctl.h ./drivers/staging/vt6656/ioctl.h ./arch/ia64/include/asm/ioctl.h ./arch/h8300/include/asm/ioctl.h ./arch/microblaze/include/asm/ioctl.h ./arch/score/include/asm/ioctl.h ./arch/avr32/include/asm/ioctl.h ./arch/alpha/include/asm/ioctl.h ./arch/x86/include/asm/ioctl.h ./arch/m32r/include/asm/ioctl.h ./arch/mn10300/include/asm/ioctl.h ./arch/sparc/include/asm/ioctl.h ./arch/powerpc/include/asm/ioctl.h ./arch/m68k/include/asm/ioctl.h ./arch/sh/include/asm/ioctl.h ./arch/xtensa/include/asm/ioctl.h ./arch/mips/include/asm/ioctl.h ./arch/s390/include/asm/ioctl.h ./arch/arm/include/asm/ioctl.h ./arch/blackfin/include/asm/ioctl.h ./arch/frv/include/asm/ioctl.h ./arch/parisc/include/asm/ioctl.h ./arch/cris/include/asm/ioctl.h 但我看到该文件被包含为 #include <sys/ioctl.h> 此映射如何工作?
8 linux  c  header-file 

2
DEC ANSI命令序列问题;光标移动
因此,我正在编写一个终端仿真程序(我知道,我应该编译腻子等),并且处于通过vttest进行确认以确保正确的阶段。我现在将其基于VT102,但在基础正常工作时将添加更高的终端功能,例如颜色。 该命令集主要是ANSI。DEC有自己的命令集,但从1973年左右开始支持ANSI命令。这些ANSI标准现在似乎不可用,但是ECMA等效项是我拥有的(ECMA-48似乎最相关),但据我回答,这个问题一直没有得到解决。可以看到。大多数ANSI命令序列以ESC开头。许多命令以此处显示为CSI的命令序列标识符开头,并在数据中表示为0x1c 0x5b(ESC [),如果可能进行8位通信,则表示为0xdb 。然后遵循识别命令的顺序。有些命令会影响光标位置,有些会影响屏幕,有些会引起对主机的响应,等等。 一些终端命令包含数字参数。示例CSI 10 ; 5 H意味着将光标位置排在第10行第5列。当缺少数字参数时,将使用默认值:CSI 10 ; H意味着将光标位置排在第10行第1列,因为未提供参数时默认值为1。 我有来自vt100.net的vt102手册(大量资源),大约有十二页提供了有关这些命令序列的部分信息。显然,完整的DEC福音终端规范从未使它脱离DEC。 清楚的是CSI C向右移动光标,默认值为1。 尚不清楚的是CSI 0 C。 为什么在那里有零,这似乎会使命令什么都不做?如果它表示“使用默认值”,则可以将其发送为1,但是较短的字符串将没有参数,并且始终依赖默认值解释为1。这些实际的物理VT终端通常在300波特及以下的波特率下使用,因此一个字符确实很重要! 我对vttest并不了解,我只能尝试两种方法,看看哪种方法可以使一切完美,但我已经足够了,这样的小问题开始变得重要了。

1
自动增量备份到外部驱动器
背景 客户需要对外部驱动器的自动备份解决方案(每周在异地进行)。我通常会建议rsnapshot(或推出一个自定义rsync脚本),但是这个问题要涉及一些。 基于Arch Linux的系统没有头绪,因此该解决方案必须完全自动化,无需用户干预。 理想的情况如下: 用户插入USB硬盘驱动器 进行完整的增量备份 硬盘驱动器已卸载 通知用户可以拔出硬盘驱动器 提案 我提出的解决方案包括: 一个udev规则自动安装驱动 备份开始于: 相同的udev规则也会触发rsnapshot脚本 一个inotify的 创建事件检测到新的安装点和触发器rsnapshot 后rsnapshot退出,umount是跑在驱动器上 可以删除通知硬盘的可能方法: CD驱动器打开 通过PC扬声器播放声音 如果任何时候发生错误,请向用户发送电子邮件并卸载驱动器。 问题 我的建议似乎可行,但有明显的缺陷吗?我如何使其坚固? 为了安全起见,如何确保插入的硬盘是用户的硬盘?ssh钥匙?驱动器标签? 是否有现有的(Linux)解决方案包含此内容?

4
Bash将其提示写入哪个流?
我正在尝试将bash的所有输出(提示,用户输入,结果)重定向到文件 例: /bin/bash > file.txt 2>&1 我以为可以,但是没有得到提示。谁能告诉我我在做什么错?

1
Linux内核安装中的严重致命错误
我已经从源代码编译Linux内核2.6.24.6(没有问题)并尝试安装它。具体来说,在解压缩Linux源代码之后,我做了 make && make modules 编译。然后经过一些配置,我只是使用了 sudo make modules_install install 安装新生成的二进制文件。在此过程中,有关定位file的错误/sys/class/net/eth0/device/bus。它还会引发严重的致命错误。详细的错误堆栈如下: sh /mnt/factor/myProj3/linux-2.6.24.6/arch/x86/boot/install.sh 2.6.24.6 arch/x86/boot/bzImage System.map "/boot" unable to stat /sys/class/net/eth0/device/bus: No such file or directory WARNING: No module xenblk found for kernel 2.6.24.6, continuing anyway grubby fatal error: unable to find a suitable template 源代码应该没问题。致命错误的原因可能是什么?如果不修复它,就无法安装Linux。请指教。

2
createrepo如何工作。yum如何理解解析其文件。概念解释
我不是在寻找如何创建回购协议(createrepo)或使用yum的方法。 我想了解他们如何一起工作。 我想知道百胜看什么文件,为什么,这些文件包含什么。 我想了解回购协议及其文件的结构。我想了解所有这些如何协同工作。 我已经阅读了许多操作方法,正在寻找更概念上的理解。 我使用Centos 6 32bit。
8 centos  yum  rpm 

4
适用于Linux的Solaris ptree样式工具
我正在寻找将与Solaris ptree输出相同输出的Linux工具。例如: # ptree 538 538 /usr/lib/ssh/sshd 889 /usr/lib/ssh/sshd 890 /usr/lib/ssh/sshd 1498 -sh 1649 bash 1656 -sh 1660 bash 13716 ptree 538 我知道pstree存在,但是我不喜欢它的输出格式。有谁知道类似的工具吗?
8 linux  ps 

2
重击颜色输出失败
是sed还是echo问题?我做错了什么? $> cat ~/bin/color_test.sh #!/bin/bash ColorOff='\e[0m' # Text Reset BWhite='\e[1;37m' # Bold White string="test TEST test" echo -e "$string" | sed -e "s/TEST/${BWhite}TEST${ColorOff}/g" $> ~/bin/color_test.sh test e[1;37mTESTe[0m test 期望以粗体突出显示TEST。
8 bash  sed  quoting 

3
接收Pop / IMAP电子邮件,然后以加密方式转发到gmail
基本上,我有一个可以以POP3或IMAP身份访问的电子邮件帐户。我想接收所有传入的电子邮件,对它们进行加密,然后将加密的版本转发到我的gmail帐户(这样我就可以在我的手机/ gmail帐户上看到主题/通知;并可能用通行密码解密邮件-尽管这是最后一个)步骤一开始无需实施)。 我可能可以编写一个python脚本来执行此操作,但是使用适当的linux工具似乎是一种更好的方法。我已经设置了postfix(以卫星配置)来发送外发邮件。 在Linux盒子上读取POP3 / IMAP并将其转换为gpg的最简单方法是,用我的公钥加密电子邮件的正文和附件(而不是主题标头),然后将其转发给我的gmail帐户? (记录下来,这违反了我的工作政策(部分是为了遵守美国HIPAA法),使我无法将电子邮件的未加密版本发送到手机;因为有人可能会故意(或无意间)将受保护的数据通过电子邮件发送到手机。 Work认为GPG是安全的。)


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.