首页 > 代码库 > Linux学习笔记

Linux学习笔记

systemctl --user enable pulseaudio
说明:安装完成后系统没有声音,用该命令可以打开。

ifconfig eth0 192.168.118.1
说明:给网卡设置IP地址。

apt-get install uget
apt-get install aria2
说明:uget是kali里常用的下载工具,aria2是插件。

以下是兄弟连linux教程学习日记
2016-9-12 学习日记
ls 查看目录下的文件,以下是常用选项
ls -l long,长显示,详细
ls -a  显示所有文件,包括隐藏文件
ls -lh 以人类容易理解的方式显示,主要是指文件的大小。
-表示是文件 d表示是目录 l表示链接。
u所有者 g所属组  o其它人
-rw- --- ---,对应以上顺序。
ls -ld显示目录的本身,不显示下面的文件,一般和l一起使用。
××ls -i显示节点,后面会用到。

mkdir创建目录
mkdir -p递归创建目录
cd 切换目录
pwd print working directory,显示当前的绝对目录
.表示当前目录,..表示上级目录
rmdir 删除空目录

cp拷贝文件
cp -r 复制目录
cp -p 保留文件属性

mv :move 剪切、更名
ctrl c或clear 清理终端。

rm 删除文件
rm -rf 文件或目录
rm -r 删除目录
rm -f 强制执行

2016-9-18 学习日记  
4.1.3

touch 创建文件
创建带空格的文件名需要将整个文件名用双引号包起来(不建议使用空格)
cat
浏览一个文件的内容(适合搜索内容比较少的文件)
-n 显示行号
more(非常重要)
分页显示文件
空格是一页一页的显示,enter一行一行的显示,q退出
less
与more相同,不同的是可以向上翻页
/后跟要查找的关键词可以搜索,n可以向下搜索。

head -n
可以查看一个文件的前几行。
tail -n
可以查看文件的最后几行
tail -f
动态显示一个文件末尾的内容,并动态更新。
退出ctrl -c

4.1.4
ln 生成链接文件 -s
ln -s 原文件  目标文件
加s是软链接,不加s是硬链接
链接文件相当于windows的快捷方式
软链接的权限不等于原文件的权限
软链接在查看文件属性的时候有一个->显示了指向的文件
硬链接没有这个符号,并且属性与原文件的属性相同。
如果原文件删除了软链接提示没有目录,硬链接文件仍然可以保存文件内容
硬链接与文件复制相同,并且可以同步更新。
ls -i 可以查看硬链接的i节点,与原文件相同(每一个文件都有一个唯一的节点)
注意:硬链接不能跨分区,软链接可以;硬链接不能链接到目录,软链接可以

4.2.1
chmod
改变文件或目录的权限
chmod [{ugoa}{+-=}{rwx}] [文件或目录]
u:所有者,g:所属组,o:其他人,a:所有人
chmod u+x 文件名
chmod g+w,o-r 文件名
chmod g=rwx 文件名
以下是用的最多的方法:
数字表示法
r --- 4
w --- 2
x --- 1
chmod -R 文件名
递归修改
chmod 777 /temp/a/b
等于
chmod 777 /temp/a
递归修改目录及以下的目录和文件
注意:文件权限与目录权限的关系,两者有继承关系

2016-9-19学习日记
chown
说明:改变文件或目录的所有者
只有root用户和所有者可以改变文件的权限而只有root用户可以改变文件或目录的所有者。
chown [用户] [文件或目录]
chgrp
说明:改变文件或目录的所属组
 
umask
说明:显示、设置文件的缺省权限
常用命令
umask -S 以rwx形式显示新建文件的缺省权限
linux里新建的文件是没有可执行权限的
umask 命令会显示022,关于022如下解释:
0特殊权限
022
777  rwx rwx rwx
022  --- -w- -w-
--------------------异或
755  wrx r-x r-x
这是目录的表示方法
改变默认的方法 如下
umask 077(不建议做以上更改)

4.3.1 文件搜索命令
find
说明:文件搜索
用法:find [搜索范围][匹配条件]
find /etc -name init   -name是参数选项
find /etc -name *init*  *是通配符,表示文件命中含有init
find /etc -name init*  表示搜索以init开头的文件
find /etc -name init??? ?表示单个字符的通配符
 以上搜索是区分大小写的
find /etc -iname init   -iname 表示不区分大小写
不要在服务器高峰时使用find 命令,搜索的范围越小越好

find / -size +204800 表示以文件大小进行搜索,其中 +n表示大于n,-n表示小于n,n表示等于n
在linux中文件大小是以数据块表示的,换算方法如下:1数据块=512字节=0.5k

find /home -user 用户名
根据所有者来搜索

find /etc -cmin -5
在/etc目录下查找5分钟内被修改过的文件和目录
-amin 访问时间 access
-cmin 文件属性 change
-mmin 文件内容 modify
复杂的搜索命令
find /etc -size +163840 -a -size -204800
说明:在/etc下查找大于80M小于100M的文件 -a表示同时满足 -o表示两个条件满足一个
find /etc -name init -exec ls -l {} \;
在/etc下查找 init 文件并显示其详细信息,{} \;
find /etc -name init* -a -type f -exec ls -l {} \;
find /etc -name init* -a -type f -ok ls -l {} \ ;
以上两条的区别是逐条显示并询问
如:find /etc -name temp -ok rm {} \;
逐条询问是否删除
注意以上每条语句结尾加分号;
-inum 根据i节点查找
find . -inum 3223 -exec rm {} \;
4.3.2 其它文件搜索命令
2016-9-21  学习日记
4.3.2 其它文件搜索命令
1、locate  
说明:在文件资料库中查找文件
locate 文件名
系统会在内部建立一个文件资料库,并会定期更新
刚建的文件用locate搜索不到,需要手动更新一下资料库,使用命令updatedb
但是如果新建的文件在另一下文件夹(如tmp)中可能还是搜索不到
locate -i 文件名,表示查找的时候忽略大小写
locate 并不是经常用
 
2、which
说明:搜索命令所在的目录及别名信息
用法:which 命令
which ls,可以查到命令的路径及命令的别名
 
3、whereis
说明:搜索命令所在目录及帮助文档路径
whereis ls
4、grep
用法:grep -iv 指定字串 文件
说明:在文件中搜寻字串匹配的行并输出
      -i 不区分大小写
      -v 排除指定字串
例:grep mysql /root/install.log
搜索的结果是将符合要求的行列出来
    grep -v ^# /etc/inittab
排除以#号开关的行
4.4 帮助命令
1、man
说明:获得帮助信息
用法:man 命令或配置文件
例:man ls
    man services(配置文件)注意不要加路径
另外,man 1或5 ls,1表示命令的帮助信息,5表示配制文件的帮助信息
2、whatis 命令
说明:查看命令name 部分的信息,主要是介绍命令的主要信息。
3、apropos 配制文件的名子
说明:查看配置文件的主要信息。
4、命令 --help
说明:主要列出命令的选项
用法:ls --help;
5、help
说明:使用help可查看一些shell内置的命令的帮助
使用man不能查看内置命令。
 
2016-9-22 学习日记
4.5 用户管理命令
 
1、useradd
说明:添加新用户
用法:useradd 用户名
2、passwd
说明:设置用户密码
passwd 用户名
3、who
说明:查看登录用户信息,显示当前登录的用户。
用法 who
tty 表示本地登录,pts表示运程终端登录
4、w
说明:查看登录用户的详细信息,比who要详细
4.6 压缩解压命令
.gz格式
gzip 压缩文件 注:只能压缩文件,不能用于目录,并且不保留原文件
gzip 文件名
gunzip 解压缩文件
 
tar
说明:打包
用法:tar -cvf 文件名
网络上的一般用法是先用tar打包,再用gzip压缩,生成 文件名.tar.gz,很多原代码都是这样打包上传的。
可以将打包和压缩一步完成,就是用-z选项,tar -zcf。
-x
说明:解包
用法:
tar -xvfz
 
.zip格式  
zip
说明:压缩文件或目录
用法:zip [-r] [压缩后的文件名] [文件或目录]
注意:可以保留原文件  
-r 选项是压缩目录
unzip
说明:解压缩
用法:unzip 文件名
 
bzip2
说明:压缩文件,是zip的升级版,压缩的比例比较大,
主要用在文件比较大时候,产生bz2格式的压缩文件。
用法:bzip2 选项[-k][文件]
      -k 产生压缩文件后保留原文件
例:bzip2 -k 文件名
    tar -cjf 文件名.tar.bz2
bunzip2
说明:解压缩
用法:bunzip2 选项[-k] 压缩文件
              -k 解压后保留原文件
例:tar -xjf 文件名.tar.bz2
 
4.7 网络命令
write
说明:给特定用户发信息,以Ctrl +D 保存结束
用法:write 用户名
wall
说明:给所有在线用户发信息
用法:wall 发送的内容
ping
说明:测试网络的连通性
用法:ping 选项 IP地址
           -c   发送的次数
注:不带选项时一直在ping  
ifconfig  
说明:查看或设置网卡信息
用法:ifconfig 网卡名称 IP地址
例:ifconifg eth0 IP地址
mail
说明:查看发送电子邮件
用法:mail 用户名(root)
注意用Ctrl +D 结束发送
last
说明:列出目前与过去登入系统的用户信息。
lastlog
说明:检查某特定用户上次登录的时间
用法:lastlog
      lastlog -u 502
traceroute
说明:显示数据包到主机时间的路径。
例:traceroute www.baidu.com
netstat
说明:显示网络相关信息
用法:netstat[选项]
-t : TCP协议
-u :  UDP协议
-l :  监听
-r :  路由
-n :  显示IP地址和端口
例:
netstat -tlun 查看本机监听的端口
netstat -an   查看本机所有网络连接
netstat -rn   查看本机路由表


setup
说明:配置网络
例:setup
注:setup只能在redhat中使用
mount  
说明:把设备连接到挂载点上
用法:mount [-t 文件] 设备文件名 挂载点
例:mount -t iso9660 /dev/sr0/mnt/cdrom 注:sr0设备文件名是系统自动给的
unmount  
说明:卸载已挂载的设备文件
用法:unmount 设备文件名
4.8 关机重启
shutdown
说明:关机  
用法:shutdown [选项] [时间]
-c取消前一个关机命令
-h 关机  
-r 重启

 

2016-9-26 学习日记
6.1-6.2.4 RPM管理
rpm安装
用法:
rpm -ivh 包全名
选型解释:
-i 安装
-v 显示详细信息
-h 显示进度
-- nodeps 不检测依赖性
- U 升级
-e 卸载
-q查询
-a查询所有已经安装的PRM包
-i查询已安装过和RPM包信息,与-q一起使用
-p查询没有安装RPM包的信息,与-q一起使用
-l查询安装包的路径信息,与-q一起使用
-f查询系统文件属于哪个软件包,与-q一起使用
-R查询软件包的依赖性,与-q一起使用,也可以与-p一起使用,查询未安装的安装包的依赖性。
-V 校验指定RPM包中的文件,主要判断文件是否被修改,便rpm -V 包名,查询结果会显示一部分字符,标识了哪些部分被修改了。

rpm2cpio
说明:RPM包提取某个文件
用法:rmp2cpio 包全名|cpio -idv .文件绝对路径
cpio
说明:是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件
注意:其中点表示当前目录。


鸟哥linux 学习日记(2016-9-22)
1、图形与文字模式的切换方式
Ctrl+Alt+F1~F6 进入文字接口的终端
Ctrl+Alt+F7 进入图形接口桌面
另外,可在文字终端下输入startx命令进入图形接口
2、/usr/share/doc 目录
说明:一些命令或软件的信息及原理和设计过程等信息。
3、关机操作
sync 将数据同步写入硬盘中的指令
shutdown 最正确的关机指令
reboot   重启
halt     关机
4、/etc/passwd /etc/shadow
说明:这两个目录是关于系统用户名各密码的一些信息,帐户的管理可以从这两个目录修改。
  /etc/group /etc/gshadow  
说明:这两个目录是关于系统用户组的一些信息,用户组的一些管理可以直接从这两个目录中操作。
5、groupadd
说明:指令用于增加群组,作用到的档案只有/etc/group和/etc/gshadow
   groupdel  
说明:删除用户组,但是在这之前要删除用户中组ID与group组ID相同的用户。
   useradd
说明:用于建立一个帐户,影响到的档案用以下几个:
/etc/passwd
/etc/shadow
/etc/group
/etc/gshadow
/etc/skel
/etc/default/useradd 这个档案是关于预建帐户的一些默认设置
/etc/login.defs  这个档案是关于预建帐户的一些默认设置
   userdel
说明:删除目录
6、身份变换
第一种:su,需要知道root的密码,但是如果管理员多了容易造成密码泄露。
第二种:sudo,只需要输入当前用户的密码,不需要root的密码。但是需要注意用户是否有权限执行sudo,可以在/etc/dudoers里设置哪些用户用权限
7、使用者查询
id
说明:显示当前登录者的UID GID等信息
groups
说明:显示当前登录者所属的组
finger  
说明:显示相关用户的详细信息
8、Shell
alias
说明:给复杂并常用的命令组合起一个简单的别名
例:alias lm=‘ls -al‘
echo
说明:显示变量的内容
用法:echo $变量名,变量名主要包括PATH HOME MAIL等 全局变量
env
说明:显示系统中主要的变量内容
用法:env
set
说明:显示系统中全部的变量内容,同时也可以用于设定自己的变量














Linux学习笔记