Zealic's Linux FAQ

前言:

该 FAQ 记录 Zealic 学习使用 Linux 的经验,包括 Ubuntu 发行版但不限于 Ubuntu 发行版,理论上兼容所有 debian 系的发行版,但不排除个别例外情况。

欢迎转载,但你所看到版本不一定是最新的。

文中假设的操作用户名为 zealic,主机名为 host

  1. 如何判断 Linux 的发行版? cat /etc/issue
    /etc/issue 的用途是作为在显示登陆提示符之前的提示信息,大多数情况下,都是显示为系统的发行版。
    此外还可以通过 /etc/issue.net 文件来判断。

  2. 如何恢复使用 Ctrl+Z 挂起的进程? 启用 cat 进程 cat
    按 Ctrl+Z 挂起进程,输出如下:
    [1]+Stopped cat
    fg 1
    这里 [1] 代表挂起的进程 ID,使用 jobs 命令可以列出所有挂起的进程。
    使用 bg 命令可获得上一个被挂起的进程。
    上面使用的 fg 命令则是恢复被挂起的进程。
    注 : 这里的挂起,是指程序在后台运行。

  3. 如何修改登陆系统时的消息? 修改 /etc/motd 文件,motd 的全义是 : Message Of ToDay,该文件的作用是,每次用户登陆时,该文件的内容会显示到终端。
    不过上述方法仅能更改当时的登陆消息,当重新启动系统后,又会被替换为 一部分动态生成的内容 + /etc/motd.tail 的内容。
    所以想要持久性的修改,最好修改 /etc/motd.tail 。
    实际上 modtd 是由 /etc/bootmisc.sh 生成的。
    更多信息请使用以下命令参考:
    man motd
    man motd.tail

  4. 如何修改网卡和 DNS 设置? 网卡配置文件:/etc/network/interfaces
    DNS 配置文件:/etc/resolv.conf

  5. 如何统计目录或文件的大小? 使用 du 命令。

  6. 查看当前系统挂载的分区? 使用 df 命令。

  7. 无法启用 vim 的语法高亮? 某些 Linux 发行版安装的 vim 可能不是 vim,而是直接链接到 vi。
    使用 vim –version,查看是否 vim 及具体版本。
    如果的确是 vim 的话,使用 “syntax on” 依旧无法启用语法高亮并报以下错误:
    E319: Sorry, the command is not available in this version: syntax on
    则有可能是没有完整的安装 vim (比如我目前使用的 Ubuntu-8.04 CLI)。
    解决方法,重新安装 vim:
    sudo apt-get install vim

  8. lsof -i tcp 命令无效? 使用 sudo 前缀命令即可。

  9. 如何激活或锁定用户? 激活 root 用户:
    sudo passwd root
    锁定 root 用户:
    sudo passwd root

  10. 如何修改命令提示符?
    修改 PS1 环境变量。如果要永久性的修改,则可以直接修改 ~/.bashrc 文件对 PS1 赋值的脚本,如果 .bashrc 没有对 PS1 赋值,则可以修改 /etc/profile。

  11. 如何配置本地编码支持? 使用以下命令:
    sudo locale-gen zh_CN.GBK
    上述命令生成 zh_CN.GBK 本地化支持,要完全启用该支持,需要在 /etc/environment (需要重启) 或 ~/.profile (需要重登陆) 或在 SHELL (直接生效)中定义以下变量:
    LANGUAGE="zh_CN:zh"
    LANG="zh_CN.GBK"
    LC_ALL="zh_CN.GBK"
    支持的编码有 UTF-8,GB2312,GBK,GB18030,可以在 /usr/lib/locale 中找到生成的字符集文件;在/var/lib/locales/supported.d/local 文件中可以看到目前已安装的字符集。
    这里我推荐使用 GBK 或 GB18030 编码。
    如果是桌面环境,可能需要重新配置 locale:
    sudo dpkg-reconfigure locales

  12. 查看用户所属的用户组? 使用 groups 命令即可查看当前登陆用户所属的用户组,如要查看指定用户的所属的用户组,在命令后加上用户名即可。
    使用 id 可达到相同的效果,并且信息更加详细。

  13. 显示文件或目录的详细信息? 使用 stat 命令即可。

  14. 执行简单数学运算 使用 let 命令即可,这是 bash 内建的命令。

  15. 执行计划任务 使用 crontab 命令,或直接放置脚本到以下目录:

    • /etc/cron.daily/
    • /etc/cron.hourly/
    • /etc/cron.monthly/
    • /etc/cron.weekly/

以上目录的脚本是通过 /etc/crontab 来执行的。
也可使用 crontab -u root -e 命令来编辑指定用户的计划任务脚本,编辑的脚本放在以下目录中:
/var/spool/cron/crontabs/

  1. <<待续>>
View Comments