linux基本知识

linux知识

软件包管理

  • dpkg -S file——这个文件属于哪个已安装软件包。
  • dpkg -L package——列出软件包中的所有文件。
  • aptitude update 更新可用的包列表
  • aptitude upgrade 升级可用的包
  • aptitude dist-upgrade 将系统升级到新的发行版
  • aptitude install pkgname 安装包
  • aptitude remove pkgname 删除包
  • aptitude purge pkgname 删除包及其配置文件
  • aptitude search string 搜索包
  • aptitude show pkgname 显示包的详细信息
  • aptitude clean 删除下载的包文件
  • aptitude autoclean 仅删除过期的包文件
  • sudo apt-get autoremove –purge -server-5.5 彻底删除一些软件
  • 是专门用于进程查询的grep。删除某进程

进程管理

pgrep firefox
1827
看到了什么?没错火狐的PID,接下来又要打字了:
kill -s 9 1827

  • grep -i “may” filename 返回包含"may"的所有行
    pgrep是专门用于进程查询的grep。

遇到的一些问题

  • $ ping 127.0.0.1测试本机tcp ip是否正常
  • sudo ufw status测试防火墙状态
  • 安装deb包sudo dpkg -i filename.deb
  • 在中文支持配置还不完整的Ubuntu 14.04中,使用gedit打开带有中文字符的文件有时会出现乱码的情况,这是由于gedit对字符编码匹配不正确导致的,解决方法如下:
    在终端中输入如下命令,然后重新打开gedit即可:

    gsettings set org.gnome.gedit.preferences.encodings auto-detected “[‘GB18030’, ‘GB2312’, ‘GBK’, ‘UTF-8’, ‘BIG5’, ‘CURRENT’, ‘UTF-16’]”
    gsettings set org.gnome.gedit.preferences.encodings shown-in-menu “[‘GB18030’, ‘GB2312’, ‘GBK’, ‘UTF-8’, ‘BIG5’, ‘CURRENT’, ‘UTF-16’]”

  • sudo pip install dotcloud

  • > lsof -i :6666(6666 netstat) then kill -9 pid
  • grep 查的内容 文件 //显示所查内容所在行
  • cloc 文件夹或文件 //查看代码行数
  • find -atime -2 //48h find -atime -2内修改过的文件
  • convmv -f GBK -t UTF-8 –notest -r */ –该文件夹下所有文件转码
  • unzip -O cp936 filename 解压zip文件,不会出现乱码
  • gnome-desktop-itme-edit ~/–create-new

端口占用问题

  • >Linux下查看端口占用进程号,程序名的方法,方便我们查找什么进程导致系统变慢等需要。
    linux下查看端口占用情况:
    查看哪个进程占用了819端口:
    case9-sghfofo:/usr/local/cnbj/tomcat-bj/bin # lsof -i:859
    运行后的结果:
    COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
    java 24907 root 31u IPv4 248905027 TCP *:859 (LISTEN)
    由以上我们知道了859端口被进程号为24907的进程占用了, 是个java进程。
  • >2.
    查看进程号为24907的进程在哪里:
    case9-sghfofo:/usr/local/cnbj/tomcat-bj/bin # ps -ef|grep 24907
    root 13421 29276 0 20:08 pts/2 00:00:00 grep 24907
    root 24907 1 0 11:43 pts/4 00:03:53 /usr/java/jdk1.6.0_13/bin/java -server -XX:PermSize=256M -XX:MaxPermSize=512m -Xbootclasspath/p:java-net-Socket.jar -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file=/usr/local/cnsh/tomcat-sh/conf/logging.properties -Djava.endorsed.dirs=/usr/local/cnsh/tomcat-sh/bin/endorsed -classpath :/usr/local/cnsh/tomcat-sh/bin/bootstrap.jar -Dcatalina.base=/usr/local/cnsh/tomcat-sh/bin -Dcatalina.home=/usr/local/cnsh/tomcat-sh/bin -Djava.io.tmpdir=/usr/local/cnsh/tomcat-sh/bin/temp -Xmx512m -Xms256m org.apache.catalina.startup.Bootstrap start
    由以上我们知道是目录为/usr/local/cnsh/tomcat-sh/bin/的tomcat占用了。

开机

  • halt:机器关闭命令,远程非常危险
  • init:改变系统运行层级
  • init 0 关机
  • init 1单人模式(网络中断)
  • init 6重启

linux网络

  • ping 127.0.0.1 检查tcp/ip协议栈和网卡是否好用
  • 1.安装sudo apt-get install ufw
    2.启用sudo ufw enable sudo ufw default deny运行以上两条命令后,开启了防火墙,并在系统启动时自动开启。关闭所有外部对本机的访问,但本机访问外部正常。
    3.开启/禁用sudo ufw allow|deny [service]打开或关闭某个端口,例如:sudo ufw allow smtp 允许所有的外部IP访问本机的25/tcp (smtp)端口sudo ufw allow 22/tcp 允许所有的外部IP访问本机的22/tcp (ssh)端口sudo ufw allow 53 允许外部访问53端口(tcp/udp)sudo ufw allow from 192.168.1.100 允许此IP访问所有的本机端口sudo ufw allow proto udp 192.168.0.1 port 53 to 192.168.0.2 port 53 sudo ufw deny smtp 禁止外部访问smtp服务sudo ufw delete allow smtp 删除上面建立的某条规则
    4.查看防火墙状态sudo ufw status

你可能感兴趣的:(linux)