linux学习笔记(一)

来源:互联网 发布:广州租房知乎 编辑:程序博客网 时间:2024/05/02 04:56
1、相关名词解释:gnu、gpl
     GNU是“GNU's Not Unix”的递归缩写。GNU计划,又称革奴计划,是由Richard Stallman在1983年9月27日公开发起的。它的目标是创建一套完全自由的操作系统。UNIX是一种广泛使用的商业操作系统的名称。由于GNU将要实现UNIX系统的接口标准,因此GNU计划可以分别开发不同的操作系统部件。为保证GNU软件可以自由地“使用、复制、修改和发布”,所有GNU软件都在一份在禁止其他人添加任何限制的情况下授权所有权利给任何人的协议条款, GNU通用公共许可证(GNU General Public License,GPL)。这个就是被称为“反版权”(或称Copyleft)的概念。

2、virtual console,查看当前控制台(tty),ctrl+alt +(F1-F6)在文本虚拟控制台下切换 F7切换到图形模式。

3、linux命令格式:command [options] [arguments]
   注意如果options选项是一个单一字母,前加“-”(ls -a);是一个单词,则前加“--”(ls --all);如果要使用多个单一字母options,可以使用ls -a -l 或者ls -al。

4、目录的权限:读权限意味着可以列出其中的内容;写权限意味着可以在该目录中创建文件;执行权限意味可以搜索和访问该目录。注意目录的权限会覆盖该目录中文件的权限:r--目录中有一个rwx的文件,那么用户无法编辑该文件,因为该文件所属目录不具有这样的权限。

5、suid意味着如果某个用户对属于自己的shell脚本设置了这种权限,那么其他用户在执行这一脚本时也会具有其属主的相应权限。guid则是具有该文件所属用户组中用户的权限。
如何设置suid:将权限位之前的那一位设置位4(guid为2),设置之后s将取代权限位中相应的x。注意在设置suid或者guid的同时,必须要具备相应的执行权限位。
例如:对于权限位741的login文件, 执行chmod 4741(或者chmod u+s) 之后,该文件权限变为rwsrw-r--。

6、umask命令允许设定文件创建时的缺省模式。对文件最大值为6(文件初时创建时不能设置执行权限),对目录最大值为7。例如umask 002,计算相应缺省权限为777(rwxrwxrwx)-002(-------w-)=775(rwxrwxr-x)(对于文件要取消执行权限)。

7、find命令按照用户制定的准则来匹配文件。使用exec和xargs可以使用户对所匹配到的文件执行几乎所有的命令。find的几个参数:-print 在标准输出上输出匹配文件;-exec command {} /;对匹配文件执行command命令(有长度限制)。-ok command {} /;对匹配文件执行command命令,但是弹出执行命令的提示。
xargs命令被用来解决-exec命令长度有限制的问题:find . -name "core" -print | xargs chmod o-w。

8、后台执行命令:
cron(只提供缺省的环境变量)   系统调度进程。可以使用它在每天的非高峰负荷时间段运行作业,或在一周或一月中的不同时段运行。cron是系统主要的调度进程,可以在无需人工干预的情况下运行作业。有一个叫做crontab的命令允许用户提交、编辑或删除相应的作业。每一个用户都可以有一个 cron文件。
At(保留当前的环境变量)   at命令。使用它在一个特定的时间运行一些特殊的作业,或在晚一些的非负荷高峰时间段或高峰负荷时间段运行。
&   使用它在后台运行一个占用时间不长的进程。最好将输出重定向到文件中。
Nohup   使用它在后台运行一个命令,即使在用户退出时也不受影响。nohup command &。如果使用nohup命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件。

9、元字符:
*   匹配文件名中的任何字符串,包括空字符串。
? 匹配文件名中的任何单个字符。
[...]   匹配[ ]中所包含的任何字符。还可以使用一个横杠-来连接两个字母或数字,以此来表示一个范围。
[!...]   匹配[ ]中非感叹号!之后的字符。
当s h e l l遇到上述字符时,就会把它们当作特殊字符,而不是文件名中的普通字符,这样用户就可以用它们来匹配相应的文件名。

10、文件描述符:当我们在shell中执行命令的时候,每个进程都和三个打开的文件相联系,并使用文件描述符来引用这些文件。由于文件描述符不容易记忆,shell同时也给出了相应的文件名。标准输入文件(文件描述符0)标准输出文件(文件描述符1)错误输出文件(文件描述符2)
系统中实际上有12个文件描述符,其他的3到9文件描述符可以任意使用。

11、重定向:
> 一般模式
>>追加模式
grep "standard" > grep.out 2>&1 将标准输出和错误输出都重定向到grep.out(&1标准输出)

12、linux的文件系统:
   / 根目录 . 当前目录 ..上一级目录
   /root /home/<username> 放置每个用户的个人档案
   /bin /usr/bin /usr/local/bin  这个目录包含着所有的标准命令和应用程序.
   /sbin /usr/sbin /usr/local/sbin 存放系统管理用的标准命令和应用程序
   /media /mnt 可移式存储媒体(外部文件系统挂接点)
   /etc system config files
   /tmp temporary files   
   /boot kernel and bootloader
   /dev device
   /usr programs(类似于windows下的program files文件夹)
   /lost+found 不正常片段(非正常关机)
   /var (经常变更的系统档案,E-mail等等)
   /srv server date
   /proc system information
   /lib
原创粉丝点击