Linux基本指令 笔记

ls *匹配多个字符   ?匹配单个字符    [1A]匹配1或者A    [1-3]匹配1到3
eg:ls text*          ls text?        ls text[1A]      ls text[1-3]
pwd 查看当前目录
cd ~或者cd 进入当前用户目录
ls -F 目录后面加/ 可执行文件后面加* 链接文件后面加@
ls -a 所有文件,包括.开头文件
ls -l 详细信息

cat -n filename.sh 带行号全部显示
more filename.sh 分页显示文件
head -n 2 day weather 显示day和weather文件的头两行
tail 显示文章结尾,用法同上
less 文件查看,比more强大一些
grep un day 在day中查找包含un的行

find  /user/bin/  -name zip -print 查找指定目录下的名为zip的文件并且输出到屏幕
find /user/bin/  -type f -atime -1 -print 查找最近一天修改过的文件
type类型:b块设备文件  c字符设备文件  d目录文件  f普通文件 p命名管道 l符号链接

locate速度更快,原理是搜索自己的数据库
locate *.doc

whereis主要用来查找应用程序
whereis -b firefox 查找二进制可执行文件

who查看哪些人登录
whoami我是什么身份
uname -a 查看操作系统信息 -r只查看内核版本

man find查看find命令帮助,jk翻页,q退出
whatis只显示使用手册的简单介绍,比man简洁
whatis uname 查看uname命令简介
apropos search查找与search有关的的命令

*****linux系统主要目录及其内容**********
/bin 构建最小系统所需要的命令(最常用的命令)
/boot 内核与启动文件
/dev 各种设备文件
/etc 系统软件的启动和配置文件
/home 用户的主目录
/lib C编译器的库
/media 可移动介质的安装点
/opt 可选的应用软件包(很少使用)
/proc 进程的映像
/root 超级用户的主目录
/sbin 和系统操作有关的命令
/tmp 临时文件存放点
/usr 非系统程序和命令
/var 系统专用的数据和配置文件

******和团队共享文件**********
sudo groupadd workgroup   建立用户组
sudo useradd -G workgroup lucy  添加成员
sudo useradd -G workgroup lewis 添加成员
sudo mkdir /home/zuodong/work/sharegroup/  建立文件夹
sudo chgrp workgroup sharegroup/ 将文件夹权限移交给workgroup组
sudo chmod g+rwx sharegroup/ 用户组添加读写执行权限
sudo chmod o-rwx sharegroup/ 移除其他用户的读写可执行权限
sudo chown lewis sharegroup/ 更改所有者


mkdir -p `/tempx/job 创建完整的目录,父目录没有则会自动创建
touch hello 创建一个空文件,touch自动备份和整理文件非常有用
mv 移动文件 -i 提示覆盖 -b 同文件后面加~
cp -i test.php test/  复制文件 -i -b
cp  -r test/  桌面/  复制文件夹,默认会忽略test/文件夹,-r会连同test/文件夹一同复制  
rmdir 删除空文件
rm -i test/hello 移除文件 -f强制删除 -r递归删除所有目录
chown lewis:root days/ 更改days文件夹所有权:前为用户,:后为组可以只写用户或者组
chown lewis days 改变所有者
chown :root days 改变用户组
chown -R lewis iso/  更改目录下所有文件的所有者
chgrp nogroup days 改变用户组

用户组包括文件属主(u),文件属组(g),其他人(o),所有人(a),权限为rwx
chmod u+x days 所有者添加可执行权限
chmod ug=rw,o=r days 直接设置文件权限
chmod o=u days 将其他人的权限设置成和所有者的权限一样
chmod 777 prog/ 数字形式设置权限,rwx对应421,然后相加

Linux文件类型  eg:ls -l查看文件 drwxr-x--x
-普通文件 d目录 c字符设备文件 b块设备文件 s本地域套接口 p有名管道 l符号链接

ln -s days my_days 软链接,就是快捷方式
ls > ~/ls_out 输出重定向,>直接覆盖,>>添加信息
< 输入重定向,默认指向键盘
输入cat命令,键盘会等待,直到按Ctrl+D结束
cat << EOF 立即文档,直到EOF输入才会停止并输出全部,EOF可换成其他
cat << END > hello 让cat以立即文档的方式获取输入,然后重定向到hello文件中
ls | grep ay 用管道"|"将ls出来的内容发送给grep作为输入,查找包含ay文件命

dpkg -i google-chrome.deb 对于Debain和Ubuntu来安装命令
dpkg -r google-chrome.deb 卸载软件
dpkg -l | grep chrome 查询安装的软件
Red Hat,openSUSE版本可以用rpm命令行
dpkg -S openssh 查询软件

apt安装工具,最好的安装工具
apt-get update 更新apt软件
apt-get install 下载安装软件包
apt-get upgrade 下载安装本系统已有的最新软件包版本
apt-get remove 卸载软件包
apt-get source 下载特定的软件源码
apt-get clean 删除所有已下载的包文件

apt-cache search flight 搜索带flight字样的软件包
apt-cache depends flight 查询flight的依赖关系
apt安装源在/etc/apt/sources.list中

make编译源代码,详情google

**********挂载mount来挂载光盘**********
mkdir /mnt/cdrom  自定义挂载光盘位置
mount /dev/cdrom  /mnt/cdrom   挂载
ls /mnt/cdrom  查看文件
umount /dev/cdrom 卸载
/etc/fstab 文件显示挂载的信息

df 显示挂载文件的详细信息 -t ext4显示特定文件系统
fsck检查和修复文件系统
mkfs格式化文件系统
mkfs -t ext3 /dev/sdb1 格式化2磁盘1分区为ext4格式
mkfs -t ext4 -c /dev/sdb1 检查指定设备上损坏的块

*********挂载USB设备*********
mkdir /mnt/usb
mount /dev/sdb1 /mnt/usb/
cd /mnt/usb/
ls
cd /
umount /dev/sdb1

lsusb 列出内核发现的USB设备

gzip linux_book_bak.tar 压缩tar文件,后缀变成.tar.gz
gunzip linux_book-bak.tar.gz 解压缩文件
gzip -d linux_book_bak.tar.gz 解压文件
gzip -l linux_book_bak.tar.gz 查看压缩效果
bzip2 使用方法同上

tar -cvf shell.tar shell/  打包文件 c创建归档文件 v显示执行过程 f指定归档文件名
tar -xvf shell.tar 解包文件 x解开归档文件  w每次询问
tar -cvf shell.tar.gz shell/ 两步执行,打包压缩
tar -xvf shell.tar.gz 解压解包

fdisk 分区工具
mkfs建立文件系统
fsck -f /dev/sdb1检查文件系统
挂载并df来测试分区
mkswap 创建交换分区
配置fstab文件 

dump 文件备份
restore 数据恢复
cron 定时自动备份

useradd nox 添加用户并设置密码
passwd nox
useradd -g users mike 添加用户并设置用户组
groupadd newgroup 添加用户组
history 10 最近10条命令记录
userdel mike 删除用户 -r同时删除用户主目录
usermod 管理账户 -d修改用户主目录 -e修改账号有效期MM/DD/YY -g修改用户所属组 -l修改用户账号名称 -s修改用户登录后所使用的shell
usermod -l mike -d /home/mike -e 12/31/13 john
id nobody 查看用户信息
id 查看当前用户信息

su john 切换账号
exit 退出当前账号
sudo 临时特权
/etc/studoers 设置用户权限
/etc/passwd 用户基本信息
/etc/shadow 加密过的密码,最广泛的是MD5
/etc/group 用户组信息

PID 进程的ID号
PPID 父进程的ID号
UID和EUID 真实有效的用户ID,进程的创建者和root用户才有操作的权限。一般情况下是一样的,除非是setuid程序,例如passwd,uid为当前用户id,euid为root用户0
GID和EGID 真实和有效的组ID 

ps aux 查看所有进程
user 进程创建的用户名,CPU百分比,内存百分比,vsz 进程占用虚拟内存的大小, rss 内存中页的数量,tty 进程所在终端的id号,stat 进程状态,start 进程启动的时间,time 进程已占用cpu时间 ,command 命令和参数。

ps lax 查看进程,提供父进程(PPID)和谦让度(NI)
top 跟踪命令,默认10s更新一次,cpu占用最多的排在前面
lsof database.doc 查看占用文件的进程

kill 向进程发送信号
kill [-siginal] pid 标准语法
kill -l 列出所有信号,常用的信号有EXIT 程序退出收到该信号,HUP 挂起,INT 中断,QUIT 退出,KILL 杀死,SEGV 段错误,USR1 用户定义
kill -TERM 12974等同kill  -SIGTERM 12974等同kill 12974
kill -KILL pid 基本保证杀死进程或者写编号9

nice -n 2 bc 调整bc的谦让度以启动,renice运行时调整谦让度
/proc 系统内核运行时输出日志的地方

**********网络配置****************
ip分为网络部分和主机部分
ifconfig 不带参数可查看网络接口和配置
ifconfig eth0 192.168.1.14 netmask 255.255.255.0 up 配置网络并且启动
ifconfig eth0 down 关闭eth0这个网络

netstat -r 查看当前系统中的路由信息
route add -net 10.62.74.0/24 gw 10.71.84.51 添加一台默认路由器,/24表示子网掩码有24位,-net 表示网络部分,默认将前面的网络请求发送到后面的ip
route add -host 10.62.74.4 gw 10.71.84.51 直接配置主机地址的路由
route del default 删除一条路由器

配置host文件
cat /etc/host 查看host文件,可配置ip映射

PPP协议(point-to-point protocol):点到点协议, 上网拨号分为几步:1.使用串行调制解调器拨号2.登录服务器3.启动远程PPP协议引擎4.将串行端口配置为网络接口。
ADSL宽带接入方式,使用的协议为PPPOE (PPP over Ethernet)

wvdial可以进行ppp连接:
/etc/wvdial.conf 为网络的配置文件
wvdial 16500 拨号上网参数名应为Dialer的名字,也可以不加参数

Lynx是一款基于文本的浏览器

mount 10.171.37.1:/srv/nfs_share  share/ 挂载网络硬盘NFS,还可以-o rw 以可读写的方式挂载
showmount -e 10.171.37.1  查看主机导出的目录
unmount share/ 卸载文件,还可lsof后kill掉进程,还可unmount -f强行卸载
mount -o rw,hard,intr,bg 10.171.37.1:/srv/nfs_share share/
启动时自动安装远程文件系统:
在etc/fstab文件中添加10.171.37.1:/srv/nfs_share  /home/lewis/share  nfs  rw,hard,intr,bg  0  0  
使配置立即生效:mount -a -t nfs

FileZilla 图形化FTP管理工具
ftp 10.171.37.1 2121 登录FTP服务器
anonymous 匿名登录
显示ftp>
ftp > get 0811.log 下载文件到当前目录
ftp > mget *.xac 下载所有匹配的文件
ftp > prompt off 关闭ftp命令的交互模式,避免总提示是否下载
ftp > put h* 上传所有匹配文件,若不行则使用mput命令
ftp > lcd ~/ftp/ 更改本地端目录
ftp > !ls 查看本地端目录中的文件列表
ftp > ? 查看所有ftp命令
ftp > quit 退出ftp程序,或者用bye

sftp lewis@10.171.32.73 建立SSH连接,用法跟ftp类似
scp lewis@10.171.33.221:/home/lewis/dump.tar.gz /srv/nfs_share/ 拷贝文件的快捷方式

******远程登录服务*************
apt-get install ssh 安装openssh服务,默认自动启动服务
/etc/init.d/ssh start 手动启动ssh服务
apt-install vnc4-common vnc4server  获取并安装vnc的服务器端程序
登录另一台Linux服务器:
ssh -l liu 192.167.150.139 登录服务器
exit 退出登录
Linux客户端安装vnc4,windows客户端安装putty,或者vnc for windows

秘钥免登陆:
ssh-keygen -t rsa 生成密钥对
ls /home/lyw/.ssh/  查看文件
id_rsa id_rsa.pub 私钥文件和公钥文件
复制公钥到远程主机
ssh 192.168.150.139 -l liu
mkdir .ssh
chmod 700 .ssh
exit
scp /home/lewis/.ssh/id_rsa.pub  liu@192.168.150.139:/home/liu/.ssh/authorized_key

定时任务cron
root用户可以在/etc/crontab文件中写入,表示系统级任务
0 17 * * * root  (tar czf  /media/disk/book.tar.gz  /media/station/document/book/*.doc)
分钟,0表示整点;小时,17表示下午5点;日期,*表示每一个月中的每一天;月份,*表示一年中的每一个月;以哪个用户的身份执行命令,这里是root;需要执行的命令,两端的括号可以省略。

crontab filename  将文件filename安装为用户的crontab文件(替换原来的版本
crontab -c 调用编辑器打开用户的crontab文件
crontab -l  列出crontab文件中的内容
crontab -r 删除用户自己的crontab文件
如果是root用户的话,可以带额外参数 -u username,指定用户,crontab -u mike mike_cron,  crontab -u john -r

at 命令,执行简单的一次性任务
at  16:00  02/01/2013
at> mplayer /usr/share/sounds/phone.wav
at> <EOT>     ##ctrl+D结束输入
以上命令播放音乐,不加日期则默认当天
at 17:00 -f ~/alarm   执行脚本,-f接受路径
atq 查看已经设置的任务
atrm 8 删除编号为8的任务

Linux的防火墙---IP Tables 《精通》420页

网络安全工具:
nmap -sT   db1.example.org  扫描主机,查看哪些端口开放,以及运行的服务
如果STATE一栏显示filtered,则为防火墙干扰,使用
sudo nmap -O -sV db1.example.org  可以进行探测,-O探测操作系统,-sV探测端口运行的软件,给出可能的结果
当服务器设置丢弃探测包时,可以使用
nmap -sT -PN 220.191.75.201  强制扫描-PN
nmap -sT -PN -p1-5000 172.16.25.129 指定扫描的端口1-5000号端口

检查口令是否安全,使用john the Ripper来尝试破解/etc/shadow
sudo john /etc/shadow 将结果输出到john.pot中
sudo cat john.pot 通知用户更改密码
访问控制/etc/host.allow和/etc/host.deny
在host.deny中加入ALL:ALL 禁止所有访问,在host.allow加入 sshd:10.171.1.0/24允许这个网络访问ssh服务

病毒:
特洛伊木马:伪装成正常程序的病毒。
rootkits: 掩盖入侵痕迹






  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值