Chinaunix首页 | 论坛 | 博客
  • 博客访问: 318136
  • 博文数量: 82
  • 博客积分: 1530
  • 博客等级: 上尉
  • 技术积分: 771
  • 用 户 组: 普通用户
  • 注册时间: 2010-04-16 03:44
文章分类

全部博文(82)

文章存档

2011年(6)

2010年(76)

我的朋友

分类: LINUX

2010-04-29 01:54:17

____****ls的一些用法:****____

*    ?     []     [1~8]    [a-zA-Z]


输入命令时候双击tab可以显示当前有那些可以输入




符号连接:

相当于windows下的快捷方式??

ln -s  target filename

-s表示symbolic links 而不是hard links

hard links 要目标目录活文件确实存在


重定向(redirection):

用一个>表示输出到目标文件,存在的话就替换

用一个>>表示存在的话就输出到文件的末尾

用一个>&表示就算是错误信息也输出到目标文件

如ls -l >log

gcc test.c >&output

gcc test.c >output


管道(pipe):

就是将某个程序或者命令的输出当成下一个的输入??   两个命令之间用符号 |  隔开

du | sort -n

du是显示磁盘的命令, sort是排序的, -n表示按照文件大小排列

显示的内容太多,我们可以用第二条管道来more

du | sort -n | more


搜索命令:

当你在shell中敲入命令的时候,shell会去指定的文件夹中寻找命令,输入 echo $PATH 可以查看搜索的文件夹

echo $PATH

把指定文件夹加入到搜索范围可使用以下命令:

export PATH=$PATH:/usr/sbin


后台运行程序:

在命令的后面加上&

gcc test.c &
显示:[1] 12345

[1]是该命令的工作序号,而12345是自定义的进程识别代码(process ID)

fg %1

jobs命令可以查看挂在后台的程序,[]里面的称为作业号

ctrl + z                      表示挂起

ctrl + c                       表示退出

bg                  弄到后台

上面两个命令都是将命令带回前台,fg就是foreground的意思


用apropos命令来搜索相关的帮助手册:

apropos ls

搜索和ls有关的

添加帮助手册的路径和命令的差不多

export MANPATH=/usr/man:/usr/local/man


文件的所有权和权限:

chown这个命令用来修改文件的拥有者,只有root才能执行

chgrp这个命令用来修改文件的组

chmod这个命令用来改变权限

例如装来sampsoft这个软件

chown bin sampsoft

chgrp bin sampsoft

例如header是一个简单的程序

chmod +x header

chmod -x header

chmod u+rwx header

chmod ug+x header

chmod -R(--recursive) dir

chmod --reference=文件名或目录名 -Rv header

chmod 775 header

+表示增加权限,-表示去掉权限,u, g, o 分别表示拥有者,组和其他人,-R表示以递归形式改变目录下文件的所有权限,-v显示对每个文件或目录的处理结果,--reference用指定文件的目录来访问来设定目标文件或目录的权限,而不是以模式来指定,或者可以直接用数字来指定权限

unmask这个命令是去掉文件的权限,有点像网络地址的反掩码

unmask 005 header



启动配置文件:

配置文件一般在用户的主文件下,并且以.开头,属于隐藏文件



重要目录:

/usr/bin             命令存放的地方

/usr/sbin           管理命令,s是super的意思

/boot               启动文件,内核放在这里

/etc               子系统所用到的文件

/var               存放一些监控点的文件,如日志log

/usr/lib              标准函数库

/usr/include          头文件

/usr/src                   系统源代码存放的地方

/etc/skel               启动配置的样本



看守程序(daemon):

所谓的看守程序就是在服务器的后台为你提供服务的程序,大多数都是用来处理网络上的活动。系统只会启动一个daemon程序来接收客户端的连接,当连接建立之后,就会启动适当的daemon程序去处理该连接。这样可以只启动必要的网络服务程序


进程:

ps命令用来查看进程

ps -aux 

显示的tty那栏表示在哪个终端运行的程序,-a表示显示所有进程,-u表示显示用户名,-x显示daemon进程,也就是不用终端执行的进程


管理用户账户

用户信息保存在 /etc/passwd

建立帐号:

adduser            跟着指引作

删除与停用账户:

deluser -r username               -r会强制删除该用户的主目录

find / -user username -ls       快速查找与该用户相关的文件

这个命令会以ls -l的方式打印出来,要使用这个命令的前提是username在passwd文件中拥有一个项目,如果已经删除了这个项目,可以用以下命令

find / -uid num -ls                    用在删除用户但没删除主文件夹的情况

要暂停一个用户可以删除其在passwd中的项目,也可以在该项前面加上*

修改用户账户:

password username      修改密码

如果要修改一个用户的uid,可以直接去编辑passwd,然后用chown去修改原来文件的拥有者

chown -R aclark home/aclark





管理文件系统

挂载文件系统

mount -t type device mount-pont

编辑fstab文件,让别的用户也可以挂载文件系统

fstab文件中option中如果有多个参数可以用逗号隔开

/dev/cdrom     /cdrom          iso9660         ro,user

建立文件系统

命令:mkfs

mkfs -t type device blocks

mkfs -t ext2 /dev/fd0 1400           1400表示磁盘容量是1.44m

建立文件系统相当于将磁盘格式化


检查与修复文件系统

命令:fsck  (file system check)

一般形式为fsck.type             如fsck.ext2

fsck -t type device

对于已经挂载的文件,一般会询问是否继续。如果找到并修复问题之后,要重新启动机器。一般会在检查之前先umount

要检查root文件系统,要用磁盘开机












升级软件和内核

备份与压缩工具

gzip garbage.txt                压缩txt文件

gunzip garbage.txt.gz                 解压压缩文件

当压缩成功之后,原文件会被删除,同理,解压成功之后,压缩文件也会被删除

可以通过管道将一个命令的输出通过gzip压缩起来

ls -laR $home | gzip > filelist.gz

也可以通过管道不用解压就阅读压缩文件里面的文件, -c是关键

gunzip -c filelist.gz | more

zcat命令其实就和gunzip -c一样,相当于压缩文件上的cat命令



备份使用tar

格式:tar function option file......

function:  c(建立新的备份文件)   x(将备份文件解开)   t(列出备份文件的内容)   r(将文件附在一个备份文件后面)     d(比较备份文件里面的文件和系统的文件)

一般使用的只有c,x,t

option: v(处理文件时显示更多信息)   k(备份中的文件不能覆盖已存在的文件)  f filenme(指定filename为读出或写入文件的文件名)

假如有一个mmt的文件夹

tar cf mmtbackup.tar mmt

c是创建备份文件,f是以mmtbackup.tar命名。。。。。。

解压文件

tar xvf mmtbackup.tar

tar tvf mmtbackup.tar              查看压缩包中的文件

tar xvf mmtbackup.tar mmt/mmt.c

单独把压缩包中的mmt/mmt.c这个文件解压出来



配套使用tar和gzip

tar cvf - files... | gzip -9 > tarfiles.tar.gz

gunzip -9c tarfiles.tar.gz | tar xvf -

简化选项,tar中加入z选项,相当于以上的功能

tar cvzf tarfiles.tar.gz

tar xvzf tarfile.tar.gz

要想配合使用tar和gzip就必须告诉tar你所使用的压缩程序

tar cvf tarfile.tar.gz --use=bzip2 files...

问题:在.bashrc文件中添加tarc () {tar cvzf $1.tar.gz $1}之后,为什么不能直接在bash中调用tarc???

已解决:函数的格式问题,应该如下:

tarc() {
tar cvzf $1.tar.gz $1
}

编辑完.bashrc之后,执行命令source ~/.bashrc

这样就好了

升级函数库

大部分函数经过编译之后或多或少都会用到共享函数库。像windows下的dll。程序本身拥有自己的一份函数库的副本,这叫做静态链接。那些以来共享函数库的叫做动态链接。当建立一个使用共享函数库的程序时,程序会加入一段程序启动时执行ld.so的代码。动态链接的程序会使用填充代码来取代原来函数中共享函数的位置,当程序执行是,ld.so会用函数库中的函数去取代填充代码。

例如:

ldd /usr/bin/virtualbox

/etc/ld.so.conf这个文件中包含了ld.so寻找共享库函数的目录清单。无论这个文件里面的内容是什么,ld.so一定回去检查/lib和/usr/lib

只要在这个文件中加入新内容,一定要使用命令:ldconfig

最长升级的是:

libc   标准c语言函数库

libm 数学函数库

每个共享函数库里面都会有下面的两个文件:

library.a                   这是一个静态函数库

library.so.version    :这是共享函数库本身,Version就是版本号
 
.a的文件通常放在/usr/lib中,而.so的文件通常放在/lib中。如果有自己的函数库,也可以把ld.so的目录指到别的地方,编译的时候加上参数-L

观察ls -l /lib 的输出

会看到符号链接。ls.so只依靠主要版本号来查找函数

更新的时候,静态函数库比较容易,直接复制到相应的文件夹,覆盖即可。而动态函数库中存在着符号链接,所以不能随便删除和覆盖。而是要用命令:

ln -sf          对原来的符号链接替换好





备份:。。。。。。

管理系统日志

syslogd这个应用程序会记录系统上各种活动,syslogd以看守进程的形式来运行,通常是开机时由一个rc文件启动

日志文件的保存目录,求解。书太旧了,上面说的找不到

不过日志目录一般都是在 /var/log文件夹下

其他日志文件:

/var/log/wtmp              包含每个用户登录次数和持续时间的二进制文件,用last显示

/var/run/utmp              包含目前登录用户信息的二进制文件,


阅读(1652) | 评论(0) | 转发(0) |
0

上一篇:略有所得

下一篇:VIM配置初级指南

给主人留下些什么吧!~~