當前位置:首頁 » 操作系統 » linux38

linux38

發布時間: 2022-05-04 06:21:51

『壹』 linux基本命令

Linux 對我們的生活產生了巨大的沖擊。至少你的安卓手機使用的就是 Linux 核心。盡管如此,在第一次開始使用 Linux 時你還是會感到難以下手。因為在 Linux 中,通常需要使用終端命令來取代 Windows 系統中的點擊啟動圖標操作。但是不必擔心,這里我們會介紹 10 個 Linux 基本命令來幫助你開啟 Linux 神秘之旅。

幫助新手走出第一步的 10 個 Linux 基本命令

當我們談論 Linux 命令時,實質上是在談論 Linux 系統本身。這短短的 10 個 Linux 基本命令不會讓你變成天才或者 Linux 專家,但是能幫助你輕松開始 Linux 之旅。使用這些基本命令會幫助新手們完成 Linux 的日常任務,由於它們的使用頻率如此至高,所以我更樂意稱他們為 Linux 命令之王!

讓我們開始學習這 10 條 Linux 基本命令吧。

1. sudo

這條命令的意思是「以超級用戶的身份執行」,是 SuperUserDo 的簡寫,它是新手將要用到的最重要的一條 Linux 命令。當一條單行命令需要 root 許可權的時候,sudo命令就派上用場了。你可以在每一條需要 root 許可權的命令前都加上sudo。

$ sudo su
2. ls

跟其他人一樣,你肯定也經常想看看目錄下都有些什麼東西。使用列表命令,終端會把當前工作目錄下所有的文件以及文件夾展示給你。比如說,我當前處在 /home 文件夾中,我想看看 /home 文件夾中都有哪些文件和目錄。

/home$ ls
在 /home 中執行ls命令將會返回類似下面的內容:

imad lost+found
3. cd

變更目錄命令(cd)是終端中總會被用到的主要命令。它是最常用到的 Linux 基本命令之一。此命令使用非常簡單,當你打算從當前目錄跳轉至某個文件夾時,只需要將文件夾鍵入此命令之後即可。如果你想跳轉至上層目錄,只需要在此命令之後鍵入兩個點 (..) 就可以了。 舉個例子,我現在處在 /home 目錄中,我想移動到 /home 目錄中的 usr 文件夾下,可以通過以下命令來完成操作。

/home $ cd usr
/home/usr $
4. mkdir

只是可以切換目錄還是不夠完美。有時候你會想要新建一個文件夾或子文件夾。此時可以使用 mkdir 命令來完成操作。使用方法很簡單,只需要把新的文件夾名跟在 mkdir 命令之後就好了。

~$ mkdir folderName
5. cp

拷貝-粘貼-and-paste是我們組織文件需要用到的重要命令。使用 cp命令可以幫助你在終端當中完成拷貝-粘貼操作。首先確定你想要拷貝的文件,然後鍵入打算粘貼此文件的目標位置。

$ cp src des
注意:如果目標目錄對新建文件需要 root 許可權時,你可以使用 sudo命令來完成文件拷貝操作。

6. rm

rm 命令可以幫助你移除文件甚至目錄。如果不希望每刪除一個文件都提示確認一次,可以用-f參數來強制執行。也可以使用-r參數來遞歸的移除文件夾。

$ rm myfile.txt
7. apt-get

這個命令會依據發行版的不同而有所區別。在基於 Debian 的發行版中,我們擁有 Advanced Packaging Tool(APT)包管理工具來安裝、移除和升級包。apt-get 命令會幫助你安裝需要在 Linux 系統中運行的軟體。它是一個功能強大的命令行,可以用來幫助你對軟體執行安裝、升級和移除操作。

在其他發行版中,例如 Fedora、Centos,都各自不同的包管理工具。Fedora 之前使用的是 yum,不過現在 dnf 成了它默認的包管理工具。

$ sudo apt-get update
$ sudo dnf update
8. grep

當你需要查找一個文件,但是又忘記了它具體的位置和路徑時,grep命令會幫助你解決這個難題。你可以提供文件的關鍵字,使用grep命令來查找到它。

$ grep user /etc/passwd
9. cat

作為一個用戶,你應該會經常需要瀏覽腳本內的文本或者代碼。cat命令是 Linux 系統的基本命令之一,它的用途就是將文件的內容展示給你。

$ cat CMakeLists.txt
10. poweroff

最後一個命令是 poweroff。有時你需要直接在終端中執行關機操作。此命令可以完成這個任務。由於關機操作需要 root 許可權,所以別忘了在此命令之前添加sudo。

$ sudo poweroff
總結

如我在文章開始所言,這 10 條命令並不會讓你立即成為一個 Linux 大拿,但它們會讓你在初期快速上手 Linux。以這些命令為基礎,給自己設置一個目標,每天學習一到三條命令,這就是此文的目的所在。

『貳』 linux有哪些基本命令 5個基本linux命令

1、顯示日期的指令: date
2、顯示日歷的指令:cal
3、簡單好用的計算器:bc
怎麼10/100會變成0呢?這是因為bc預設僅輸出整數,如果要輸出小數點下位數,那麼就必須要執行 scale=number ,那個number就是小數點位數,例如:
4、重要的幾個熱鍵[Tab],[ctrl]-c, [ctrl]-d
[Tab]按鍵---具有『命令補全』不『檔案補齊』的功能
[Ctrl]-c按鍵---讓當前的程序『停掉』
[Ctrl]-d按鍵---通常代表著:『鍵盤輸入結束(End Of File, EOF 戒 End OfInput)』的意思;另外,他也可以用來取代exit
5、man
退出用q,
man -f man
6、數據同步寫入磁碟: sync
輸入sync,那舉在內存中尚未被更新的數據,就會被寫入硬碟中;所以,這個挃令在系統關機戒重新啟勱乀前, 徑重要喔!最好多執行幾次!
7、慣用的關機指令:shutdown
此外,需要注意的是,時間參數請務必加入指令中,否則shutdown會自動跳到 run-level 1 (就是單人維護的登入情況),這樣就傷腦筋了!底下提供幾個時間參數的例子吧:
重啟,關機: reboot, halt,poweroff
8、切換執行等級: init
Linux共有七種執行等級:
--run level 0 :關機
--run level 3 :純文本模式
--run level 5 :含有圖形介面模式
--run level 6 :重新啟動

使用init這個指令來切換各模式:
如果你想要關機的話,除了上述的shutdown -h now以及poweroff之外,你也可以使用如下的指令來關機:
9、改變文件的所屬群組:chgrp
10、改變文件擁有者:chown
他還可以頇便直接修改群組的名稱
11、改變文件的許可權:chmod

許可權的設定方法有兩種, 分別可以使用數字或者是符號來進行許可權的變更。
--數字類型改變檔案許可權:

--符號類型改變檔案許可權:
12、查看版本信息等
13、變換目錄:cd
14、顯示當前所在目錄:pwd
15、建立新目錄:mkdir

不建議常用-p這個選項,因為擔心如果你打錯字,那麼目錄名稱就回變得亂七八糟的

16、刪除『空』的目錄:rmdir
17、檔案與目錄的顯示:ls
18、復制檔案或目錄:cp
19、移除檔案或目錄:rm
20、移動檔案與目錄,或更名:mv
21、取得路徑的文件名與目錄名:basename,dirname
22、由第一行開始顯示檔案內容:cat
23、從最後一行開始顯示:tac(可以看出 tac 是 cat 的倒著寫)
24、顯示的時候,順道輸出行號:nl
25、一頁一頁的顯示檔案內容:more
26、與 more 類似,但是比 more 更好的是,他可以往前翻頁:less
27、只看頭幾行:head
28、只看尾幾行:tail
29、以二進制的放置讀取檔案內容:od
30、修改檔案時間或新建檔案:touch
31、檔案預設許可權:umask
32、配置文件檔案隱藏屬性:chattr
33、顯示檔案隱藏屬性:lsattr
34、觀察文件類型:file
35、尋找【執行擋】:which
36、尋找特定檔案:whereis
37、尋找特定檔案:locate
38、尋找特定檔案:find
39、壓縮文件和讀取壓縮文件:gzip,zcat
40、壓縮文件和讀取壓縮文件:bzip2,bzcat
41、壓縮文件和讀取壓縮文件:tar

ps:IP.GZIP.TAR有啥區別?那個壓縮的程度大?
tar是打包,不是壓縮,只是把一堆文件打成一個文件而已GZIP用在HTTP協議上是一種用來改進WEB應用程序性能的技術,將網頁內容壓縮後再傳輸。
zip就不用說了,主流的壓縮格式。
zip最新的壓縮演算法還是很好的,建議還是用zip格式化,全平台通用。
tar沒有怎樣壓縮,壓縮率100%,主要是永遠打包,
zip壓縮率看文件類型,jpg就沒怎麼壓縮率,但bmp很高
gzip一般比zip高

復制代碼
zip
zip -r myfile.zip ./*
將當前目錄下的所有文件和文件夾全部壓縮成myfile.zip文件,-r表示遞歸壓縮子目錄下所有文件.
unzip
unzip -o -d /home/sunny myfile.zip
把myfile.zip文件解壓到 /home/sunny/
-o:不提示的情況下覆蓋文件;
-d:-d /home/sunny 指明將文件解壓縮到/home/sunny目錄下
zip 命令:
# zip test.zip test.txt
它會將 test.txt 文件壓縮為 test.zip ,當然也可以指定壓縮包的目錄,例如 /root/test.zip
# unzip test.zip
它會默認將文件解壓到當前目錄,如果要解壓到指定目錄,可以加上 -d 選項
# unzip test.zip -d /root/

『叄』 我在linux下使用指令tar –zxvf linux-2.6.38.tar.gz卻說沒有目標文件。

是cd /usr/trc,不是cd/usr/trc 命令與參數間是有空格的
至於前面那個可以加-,只是你確定你是在有linux-2.6.38.tar.gz這個tar包的目錄下解壓的嗎?如果不是的話,你得加絕對路徑:比如 tar -zxvf /xxx/xxx/linux-2.6.38.tar.gz,前面的/xxx/xxx就是你這個tar包所在的路徑

『肆』 linux常用命令有哪些

Linux常用命令大全100條:
1,echo 「aa」 》 test.txt 和 echo 「bb」 》》 test.txt
//》將原文件清空,並且內容寫入到文件中,》》將內容放到文件的尾部
2,chmod go+w -R /home/zhangy //給組用戶和其他用戶添加寫的許可權
3,tar -tzvf test.tar.gz //列出歸檔內容
4, -ah //查看文件列表大小
5, -sh //查看所有文件的大小總和
6,echo 『1+2』|bc -l //數學運算
7,uname -a //查看linux內核等的一些信息
8,badblocks -s /dev/sda //壞道掃描時顯示進度
9,time command //查看命令的運行時間
10,ls -lrt //按時間的倒序排序
11,rsync -P //同步時顯示進度
12.history -c //清楚歷史命令
13,cd - //返回上次目錄
14,tree //顯示目錄樹
15,umount -n /mnt/hda2 //強制卸載
16,echo ~/ //顯示用戶的home目錄
17,echo $[5*5] //算術運算
18,echo $((5*5)) //算術運算
19,eval ls;ps aux|grep httpd //這二個命令都能執行
20,free -m //有MB為單位顯示內存
21,uptime
//顯示系統已經運行了多長時間,它依次顯示下列信息:現在時間、系統已經運行了多長時間、目前有多少登陸用戶、系統在過去的1分鍾、5分鍾和15分鍾內的平均負載
22,加法運算
[root@krlcgcms01 mytest]# let a=34+3;
[root@krlcgcms01 mytest]# echo $a;
23,export //查看所有環境變數
24,echo $PATH //查看單個變數
25,cmp file1 file2 //文件內容比對
26,clear //清屏
27,echo 23423 |awk --re-interval 『/[0-9]{3,}/』 //如果不加re-interval的話,不顯示
28,cal //得到一個整齊的日歷格式
29,wc -l //統計行數,wc -w 統計單詞
30,echo 「AaDCbd23」 |tr 「[A-Z]」 「[a-z]」 大寫變小寫,echo 「AaDCbdc23」 |tr -c b-d =
將b-d之外的字元串替換成=
31,echo 「ADSF」 | iconv -f UTF8 -t GBK //把字元由utf8轉成gbk
-f是from和簡寫,-t好像terminal的簡寫
32,cat -n file //內容的前面會顯示行號
33,chattr +i file //只讀,root用戶也沒法對其進行修改
34,lsattr file //查看文件屬性
35,cat /etc/passwd |awk -F: 『{print $1}』 //查看系統中所有用戶
36,cat /etc/group //查看系統中所有的組
37,groups //查前當前用戶所在的,所有組
38,usermod -g 組名 用戶 //這種方式是覆蓋的方式,用的時候要小心,如果用戶A性於mysql usermod -g php
mysql這樣的話只屬於php了
39,usermod -G 組名 用戶 //這種方式是增加的方式,如果用戶A性於mysql usermod -g php
mysql這樣的話,mysql就屬於2個組了
40,bc //進入數學計算中去
41,umask 003 u許可權是7,g許可權是7,其他用戶是4,也就是774,777-003=774
42,mkfs -t vfat /dev/hda6 //將移動硬碟裡面的一個分區格式化成vfat格式
43,mount /dev/cdrom /media/cdrom //掛載cdrom
44,getent group 532 //通過組ID,來查找組信息
45,last //登錄成功用戶記錄
46,lastb //登錄不成功用戶記錄
47,mp -S /dev/sda2 //查看一下要備份/dev/sda2所要的容量
48,mp -0j -f /dev/hda2/sda2_bak.mp.bz2 /dev/sda2 //將sda2進行備份並壓縮
49,restore -t -f /dev/hda2/sda2_bak.mp //查看備份信息
50,restore -r -f /dev/hda2/sda2_bak.mp //還原備份
51,fc-list //查看系統中安裝的字體
52,find 。/ -type f -exec grep -q 「root」 {} ; -exec echo {} ;
//查找目錄下文件所包涵的字元串
53,vmstat 5 //每5顯示一下次系統信息,cpu,memory,i/o等
54,top 後 在shift + P 所佔進程的排序顯示
55,top 後 在shift + M 所佔內存的排序顯示
56,iptraf -g //查看各個介面的流量
57,ostat -d -x /dev/sda2 2 //用iostat查看磁碟/dev/sda2的磁碟i/o情況,每兩秒刷新一次
58, paste -sd 『|||n』 test //文件的每4行轉換成1行,並用|隔開
59,lsof -i :22 //知道22埠現在運行什麼程序
60,lsof -c abc //顯示abc進程現在打開的文件
61,lsof -p 12 //看進程號為12的進程打開了哪些文件
63,route //查看路由信息
64,ifup //開啟網卡
65,ifdown //關閉網卡
66,route del -net 172.168.0.0 netmask 255.255.0.0 dev eth0 //刪除
172.168這個網段
67,route add -net 172.168.10.0 netmask 255.255.255.0 dev eth0 //增加一個路由
68,netstat -tunl //列出監聽的網路服務埠
69,netstat -tun //列出已連接的網路服務埠
70,nmap -sP 172.30.4.0/24 //在這個網段內有多少用戶在我的主機上操作,一個不錯的安全檢查工具
71,vgdisplay //查看系統中的可用空間
72,lvextend -L+20G /dev/tank/part1 //向part1這個分區增加20G的空間
73,lvresize -L-10G /dev/tank/part2 //向part2這個分區減少10G的空間
74,pvdisplay //查看磁碟信息
75,mplayer -loop 10 /mnt/song/music/花兒開了.mp3 //循環播放10遍
76,pacman -S firefox -nd //nd去掉依賴
77,wget -c //斷點下載
78,chroot /mnt/ubuntu //改變根目錄到/mnt/ubuntu
79,ctrl+a //命令行下,游標稱動到開頭
80,ctrl+e //命令行下,游標移動結尾
81,cut -d: -f 1-4 test //用:分割文件,取分割後的1-4列
82,file /home/zhangy/test.php //用於查看文件的一些基本信息
83,touch test.txt //創建一個空文件 text.txt
84,htpasswd -cbd /usr/local/nginx/conf/authfile //創建訪問控制文件
85,df //查看磁碟空間,和當前的磁碟數
86,fdisk -l //查看所有磁碟數
87,alsamixer //進入後,m鍵可以實現靜音
88,killall httpd //把所有httpd進程殺掉
89,killall -9 mysqld_safe //有些進程超級用戶也停止不了,-9是強制刪除
90,mirror /mysql //下載mysql目錄
91,mirror -R /mysql //上傳mysql目錄
92,rmmod pcspkr //關掉tab提示音
93,modprobe pcspkr //開啟tab提示音
94,gpasswd -a zhangy wheel //將zhangy這個用戶添加到wheel這個組
95,dd if=/dev/zero of=/virtual/ubuntu.virt.img bs=1M count=4096
//創建一個4G的IMG鏡像
96,lspic //顯示pci設備
97,lsusb //顯示usb設備
98,history | less //less根more有點像,感覺less用著更舒服點
99,ln -s //如果忘了-s就變成硬鏈接了
100,tar zxvf test.tar.gz -C /home/zhangy //將內容解壓到指定目錄

『伍』 linux 使用方法

樓主如果不專門學習一下Linux是不會懂的,英語也要過三級才能基本操作。 LINUX使用方法!!! linux目錄架構
/ 根目錄
/bin 常用的命令 binary file 的目錄
/boot 存放系統啟動時必須讀取的檔案,包括核心 (kernel) 在內
/boot/grub/menu.lst GRUB設置
/boot/vmlinuz 內核
/boot/initrd 核心解壓縮所需 RAM Disk
/dev 系統周邊設備
/etc 系統相關設定文件
/etc/DIR_COLORS 設定顏色
/etc/HOSTNAME 設定用戶的節點名
/etc/NETWORKING 只有YES標明網路存在
/etc/host.conf 文件說明用戶的系統如何查詢節點名
/etc/hosts 設定用戶自已的IP與名字的對應表
/etc/hosts.allow 設置允許使用inetd的機器使用
/etc/hosts.deny 設置不允許使用inetd的機器使用
/etc/hosts.equiv 設置遠端機不用密碼
/etc/inetd.conf 設定系統網路守護進程inetd的配置
/etc/gateways 設定路由器
/etc/protocols 設定系統支持的協議
/etc/named.boot 設定本機為名字伺服器的配置文件
/etc/sysconfig/network-scripts/ifcfg-eth0 設置IP
/etc/resolv.conf 設置DNS
/etc/X11 X Window的配置文件,xorg.conf 或 XF86Config 這兩個 X Server 的設定檔
/etc/fstab 記錄開機要mount的文件系統
/etc/inittab 設定系統啟動時init進程將把系統設置成什麼樣的runlevel
/etc/issue 記錄用戶登錄前顯示的信息
/etc/group 設定用戶的組名與相關信息
/etc/passwd 帳號信息
/etc/shadow 密碼信息
/etc/sudoers 可以sudo命令的配置文件
/etc/securetty 設定哪些終端可以讓root登錄
/etc/login.defs 所有用戶登錄時的預設配置
/etc/exports 設定NFS系統用的
/etc/init.d/ 所有服務的預設啟動 script 都是放在這里的,例如要啟動或者關閉
/etc/xinetd.d/ 這就是所謂的 super daemon 管理的各項服務的設定檔目錄
/etc/modprobe.conf 內核模塊額外參數設定
/etc/syslog.conf 日誌設置文件
/home 使用者家目錄
/lib 系統會使用到的函數庫
/lib/moles kernel 的相關模塊
/var/lib/rpm rpm套件安裝處
/lost+found 系統不正常產生錯誤時,會將一些遺失的片段放置於此目錄下
/mnt 外設的掛載點
/media 與/mnt類似
/opt 主機額外安裝的軟體
/proc 虛擬目錄,是內存的映射
/proc/version 內核版本
/proc/sys/kernel 系統內核功能
/root 系統管理員的家目錄
/sbin 系統管理員才能執行的指令
/srv 一些服務啟動之後,這些服務所需要取用的資料目錄
/tmp 一般使用者或者是正在執行的程序暫時放置檔案的地方
/usr 最大的目錄,存許應用程序和文件
/usr/X11R6: X-Window目錄
/usr/src: Linux源代碼
/usr/include:系統頭文件
/usr/openwin 存放SUN的OpenWin
/usr/man 在線使用手冊
/usr/bin 使用者可執行的 binary file 的目錄
/usr/local/bin 使用者可執行的 binary file 的目錄
/usr/lib 系統會使用到的函數庫
/usr/local/lib 系統會使用到的函數庫
/usr/sbin 系統管理員才能執行的指令
/usr/local/sbin 系統管理員才能執行的指令
/var 日誌文件
/var/log/secure 記錄登入系統存取資料的檔案,例如 pop3, ssh, telnet, ftp 等都會記錄在此檔案中
/var/log/wtmp 記錄登入者的訊息資料, last
/var/log/messages 幾乎系統發生的錯誤訊息
/var/log/boot.log 記錄開機或者是一些服務啟動的時候,所顯示的啟動或關閉訊息
/var/log/maillog 紀錄郵件存取或往來( sendmail 與 pop3 )的使用者記錄
/var/log/cron 記錄 crontab 這個例行性服務的內容
/var/log/httpd, /var/log/news, /var/log/mysqld.log, /var/log/samba, /var/log/procmail.log:
分別是幾個不同的網路服務的記錄檔

一些常用的基本命令:
uname -a 查看內核版本
ls -al 顯示所有文件的屬性
pwd 顯示當前路徑
cd - 返回上一次目錄 cd ~ 返回主目錄
date s 設置時間、日期
cal 顯示日歷 cal 2006
bc 計算器具
man & info 幫助手冊
locale 顯示當前字體 locale -a 所有可用字體 /etc/sysconfig/i18n設置文件
LANG=en 使用英文字體
sync 將數據同步寫入硬碟
shutdonw -h now & half & poweroff 關機
reboot 重啟
startx & init 5 進入圖形介面
/work & ?work 向上、下查找文檔內容
chgrp 改變檔案群組 chgrp testing install.log
chown 改變所屬人 chown root:root install.log
chmod 改變屬性 chmod 777 install.log read=4 write=2 execute=1
cp 復制 cp filename
rm 刪除文件 rm -rf filename 強制刪除文件
rmdir 刪除文件夾
mv 移動 mv 123.txt 222.txt 重命名
mkdir 創建文件夾
touch 創建文件 更新當前時間
cat 由第一行開始顯示 cat |more 分頁
nl 在內容前加行號
more & less 一面一面翻動
head -n filename 顯示第N行內容
tail -n filename 顯示後N行內容
od 顯示非純文檔
df -h 顯示分區空間
顯示目錄或文件的大小
fdisk 分區設置 fdisk -l /dev/hda 顯示硬碟分區狀態
mkfs 建立各種文件系統 mkfs -t ext3 /dev/ram15
fsck 檢查和修復LINUX檔案
ln 硬鏈接 ln -s 軟體鏈接
whereis 查找命令
locate 查找
find 查找 find / -name "***.***"
which 查看工具
whoami 顯示當前用戶
gcc -v 查看GCC版本
chattr +i filename 禁止刪除 chattr -i filename 取消禁止
lsattr 顯示隱藏檔屬性
updatedb 更新資料庫
mke2fs 格式化 mkfs -t ext3
dd if=/etc/passwd of=/tmp/passwd.bak 備份
mount 列出系統所有的分區
mount -t iso9660 /dev/cdrom /mnt/cdrom 掛載光碟
mount -t vfat /dev/fd0 /mnt/floppy 掛載軟盤
mount -t vfat -o iocharset=utf8,umask=000 /dev/hda2 /mnt/hda2 掛載fat32分區
mount -t ntfs -o nls=utf8,umask=000 /dev/hda3 /mnt/hda3 掛載ntfs分區
Linux-NTFS Project: http://linux-ntfs.sourceforge.net/
umount /mnt/hda3 缷載
ifconfig 顯示或設置網路設備
service network restart 重啟網卡
ifdown eth0 關閉網卡
ifup eth0 開啟網卡
clear 清屏
history 歷史記錄 !55 執行第55個指令
stty 設置終端 stty -a
fdisk /mbr 刪除GRUB
at 僅進行一次的工作排程
crontab 循環執行的例行性命令 [e]編輯,[l]顯示,[r]刪除任務
& 後台運行程序 tar -zxvf 123.tar.gz & --------->後台運行
jobs 觀看後台暫停的程序 jobs -l
fg 將後台程序調到前台 fg n ------>n是數字,可以指定進行那個程序
bg 讓工作在後台運行
kill 結束進程 kill -9 PID [9]強制結束,[15]正常結束,[l]列出可用的kill信號
ps aux 查看後台程序
top 查看後台程序 top -d 2 每兩秒更新一次 top -d 2 -p10604 觀看某個PID
top -b -n 2 > /tmp/top.txt ----->將 top 的資訊進行 2 次,然後將結果輸出到 /tmp/top.txt
pstree 以樹狀圖顯示程序 [A]以 ASCII 來連接, 列出PID, [p]列出帳號
killall 要刪除某個服務 killall -9 httpd
free 顯示內存狀態 free -m -------->以M為單位顯示
uptime 顯示目前系統開機時間
netstat 顯示網路狀態 netstat -tulnp------>找出目前系統上已在監聽的網路連線及其 PID
dmesg 顯示開機信息 demsg | more
nice 設置優先權 nice -n -5 vi & ----->用 root 給一個 nice 植為 -5 ,用於執行 vi
renice 調整已存在優先權
runlevel 顯示目前的runlevel
depmod 分析可載入模塊的相依性
lsmod 顯示已載入系統的模塊
modinfo 顯示kernel模塊的信息
insmod 載入模塊
modprobe 自動處理可載入模塊
rmmod 刪除模塊
chkconfig 檢查,設置系統的各種服務 chkconfig --list ----->列出各項服務狀態
ntsysv 設置系統的各種服務
cpio 備份文件

壓縮命令:
*.Z compress 程式壓縮的檔案;
*.bz2 bzip2 程式壓縮的檔案;
*.gz gzip 程式壓縮的檔案;
*.tar tar 程式打包的資料,並沒有壓縮過;
*.tar.gz tar 程式打包的檔案,其中並且經過 gzip 的壓縮
compress filename 壓縮文件 加[-d]解壓 uncompress
gzip filename 壓縮 加[-d]解壓 zcat 123.gz 查看壓縮文件內容
bzip2 -z filename 壓縮 加[-d]解壓 bzcat filename.bz2 查看壓縮文件內容
tar -cvf /home/123.tar /etc 打包,不壓縮
tar -xvf 123.tar 解開包
tar -zxvf /home/123.tar.gz 以gzip解壓
tar -jxvf /home/123.tar.bz2 以bzip2解壓
tar -ztvf /tmp/etc.tar.gz 查看tar內容
cpio -covB > [file|device] 份份
cpio -icv < [file|device] 還原</U>

『陸』 如何將linux2.6.38內核移植到TQ2440

移植步驟:
1.修改根目錄的Makefile中的ARCH=arm,CROSS-COMPILE=arm-linux-
2.在arch/arm/mach-s3c2440/mach-smdk2440.c中,將163行的s3c24xx_init_clocks(16934400)改為s3c24xx_init_clocks(12000000)。
3.修改arch/arm/tools/mach-types中379行的362改為168,因為uboot中定義的機器碼是168.
4.修改arch/arm/boot/中的Makefile文件,在58行添加@cp -f arch/arm/boot/zImage zImage.bin,實現把生成的zImage文件復制到內核源碼根目錄下。
5.在根目錄的Makefile的1164行添加rm -f zImage.bin,使得在執行make distclean在清除產生的文件的同時,把內核根目錄下的zImage也清除。
6.修改arch/arm/plat-s3c24xx/common-smdk.c中111行的static struct mtd_partition smdk_default_nand_part[]的nandflash分區為:
[0] = {
.name = "Andy_uboot",
.offset = 0x00000000,
.size = 0x00040000,
},
[1] = {
.name = "Andy_kernel",
.offset = 0x00200000,
.size = 0x00200000,
},
[2] = {
.name = "Andy_yaffs2",
.offset = 0x00400000,
.size = 0x0FB80000,
}
7.修改drivers/mtd/nand/s3c2410.c中的839行為chip->ecc.mode=NAND_ECC_NONE;
8.修改arch/arm/mach-s3c2440/mach-smdk2440.c中100行為.ulcon = 0x03。
9.在drivers/serial/samsung.c的51行添加
#include
#include
在433行添加:
if (port->line == 2) {
s3c2410_gpio_cfgpin(S3C2410_GPH(6), S3C2410_GPH6_TXD2);
s3c2410_gpio_pullup(S3C2410_GPH(6), 1);
s3c2410_gpio_cfgpin(S3C2410_GPH(7), S3C2410_GPH7_RXD2);
s3c2410_gpio_pullup(S3C2410_GPH(7), 1);
}
10.用git工具下載最新的yaffs2源代碼。
具體為在終端輸入git clone git://www.aleph1.co.uk/yaffs2下載最新的yaffs2,下
載完成給內核打補丁,進入yaffs目錄,執行
./patch-kernel.sh c m opt/Andy/linux-2.6.38(以自己的內核目錄為准),其中的c代表復制,m代表復合類型。
11.用make menuconfig配置linux內核。
12.執行make zImage,將生成的zImage.bin下載到TQ2440。
13.製作文件系統。
解壓busybox-1.18.4.tar.bz2,修改busybox-1.18.4中的Makefile,在164行和190行分別修改為CROSS-COMPILE=arm-linux-和ARCH=arm。執行make,然後在執行make install。將生成_install復制到根目錄,添加文件系統文件,用天嵌提供的mkyaffs2image生成root.bin的可執行文件,下載到開發板。
14.啟動開發板,列印信息如下:
Start Linux ...
Copy linux kernel from 0x00200000 to 0x30008000, size = 0x00200000 ... Copy Kernel to SDRAM done,NOW, Booting Linux......
Uncompressing Linux... done, booting the kernel.
Linux version 2.6.38-Andy (root@Andy) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-176) ) #15 Fri Apr 8 20:21:42 CST 2011
CPU: ARM920T [41129200] revision 0 (ARMv4T), cr=c0007177
CPU: VIVT data cache, VIVT instruction cache
Machine: Andy's TQ2440 development board!
ATAG_INITRD is deprecated; please update your bootloader.
Memory policy: ECC disabled, Data cache writeback
CPU S3C2440A (id 0x32440001)
S3C24XX Clocks, Copyright 2004 Simtec Electronics
S3C244X: core 400.000 MHz, memory 100.000 MHz, peripheral 50.000 MHz
CLOCK: Slow mode (1.500 MHz), fast, MPLL on, UPLL on
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 16256
Kernel command line: noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySAC0
PID hash table entries: 256 (order: -2, 1024 bytes)
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 64MB = 64MB total
Memory: 60896k/60896k available, 4640k reserved, 0K highmem
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
DMA : 0xffc00000 - 0xffe00000 ( 2 MB)
vmalloc : 0xc4800000 - 0xf6000000 ( 792 MB)
lowmem : 0xc0000000 - 0xc4000000 ( 64 MB)
moles : 0xbf000000 - 0xc0000000 ( 16 MB)
.init : 0xc0008000 - 0xc0025000 ( 116 kB)
.text : 0xc0025000 - 0xc0399000 (3536 kB)
.data : 0xc039a000 - 0xc03bac40 ( 132 kB)
SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
NR_IRQS:85
irq: clearing pending ext status 00080000
irq: clearing subpending status 00000003
irq: clearing subpending status 00000002
Console: colour mmy device 80x30
console [ttySAC0] enabled
Calibrating delay loop... 199.47 BogoMIPS (lpj=498688)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
gpiochip_add: gpios 288..303 (GPIOK) failed to register
gpiochip_add: gpios 320..334 (GPIOL) failed to register
gpiochip_add: gpios 352..353 (GPIOM) failed to register
NET: Registered protocol family 16
S3C2440: Initialising architecture
S3C2440: IRQ Support
S3C24XX DMA Driver, Copyright 2003-2006 Simtec Electronics
DMA channel 0 at c4808000, irq 33
DMA channel 1 at c4808040, irq 34
DMA channel 2 at c4808080, irq 35
DMA channel 3 at c48080c0, irq 36
S3C244X: Clock Support, DVS off
bio: create slab at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
s3c-i2c s3c2440-i2c: slave address 0x10
s3c-i2c s3c2440-i2c: bus frequency set to 97 KHz
s3c-i2c s3c2440-i2c: i2c-0: S3C I2C adapter
Advanced Linux Sound Architecture Driver Version 1.0.23.
cfg80211: Calling CRDA to update world regulatory domain
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
RPC: Registered udp transport mole.
RPC: Registered tcp transport mole.
RPC: Registered tcp NFSv4.1 backchannel transport mole.
msgmni has been set to 118
io scheler noop registered (default)
s3c2440-uart.0: ttySAC0 at MMIO 0x50000000 (irq = 70) is a S3C2440
s3c2440-uart.1: ttySAC1 at MMIO 0x50004000 (irq = 73) is a S3C2440
s3c2440-uart.2: ttySAC2 at MMIO 0x50008000 (irq = 76) is a S3C2440
loop: mole loaded
S3C24XX NAND Driver, (c) 2004 Simtec Electronics
s3c24xx-nand s3c2440-nand: Tacls=2, 20ns Twrph0=6 60ns, Twrph1=2 20ns
s3c24xx-nand s3c2440-nand: NAND ECC disabled
NAND device: Manufacturer ID: 0xec, Chip ID: 0xda (Samsung NAND 256MiB 3,3V 8-bit)
NAND_ECC_NONE selected by board driver. This is not recommended !!
Scanning device for bad blocks
Bad eraseblock 62 at 0x0000007c0000
Bad eraseblock 1435 at 0x00000b360000
cmdlinepart partition parsing not available
Creating 3 MTD partitions on "NAND":
0x000000000000-0x000000040000 : "Andy_uboot"
0x000000200000-0x000000400000 : "Andy_kernel"
0x000000400000-0x00000ff80000 : "Andy_yaffs2"
dm9000 Ethernet Driver, V1.31
Now use the default MAC address: 10:23:45:67:89:ab
eth0: dm9000e at c4810000,c4814004 IRQ 51 MAC: 10:23:45:67:89:ab (EmbedSky)
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
s3c2410-ohci s3c2410-ohci: S3C24XX OHCI
s3c2410-ohci s3c2410-ohci: new USB bus registered, assigned bus number 1
s3c2410-ohci s3c2410-ohci: irq 42, io mem 0x49000000
usb usb1: New USB device found, idVendor=1d6b, idProct=0001
usb usb1: New USB device strings: Mfr=3, Proct=2, SerialNumber=1
usb usb1: Proct: S3C24XX OHCI
usb usb1: Manufacturer: Linux 2.6.38-Andy ohci_hcd
usb usb1: SerialNumber: s3c24xx
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usbcore: registered new interface driver usbserial
usbserial: USB Serial Driver core
USB Serial support registered for pl2303
usbcore: registered new interface driver pl2303
pl2303: Prolific PL2303 USB to serial adaptor driver
s3c2410_udc: debugfs dir creation failed -19
mousedev: PS/2 mouse device common for all mice
S3C24XX RTC, (c) 2004,2006 Simtec Electronics
s3c-rtc s3c2410-rtc: rtc disabled, re-enabling
s3c-rtc s3c2410-rtc: rtc core: registered s3c as rtc0
i2c /dev entries driver
S3C2410 Watchdog Timer, (c) 2004 Simtec Electronics
s3c2410-wdt s3c2410-wdt: watchdog inactive, reset disabled, irq enabled
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
ALSA device list:
No soundcards found.
TCP cubic registered
lib80211: common routines for IEEE802.11 drivers
s3c-rtc s3c2410-rtc: setting system clock to 2000-01-02 00:47:19 UTC (946774039)
yaffs: dev is 32505858 name is "mtdblock2" rw
yaffs: passed flags ""
VFS: Mounted root (yaffs filesystem) on device 31:2.
Freeing init memory: 116K
Please press Enter to activate this console.
移植過程中產生的問題及其解決方法將在下一節說明。還有一些驅動沒有移植。繼續努力!

在移植linux2.6.38過程中,遇見了很多的問題,通過在網上查閱相關信息和在圖書館不停的查閱資料,終於成功了。下面將移植過程中產生的問題及其解放方法與大家共享一下。
1、編譯內核時yaffs2出現unknown field 'clear_inode' specified in initializer的
錯誤,原因是所下載的yaffs2不支持linux2.6.38.
解決方法:最新的yaffs2採用git發布,所以採用git工具下載最新的yaffs2源代碼。
具體為在終端輸入git clone git://www.aleph1.co.uk/yaffs2下載最新的yaffs2,下
載完成給內核打補丁,進入yaffs目錄,執行
./patch-ker.sh c m opt/Andy/linux-2.6.38(以自己的內核目錄為准),其中的c代表復制,m代表復合類型。

2、移植linux內核到開發板後,出現data abort的錯誤,錯誤原因為內核大小超過了2M,
天嵌的Uboot只分配給內核2M的空間,所以報錯。
解決方法:精簡內核,使其小於2M。或者修改Uboot,是內核大小大於2M。
所以個人認為天嵌的Uboot值得改進,下一步我將移植Uboot,用自己的Uboot就不存在這個問題了。嘿嘿

3.移植內核時,出現Uncompressing Linux... done, booting the kernel後,系統不能啟動,網上好多人說是因為在menuconfig選項中的Boot options中的Default kernel command string中沒有設置noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySAC0 rootfs=yaffs2 rw。其實不用設置這個參數也可以,我採用在內核配置文件中將Kernel Feature/Provide old way to pass kernel parameters選上就行了,因為天嵌用的bootloader太老了,從列印的內核信息中就可以看出。(ATAG_INITRD is deprecated; please update your bootloader.)

4.內核啟動時,出現Failed to execute /linuxrc的錯誤,原因是:
(1)文件系統中沒有包含linuxrc的可執行文件。在文件系統中添加linuxrc就可完成linux的啟動。
(2)在/driver/mtd/nand/s3c2410.c中將chip->ecc.mode = NAND_ECC_SOFT;改為chip->ecc.mode = NAND_ECC_NONE;並在配置內核中將Samsung S3C NAND Hardware ECC選項刪掉。
這個問題糾結了我好久,我遇見這個問題後,先嘗試用nfs掛載,能夠掛載上,所以我確定肯定是nandflash出了問題了,以為nandflash壞了(因為被我不停的擦寫,嘿嘿),後來用天嵌自帶的鏡像試了是好的,我就明白了,估計是我的nand驅動有問題了,仔細檢查驅動,發現內核配置中的Samsung S3C NAND Hardware ECC沒有去掉,,一個小小的問題折磨了我這么久。所以一定一定要仔細啊。

5.編譯串口驅動是出現error: implicit declaration of function 's3c2410_gpio_cfgpin'的錯誤,是因為內核版本2.6.38的內核定義s3c2410_gpio_cfgpin是在linux/gpio.h中,所以添加#include 後即可。

6.編譯串口驅動是出現error: 'S3C2410_GPH6' undeclared (first use in this function)是因為在內核版本2.6.38的內核定義s3c2410_gpio_cfgpin的函數變數採用的是S3C2410_GPH(6),而非S3C2410_GPH6,將其改為S3C2410_GPH(6)即可解決問題。

7.linux內核2.6.38的串口程序samsung.c在/driver/tty/serial中。這里與原來的內核版本不一致。這個要注意,內核版本改了,介面也改了,我當時找不到samsung.c,然後通過find命令一看,暈,原來在這裡面。

8.在添加yaffs2內核支持時,找不到Kconfig,復制Yaffs2文件夾中的Kconfig_muti到linux內核的fs/yaffs2中,並將Kconfig_muti修改為Kconfig。

『柒』 Linux2.6.38內核編譯時出問題: make menuconfig之後make zImage時出現問題 在線等回答 謝謝

檢查一下這兩個方面,
1,是按照原碼自帶的說明編譯的嗎?

2,你的gcc的版本是否符合要求?

『捌』 linux的cpu選擇

四核就夠用來,雖然linux跑六核沒問題。

『玖』 linux內核從2.6.35-28升級到2.6.38後,進入2.6.38內核中只有字元界面,沒有圖形界面,希望有人能夠幫小弟

不是吧。。。。是不是啟動默認是字元界面? 敲#startx 命令試試

『拾』 虛心求教,38歲零基礎學習LINUX 有機會做運

努力點,半年
辛苦點,三月
拼一拼,兩周

熱點內容
交換機ip地址為什麼要配置 發布:2024-10-06 20:31:56 瀏覽:375
qq瀏覽器如何取消保存密碼 發布:2024-10-06 20:14:48 瀏覽:649
shell腳本ctrlc 發布:2024-10-06 20:10:37 瀏覽:888
壓縮板好嘛 發布:2024-10-06 20:10:28 瀏覽:670
java編譯基礎教程 發布:2024-10-06 20:09:47 瀏覽:268
我的世界電腦java怎麼玩伺服器 發布:2024-10-06 19:16:54 瀏覽:480
存儲空間大於存儲池中的可用容量 發布:2024-10-06 19:15:28 瀏覽:33
什麼叫估演算法 發布:2024-10-06 19:15:20 瀏覽:87
c語言庫編譯 發布:2024-10-06 19:09:23 瀏覽:747
啊里雲系統電視如何更換安卓系統 發布:2024-10-06 18:50:09 瀏覽:577