Operating System Software - DEIF Wind Power Technology
Transcription
Operating System Software - DEIF Wind Power Technology
Advanced Wind turbine Controller AWC 500 Operating system software Document no.: 4189340737 4189340737A - AWC 500 - Operating system software Revision Revision A DEIF A/S Author SJE Date 2012-06-26 Description Initial release i of 54 4189340737A - AWC 500 - Operating system software Contents Contents Revision i Contents ii 1 Operating system software 1.1 AWC 500 file system overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Storage folders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Partitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 1 8 2 Operating system and firmware update 2.1 Firmware update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 CoDeSys SP image update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Operating system image updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 10 12 13 3 Basic use of SSH connection 3.1 View directory . . . . . . . . . . . . . . 3.2 Change directory . . . . . . . . . . . . 3.3 View file . . . . . . . . . . . . . . . . . 3.4 Change file mode . . . . . . . . . . . . 3.5 Change file owner . . . . . . . . . . . . 3.6 Copy file . . . . . . . . . . . . . . . . . 3.7 Change time . . . . . . . . . . . . . . 3.8 Change password . . . . . . . . . . . . 3.9 See Memory and CPU usage . . . . . 3.10 Shutdown the AWC 500 . . . . . . . . 3.11 Restart the AWC 500 unit . . . . . . . . 3.12 Uptime of system . . . . . . . . . . . . 3.13 Memory usage . . . . . . . . . . . . . 3.14 Disc usage . . . . . . . . . . . . . . . 3.15 Ethercat master control and diagnostics 3.16 View modules on Ethercat network . . 3.17 Changing boot settings . . . . . . . . . 3.18 Start/Stop application mode . . . . . . . . . . . . . . . . . . . . . . . . 14 14 14 14 14 14 14 14 14 14 14 14 14 15 15 15 16 16 17 4 How-to 4.1 Access Windows shared folder from the AWC 500 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Format the SD card . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 18 19 5 Appendix 5.1 Busybox/Linux Command Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Linux system shell commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3 Command descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 20 21 21 DEIF A/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii of 54 4189340737A - AWC 500 - Operating system software Operating system software 1 Operating system software For the AWC 500 Operating system DEIF has made a compilation of the best from Linux 2.6 and open source software, amongst • busybox – Called the "The Swiss Army Knife of Embedded Linux". • dropbear – SSH client • ethercat – Ethercat master • preemt – real-time kernel patch and others In the appendix is a list of the enabled commands in the AWC 500 operating system. You also find the most often used commands in this section. These we have also collected on a single page "DEIF AWC 500 Linux cheat sheet" with the most common used commands - ready for printout to have on your desktop. 1.1 AWC 500 file system overview The robust file system of the AWC 500 is structured with user and operating system software folders: Figure 1.1: Operating system software folders 1.2 1.2.1 Storage folders Memory (/tmp) Temporary user files can be stored in the /tmp folder. This could be temporary logging or other data storage. The folder fwupdates is used as source for firmware updates. DEIF A/S 1 of 54 4189340737A - AWC 500 - Operating system software Operating system software Figure 1.2: The fwupdates folder 1.2.2 Application (/app) User applications should be stored in the /app folder. You are free to create your own folders here. Figure 1.3: The user applications folder DEIF A/S 2 of 54 4189340737A - AWC 500 - Operating system software Operating system software Log, service and sysconf are however AWC 500 Operating System software folders. If the "codesys" folder does not exists on your device eg. if the operating system has been updated, then update the software with the codesys_ control SP runtime(.dupdate file) from the DEIF AWC 500 CoDeSys development package 1.2.3 Operating system software and CoDeSys log files (/app/log) Log files for the Operating system software and CoDeSys are located in this folder. Refer to these files for status of system software updates eg. syslog. Figure 1.4: Log files 1.2.4 C/C++ applications folder (/app/service) C/C++ applications are stored and started from this location DEIF A/S 3 of 54 4189340737A - AWC 500 - Operating system software Operating system software Figure 1.5: C/C++ applications folder 1.2.5 CoDeSys Control Runtime folder (/app/service/codesys) Figure 1.6: CoDeSys Control Runtime folder DEIF A/S 4 of 54 4189340737A - AWC 500 - Operating system software Operating system software CoDeSys boot project applications are stored under /app/service/codesys/app and /app/service/codesys/visu folders if boot projects are created. The binary applications shall be uploaded to these folders (see "Distributing applications" in "IEC61131-3 programming"). 1.2.6 System configuration (/app/sysconf) The interfaces files placed here is the default active network settings. Figure 1.7: System configuration folder empty If it is empty like above, then copy the files etc/hostname-default and etc/network/interfaces-default and use as templates. Rename them to "hostname-default" to "hostname" and "interfaces-default" to "interfaces": DEIF A/S 5 of 54 4189340737A - AWC 500 - Operating system software Operating system software Figure 1.8: System configuration folder populated 1.2.7 SD card (/mnt/mmc) The SD card is mounted at boot in the folder (/mnt/mmc). Figure 1.9: SD card folder DEIF A/S 6 of 54 4189340737A - AWC 500 - Operating system software 1.2.8 Operating system software Network settings (/etc/network) Figure 1.10: Contents of /etc/network 1.2.9 Network settings (/etc) Figure 1.11: Network settings in /etc DEIF A/S 7 of 54 4189340737A - AWC 500 - Operating system software 1.3 Operating system software Partitions Important: The AWC 500 Operative system files and Applications files are kept in separate folders, thus a full /app area does NOT affect stability of the system. The file area is divided like this: SD card (<64 GB) RAM (128 MB) /mnt/mmc /tmp Internal Flash (128 MB) /app / All available Up to 64 MB 128 MB - (/tmp usage) 64 MB Folder for temporary files Working memory for OS and CoDeSys Application folder (~x3-x7 with online compression ) 24 MB 24 MB OS image A (active at start up) OS image B (fault-back, if OS Image A fails at start up) 16 MB Reserved for bad blocks Table 1.1: Partitioning scheme This partitioning is default and cannot be changed by the user. Figure 1.12: Partition overview DEIF A/S 8 of 54 4189340737A - AWC 500 - Operating system software Operating system and firmware update 2 Operating system and firmware update A firmware update can depending on the update package be used for a number of things e.g. update the Linux OS, update firmware on the IO modules, update of the CoDeSys runtime etc. It is possible to firmware update while applications are running. DEIF recommends bringing the running wind turbine application program to stopped/idle state and then stopping the process for application C or CoDeSys. Update the operating system, IO modules firmware or CoDeSys SP by copying the new firmware to the /tmp/fwupdates folder, and then the system automatically detects a new firmware and updates the contained part. Make sure your file transfer program copies the entire project in one. E.g. in WinSCP you need to disable endurance. Figure 2.1: Disabling endurance in WinSCP DEIF A/S 9 of 54 4189340737A - AWC 500 - Operating system software 2.1 Operating system and firmware update Firmware update The firmware for the AWC 500 modules is packed in the file DEIF_AWC_500_firmware_vx.xx.x.zip. It contains the dupdate files for each module. Figure 2.2: Example of dupdate files To update the modules simply copy the files to the /tmp/fwupdate folder on the AWC 500 , either one by one or all at ones. Figure 2.3: Firmware update example The AWC 500 detects the new update and installs them automatically. Here after they are removed from the fwupdates folder. A short acknowledge is written to the /tmp folder by "Update_success" file: DEIF A/S 10 of 54 4189340737A - AWC 500 - Operating system software Operating system and firmware update Figure 2.4: The Update_success file in /tmp Detailed status of the update is written to the Syslog file in /app/log/syslog. Open the file to see the status of the update. Figure 2.5: Syslog file DEIF A/S 11 of 54 4189340737A - AWC 500 - Operating system software Operating system and firmware update Figure 2.6: Syslog example 2.2 CoDeSys SP image update The CoDeSys SP is also updated by copying the new image to the /tmp/fwupdates folder. Status of the update is written to /app/log/syslog DEIF A/S 12 of 54 4189340737A - AWC 500 - Operating system software 2.3 Operating system and firmware update Operating system image updates The AWC 500 contains two operating system images. Figure 2.7: Operating system image Once the non-active image has been updated the start up to the new operating image can be done via SSH connection to the AWC 500 . / #dboot -ar : Activates the new (non-active) image, and restarts the AWC 500 . The AWC 500 will now boot with the new updated image. If this fails, it will restart with the previous operating system image. If operating system startup is success full it can be made active for every next start up, by writing: / # dboot -s : This sets the current operating system image active. For more information see /# dboot -h or the section "Changing boot settings" in the "Basic used of SSH connection". The network settings defined in /app/sysconf/interfaces will still be used on after updating the operating system image, if they have been set. DEIF A/S 13 of 54 4189340737A - AWC 500 - Operating system software Basic use of SSH connection 3 Basic use of SSH connection This sections shows the shell commands for basic operation of the SSH connection and examples on use. For detailed descriptions see the sections below. 3.1 View directory ls 3.2 Change directory cd 3.3 View file cat 3.4 Change file mode chmod 3.5 Change file owner chown 3.6 Copy file cp 3.7 Change time time 3.8 Change password passwd 3.9 See Memory and CPU usage top 3.10 Shutdown the AWC 500 poweroff poweroff [-d DELAY] [-n] [-f] 3.11 Restart the AWC 500 unit reboot reboot [-d DELAY] [-n] [-f] 3.12 Uptime of system uptime ~ # uptime 12:14:53 up 1 day, DEIF A/S 4:21, load average: 0.00, 0.18, 0.15 14 of 54 4189340737A - AWC 500 - Operating system software 3.13 Memory usage ~ # free total Mem: 126792 -/+ buffers: Swap: 0 3.14 used 15688 15688 0 free 111104 111104 0 shared 0 buffers 0 Disc usage ~ # df -h Filesystem ubi0_0 tmpfs tmpfs tmpfs tmpfs /dev/ubi0_2 3.15 Basic use of SSH connection Size 24.2M 61.9M 61.9M 61.9M 64.0K 62.1M Used Available Use% Mounted on 6.3M 17.9M 26% / 0 61.9M 0% /var/lock 32.0K 61.9M 0% /var/run 8.0K 61.9M 0% /tmp 0 64.0K 0% /dev 352.0K 58.6M 1% /app Ethercat master control and diagnostics ethercat ~ # ethercat Please specify a command! Usage: ethercat <COMMAND> [OPTIONS] [ARGUMENTS] Commands (can be abbreviated): alias Write alias addresses. config Show slave configurations. cstruct Generate slave PDO information in C language. data Output binary domain process data. debug Set the master's debug level. domains Show configured domains. download Write an SDO entry to a slave. eoe Display Ethernet over EtherCAT statictics. foe_read Read a file from a slave via FoE. foe_write Store a file on a slave via FoE. graph Output the bus topology as a graph. master Show master and Ethernet device information. pdos List Sync managers, PDO assignment and mapping. reg_read Output a slave's register contents. reg_write Write data to a slave's registers. rescan Rescan the bus. sdos List SDO dictionaries. sii_read Output a slave's SII contents. sii_write Write SII contents to a slave. slaves Display slaves on the bus. soe_read Read an SoE IDN from a slave. soe_write Write an SoE IDN to a slave. states Request application-layer states. upload Read an SDO entry from a slave. version Show version information. xml Generate slave information XML. Global options: --master -m <master> Comma separated list of masters to select, ranges are allowed. Examples: '1,3', '5-7,9', '-3'. Default: '-' (all). DEIF A/S 15 of 54 4189340737A - AWC 500 - Operating system software --force --quiet --verbose --help -f -q -v -h Basic use of SSH connection Force a command. Output less information. Output more information. Show this help. Numerical values can be specified either with decimal (no prefix), octal (prefix '0') or hexadecimal (prefix '0x') base. Call 'ethercat <COMMAND> --help' for command-specific help. Send bug reports to fp@igh-essen.com. 3.16 View modules on Ethercat network ~ # ethercat graph /* EtherCAT bus graph. Generated by 'ethercat graph'. */ strict graph bus { rankdir="LR" ranksep=0.8 nodesep=0.8 node [fontname="Helvetica"] edge [fontname="Helvetica",fontsize="10"] master [label="EtherCAT\nMaster"] master -- slave0[label="MII"] slave0 [shape="box",label="0\nPCM51\nDC: Delay meas.\nDelay: 0 ns"] slave0 -- slave1 [taillabel="1 [2915]",headlabel="0 [2915]",label="MII",weight="1"] slave0 -- slave7 [taillabel="3 [556232267]",headlabel="0 [556232267]",label="EBUS",weight="5"] slave1 [shape="box",label="1\nGPM5.1\nDC: Delay meas.\nDelay: 0 ns"] slave1 -- slave2 [taillabel="1 [140]",headlabel="0 [140]",label="EBUS",weight="5"] slave2 [shape="box",label="2\nIFM5.1\nDC: Delay meas.\nDelay: 0 ns"] slave2 -- slave3 [taillabel="1 [145]",headlabel="0 [145]",label="EBUS",weight="5"] slave3 [shape="box",label="3\nIOM5.1\nDC: Delay meas.\nDelay: 0 ns"] slave3 -- slave4 [taillabel="1 [145]",headlabel="0 [145]",label="EBUS",weight="5"] etc. 3.17 Changing boot settings dboot -h Usage: dboot [OPTION]... Display and change current dboot settings. Primary boot selection options (mutually exclusive): -b, --bl next (re)boot should be to bootloader mode -d, --dl next (re)boot should be to download mode -o, --os next (re)boot should be to os mode Secondary boot selection options (allowed in combination with a primary boot selection option): -a, --alternative next (re)boot should go to alternative image -r, --reboot reboot NOW! Default boot selector options: -s, --set-default[=IMAGE] set default image (both os and download mode). DEIF A/S 16 of 54 4189340737A - AWC 500 - Operating system software Basic use of SSH connection if IMAGE is not specified, use current image. otherwise, use the IMAGE specified -t, --set-default-dl[=IMAGE] set default download mode image. if IMAGE is not specified, use current image. otherwise, use the IMAGE specified -T, --set-default-os[=IMAGE] set default os mode image. if IMAGE is not specified, use current image. otherwise, use the IMAGE specified Query -g, -h, -H, -c, -D, -A, -M, -n, -N, -l, options: --get-default --get-default-dl --get-default-os --get-current --in-dl --in-alternative --set-bl=TEXT --set-os-a=TEXT --set-os-b=TEXT --list -m, --list-bl -L, --list-os[=IMAGE] Other options: -h, --help get default image (os and download mode) get default download mode image get default os mode image get current image in download mode (0=no, 1=yes) in alternative image (0=no, 1=yes) set bootloader image description/version set os image a description/version set os image b description/version display current dboot status. list image versions of bootloader and images, which images are default and current, and if in os or download mode display bootloader image version display os image versions display this help message and exit ethercat s1? ethercat s1 -v | grep "Serial" ? Example: ~ # dboot -l deif-os-u-boot-image-awc500pcm_2003 deif-os-image-awc500pcm_2001 deif-os-image-awc500pcm_2003 3.18 Start/Stop application mode /etc/init.d# appmode start : starts the application mode (status led becomes green). Log in via CoDeSys possible. /etc/init.d # appmode stop : stops the application and enters service mode (status led becomes orange). CoDeSys control SP runtime is not running, thus log in via CoDeSys is not possible. DEIF A/S 17 of 54 4189340737A - AWC 500 - Operating system software How-to 4 How-to 4.1 Access Windows shared folder from the AWC 500 Connecting Windows shared folders can be used to log large files directly from AWC 500 to a windows shared folder instead for saving the files locally to \tmp\(ram), \app\(internal flash) or \mnt mmc (sd card), and the copy them to the PC. Select the Windows folder and enable sharing. E.g. \Documents\Temp Figure 4.1: Shared folder in Windows 4.1.1 Temporary access to shared folder(disconnects when AWC 500 restarts) On AWC 500 : Create folder for mounting of the shared windows folder: ~# mkdir /mnt/my_pc Then mount the PC folder to the my_pc folder with: ~# mount -t cifs //[IP]/[Folderpath] /mnt/my_pc -o username=[username],password=[password],workgroup=[domainname] Alternatively try: ~# mount -t cifs //[IP]/[Folderpath] /mnt/my_pc -o sec=none for annoymous access. Example: ~# mount -t cifs //192.168.1.106/Temp /mnt/my_pc -o username=usr,password=pwd,workgroup=DK DEIF A/S 18 of 54 4189340737A - AWC 500 - Operating system software How-to Figure 4.2: Shared Windows folder mounted on AWC 500 file system Files can then be created and save via /mnt/my_pc/my_data/ like normal file access also via CoDeSys. 4.1.2 Unmounting mounted folder in filesystem Unmounting manually mounted folder in filesystem is done with the command: ~#umount /mnt/my_pc 4.2 Format the SD card This section describes how to format the SD-card on AWC 500 PCM5·1 in case of corrupted filesystem. The following describes how to identify and solve problems with a corrupted file system on the SD-card: Symptom: A corrupt file system on the SD-card can result in increased CPU load. Identification: A corrupt file system can be identified by looking in the syslog (/app/log/syslog) for log entries like: EXT3-fs error (device mm The problem can be solved by reformatting the SD-card. The procedure for format for the SD-card is described below. Lines staring with # in the description are comments. # Stop the application services /etc/init.d/appmode stop # Un mount the SD-card umount /mnt/mmc # Format the SD-card (This may take several minutes) mkfs.ext3 /dev/mmcblk0p1 # mount the SD-card again mount -t ext3 /dev/mmcblk0p1 /mnt/mmc # Start the application services DEIF A/S 19 of 54 4189340737A - AWC 500 - Operating system software Appendix 5 Appendix 5.1 Busybox/Linux Command Reference File commands ls - directory listing ls -al - formatted listing with hidden files cd dir - change directory to dir pwd - show current directory mkdir dir - create a directory dir rm file - delete file rm -r dir - delete directory dir rm -f file - force remove file rm -rf dir - force remove directory dir use with extreme caution. cp file1 file2 - copy file1 to file2 cp -r dir1 dir2 - copy dir1 to dir2; create dir2 if it doesn’t exist mv file1 file2 - rename or move file1 to file2 if file2 is an existing directory, moves file1 into directory file2 ln -s file link - create symbolic link link to file touch file - create or update file cat >file - places standard input into file more file - output the contents of file head file - output the first 10 lines of file tail file - output the last 10 lines of file tail -f file - output the contents of file as it grows, starting with the last 10 lines Process management ps - display your currently active processes top - display all running processes kill pid - kill process id pid killall proc - kill all processes named proc * bg - lists stopped or background jobs; resume a stopped job in the background fg - brings the most recent job to foreground File Permissions chmod octal file - change the permissions of file to octal, which can be found separately for user, group, and world by adding: • 4 - read (r) • 2 - write (w) • 1 - execute (x) Examples: chmod 777 - read, write, execute for all chmod 755 - rwx for owner, rx for group and world chown ? DEIF A/S SSH ssh user@host - connect to host as user ssh-copy-id user@host - add your key to host for user to enable a keyed or passwordless login Searching grep pattern files - search for pattern in files grep -r pattern dir - search recursively for pattern in dir command | grep pattern - search for pattern in the output of command System Info date - show the current date and time uptime - show current uptime uname -a - show kernel information cat /proc/cpuinfo - cpu information cat /proc/meminfo - memory information df -h - show disk usage du -h - show directory space usage free - show memory and swap usage which app - show which app will be run by default Compression tar cf file.tar files - create a tar named file.tar containing files tar xf file.tar - extract the files from file.tar tar czf file.tar.gz files - create a tar with Gzip compression tar xzf file.tar.gz - extract a tar using Gzip gzip file - compresses file and renames it to file.gz gzip -d file.gz - decompresses file.gz back to file Network ping host - ping host and output results Shortcuts Ctrl+C - halts the current command Ctrl+Z - stops the current command, resume with fg in the foreground or bg in the background Ctrl+D - log out of current session, similar to exit Ctrl+W - erases one word in the current line Ctrl+U - erases the whole line Ctrl+R - type to bring up a recent command !! - repeats the last command exit - log out of current session AWC 500 specific /etc/init.d/appmode [start|stop] - toogles applications mode dboot - configures boot settings ethercat graph - shows what is on the network 20 of 54 4189340737A - AWC 500 - Operating system software 5.2 Appendix Linux system shell commands The following is a list of the enabled commands in the AWC 500 operative system. The list is based on the documentation available on http://www.busybox.net. It may differ between different versions of the supplied operative system. 5.3 Command descriptions [ [[ ash awk awk [OPTIONS] [AWK_PROGRAM] [FILE]... Options: -v VAR=VAL -F SEP -f FILE Set variable Use SEP as field separator Read program from file basename basename FILE [SUFFIX] Strip directory path and .SUFFIX from FILE bash busybox cat cat [-u] [FILE]... Concatenate FILE(s) and print them to stdout Options: -u Use unbuffered i/o (ignored) chgrp chgrp [-RhLHPcvf]... GROUP FILE... Change the group membership of each FILE to GROUP Options: -R -h -L -H -P -c -v -f DEIF A/S Recurse Affect symlinks instead of symlink targets Traverse all symlinks to directories Traverse symlinks on command line only Do not traverse symlinks (default) List changed files Verbose Hide errors 21 of 54 4189340737A - AWC 500 - Operating system software Appendix chmod chmod [-Rcvf] MODE[,MODE]... FILE... Each MODE is one or more of the letters ugoa, one of the symbols +-= and one or more of the letters rwxst Options: -R -c -v -f Recurse List changed files List all files Hide errors chown chown [-RhLHPcvf]... OWNER[<.|:>[GROUP]] FILE... Change the owner and/or group of each FILE to OWNER and/or GROUP Options: -R -h -L -H -P -c -v -f Recurse Affect symlinks instead of symlink targets Traverse all symlinks to directories Traverse symlinks on command line only Do not traverse symlinks (default) List changed files List all files Hide errors chpst chpst [-vP012] [-u USER[:GRP]] [-U USER[:GRP]] [-e DIR] [-/ DIR] [-n NICE] [-m BYTES] [-d BYTES] [-o N] [-p N] [-f BYTES] [-c BYTES] PROG ARGS Change the process state and run PROG Options: -u -U -e in -/ -n -m -d -o -p -f -c -v -P -0 -1 -2 USER[:GRP] Set uid and gid USER[:GRP] Set $UID and $GID in environment DIR Set environment variables as specified by files DIR: file=1st_line_of_file DIR Chroot to DIR NICE Add NICE to nice value BYTES Same as -d BYTES -s BYTES -l BYTES BYTES Limit data segment N Limit number of open files per process N Limit number of processes per uid BYTES Limit output file sizes BYTES Limit core file size Verbose Create new process group Close standard input Close standard output Close standard error chrt chrt [OPTIONS] [PRIO] [PID | PROG [ARGS]] Manipulate real-time attributes of a process DEIF A/S 22 of 54 4189340737A - AWC 500 - Operating system software Appendix Options: -p -r -f -o -m Operate on pid Set scheduling policy to SCHED_RR Set scheduling policy to SCHED_FIFO Set scheduling policy to SCHED_OTHER Show min and max priorities cmp cmp [-l] [-s] FILE1 [FILE2 [SKIP1 [SKIP2]]] Compares FILE1 vs stdin if FILE2 is not specified Options: -l Write the byte numbers (decimal) and values (octal) for all differing bytes -s Quiet cp cp [OPTIONS] SOURCE DEST Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY Options: -a -d,-P -H,-L -p -f -i -R,-r -l,-s Same as -dpR Preserve links Dereference all symlinks (default) Preserve file attributes if possible Force overwrite Prompt before overwrite Recurse Create (sym)links crond crond -fbS -l N -d N -L LOGFILE -c DIR -f -b -S -l -d -L -c Foreground Background (default) Log to syslog (default) Set log level. 0 is the most verbose, default 8 Set log level, log to stderr Log to file Working dir crontab crontab [-c DIR] [-u USER] [-ler]|[FILE] -c -u -l -e -r FILE DEIF A/S Crontab directory User List crontab Edit crontab Delete crontab Replace crontab by FILE ('-': stdin) 23 of 54 4189340737A - AWC 500 - Operating system software Appendix cut cut [OPTIONS] [FILE]... Print selected fields from each input FILE to standard output Options: -b -c -d -s -f -n LIST Output only bytes from LIST LIST Output only characters from LIST CHAR Use CHAR instead of tab as the field delimiter Output only the lines containing delimiter N Print only these fields Ignored date date [OPTIONS] [+FMT] [TIME] Display time (using +FMT), or set time Options: [-s] TIME Set time to TIME -u Work in UTC (don't convert to local time) -R Output RFC-822 compliant date string -I[SPEC] Output ISO-8601 compliant date string SPEC='date' (default) for date only, 'hours', 'minutes', or 'seconds' for date and time to the indicated precision -r FILE Display last modification time of FILE -d TIME Display TIME, not 'now' -D FMT Use FMT for -d TIME conversion Recognized TIME formats: hh:mm[:ss] [YYYY.]MM.DD-hh:mm[:ss] YYYY-MM-DD hh:mm[:ss] [[[[[YY]YY]MM]DD]hh]mm[.ss] dbclient dboot dd dd [if=FILE] [of=FILE] [ibs=N] [obs=N] [bs=N] [count=N] [skip=N] [seek=N] [conv=notrunc|noerror|sync|fsync] Copy a file with converting and formatting Options: if=FILE of=FILE bs=N ibs=N obs=N count=N skip=N seek=N conv=notrunc conv=noerror DEIF A/S Read from FILE instead of stdin Write to FILE instead of stdout Read and write N bytes at a time Read N bytes at a time Write N bytes at a time Copy only N input blocks Skip N input blocks Skip N output blocks Don't truncate output file Continue after read errors 24 of 54 4189340737A - AWC 500 - Operating system software conv=sync conv=fsync Appendix Pad blocks with zeros Physically write data out before finishing Numbers may be suffixed by c (x1), w (x2), b (x512), kD (x1000), k (x1024), MD (x1000000), M (x1048576), GD (x1000000000) or G (x1073741824) depmod devmem devmem ADDRESS [WIDTH [VALUE]] Read/write from physical address Options: ADDRESS Address to act upon WIDTH Width (8/16/...) VALUE Data to be written df df [-Pkmhai] [-B SIZE] [FILESYSTEM...] Print filesystem usage statistics Options: -P -k -m -h -a -i -B SIZE POSIX output format 1024-byte blocks (default) 1M-byte blocks Human readable (e.g. 1K 243M 2G) Show all filesystems Inodes Blocksize dirname dirname FILENAME Strip non-directory suffix from FILENAME dmesg dmesg [-c] [-n LEVEL] [-s SIZE] Print or control the kernel ring buffer Options: -c -n LEVEL -s SIZE DEIF A/S Clear ring buffer after printing Set console logging level Buffer size 25 of 54 4189340737A - AWC 500 - Operating system software Appendix dnsdomainname doc_loadbios docfdisk dropbear dropbearconvert dropbearkey dropbearmulti dscan Usage: dscan [OPTIONS] <IP-ADDRESS>* dscan probe client (version 1.0.0-gb3fabfb-dirty) Options: -p, -t, -v, -h, --port=PORT --timeout=MSEC --verbose --help to PORT timeout verbose display (default 7800) in milliseconds to wait for replies output this help message and exit Copyright 2010 DoreDevelopment ApS dscand Usage: dscand [OPTION]... dscan network daemon (version 1.0.0-gb3fabfb-dirty) Options: -d, -p, -i, -h, --daemon --port=PORT --id=STR --help run in background listen to PORT (default 7800) send STR as identification when replying display this help message and exit Copyright 2010 DoreDevelopment ApS du du [-aHLdclsxhmk] [FILE]... Summarize disk space used for each FILE and/or directory. Disk space is printed in units of 1024 bytes. Options: -a -H -L -d N -c -l -s -x -h -m -k DEIF A/S Show file sizes too Follow symlinks on command line Follow all symlinks Limit output to directories (and files with -a) of depth < N Show grand total Count sizes many times if hard linked Display only a total for each argument Skip directories on different filesystems Sizes in human readable format (e.g., 1K 243M 2G ) Sizes in megabytes Sizes in kilobytes (default) 26 of 54 4189340737A - AWC 500 - Operating system software Appendix dupdate echo echo [-neE] [ARG...] Print the specified ARGs to stdout Options: -n -e -E Suppress trailing newline Interpret backslash-escaped characters (i.e., \t=tab) Disable interpretation of backslash-escaped characters egrep env env [-iu] [-] [name=value]... [PROG [ARGS]] Print the current environment or run PROG after setting up the specified environment Options: -, -i -u Start with an empty environment Remove variable from the environment envdir envdir dir prog args Set various environment variables as specified by files in the directory dir and run PROG envuidgid envuidgid account prog args Set $UID to account’s uid and $GID to account’s gid and run PROG Ethercat Usage: ethercat <COMMAND> [OPTIONS] [ARGUMENTS] Commands (can be abbreviated): alias config cstruct data debug domains download eoe foe_read foe_write graph master pdos reg_read reg_write rescan DEIF A/S Write alias addresses. Show slave configurations. Generate slave PDO information in C language. Output binary domain process data. Set the master's debug level. Show configured domains. Write an SDO entry to a slave. Display Ethernet over EtherCAT statictics. Read a file from a slave via FoE. Store a file on a slave via FoE. Output the bus topology as a graph. Show master and Ethernet device information. List Sync managers, PDO assignment and mapping. Output a slave's register contents. Write data to a slave's registers. Rescan the bus. 27 of 54 4189340737A - AWC 500 - Operating system software sdos sii_read sii_write slaves soe_read soe_write states upload version xml Appendix List SDO dictionaries. Output a slave's SII contents. Write SII contents to a slave. Display slaves on the bus. Read an SoE IDN from a slave. Write an SoE IDN to a slave. Request application-layer states. Read an SDO entry from a slave. Show version information. Generate slave information XML. Global options: --master -m <master> Comma separated list of masters to select, ranges are allowed. Examples: '1,3', '5-7,9', '-3'. Default: '-' (all). --force -f Force a command. --quiet -q Output less information. --verbose -v Output more information. --help -h Show this help. Numerical values can be specified either with decimal (no prefix), octal (prefix ’0’) or hexadecimal (prefix ’0x’) base. Call ’ethercat <COMMAND> –help’ for command-specific help. Send bug reports to fp@igh-essen.com. expr expr EXPRESSION Print the current environment or run PROG after setting up the specified environment EXPRESSION may be: ARG1 | ARG2 ARG1 if it is neither null nor 0, otherwise ARG2 ARG1 & ARG2 ARG1 if neither argument is null or 0, otherwise 0 ARG1 < ARG2 1 if ARG1 is less than ARG2, else 0. Similarly: ARG1 <= ARG2 ARG1 = ARG2 ARG1 != ARG2 ARG1 >= ARG2 ARG1 > ARG2 ARG1 + ARG2 Sum of ARG1 and ARG2. Similarly: ARG1 - ARG2 ARG1 * ARG2 ARG1 / ARG2 ARG1 % ARG2 STRING : REGEXP Anchored pattern match of REGEXP in STRING match STRING REGEXP Same as STRING : REGEXP substr STRING POS LENGTH Substring of STRING, POS counted from 1 index STRING CHARS Index in STRING where any CHARS is found, or 0 length STRING Length of STRING quote TOKEN Interpret TOKEN as a string, even if it is a keyword like 'match' or an operator like '/' (EXPRESSION) Value of EXPRESSION Beware that many operators need to be escaped or quoted for shells. Comparisons are arithmetic if both ARGs are numbers, else lexicographical. Pattern matches return the string matched between and or null; if and are not used, they return the number of characters matched or 0. DEIF A/S 28 of 54 4189340737A - AWC 500 - Operating system software Appendix false false Return an exit code of FALSE (1) fdisk fdisk [-ul] [-C CYLINDERS] [-H HEADS] [-S SECTORS] [-b SSZ] DISK Change partition table Options: -u -l -b -C -H -S 2048 CYLINDERS HEADS SECTORS Start and End are in sectors (instead of cylinders) Show partition table for each DISK, then exit (for certain MO disks) use 2048-byte sectors Set number of cylinders/heads/sectors file-benchmark find find [PATH...] [EXPRESSION] Search for files. The default PATH is the current directory, default EXPRESSION is ’-print’ EXPRESSION may consist of: -follow Dereference symlinks -xdev Don't descend directories on other filesystems -maxdepth N Descend at most N levels. -maxdepth 0 applies tests/actions to command line arguments only -mindepth N Do not act on first N levels -name PATTERN File name (w/o directory name) matches PATTERN -iname PATTERN Case insensitive -name -path PATTERN Path matches PATTERN -regex PATTERN Path matches regex PATTERN -type X File type is X (X is one of: f,d,l,b,c,...) -perm NNN Permissions match any of (+NNN), all of (-NNN), or exactly (NNN) -mtime DAYS Modified time is greater than (+N), less than (-N), or exactly (N) days -mmin MINS Modified time is greater than (+N), less than (-N), or exactly (N) minutes -newer FILE Modified time is more recent than FILE's -inum N File has inode number N -user NAME File is owned by user NAME (numeric user ID allowed) -group NAME File belongs to group NAME (numeric group ID allowed) -depth Process directory name after traversing it -size N[bck] File size is N (c:bytes,k:kbytes,b:512 bytes(def.)). +/-N: file size is bigger/smaller than N -print Print (default and assumed) -print0 Delimit output with null characters rather than newlines -exec CMD ARG ; Run CMD with all instances of {} replaced by the matching files -prune Stop traversing current subtree -delete Delete files, turns on -depth option DEIF A/S 29 of 54 4189340737A - AWC 500 - Operating system software (EXPR) Appendix Group an expression flash_erase flash_eraseall flash_info flash_lock flash_lock MTD_DEVICE OFFSET SECTORS Lock part or all of an MTD device. If SECTORS is -1, then all sectors will be locked, regardless of the value of OFFSET flash_otp_dump flash_otp_info flash_unlock flash_unlock MTD_DEVICE Unlock an MTD device flashcp free free Display the amount of free and used system memory fsync fsync [OPTIONS] FILE...Write files’ buffered blocks to disk Options: -d Avoid syncing metadata ftl_check ftl_format fuser Find processes which use FILEs or PORTs Options: -m -4 -6 -s -k -SIGNAL DEIF A/S Find processes which use same fs as FILEs Search only IPv4 space Search only IPv6 space Silent: just exit with 0 if any processes are found Kill found processes (otherwise display PIDs) Signal to send (default: TERM) 30 of 54 4189340737A - AWC 500 - Operating system software Appendix gdbserver Usage: gdbserver [OPTIONS] COMM PROG [ARGS ...] gdbserver [OPTIONS] –attach COMM PID gdbserver [OPTIONS] –multi COMM COMM may either be a tty device (for serial debugging), or HOST:PORT to listen for a TCP connection. Options: --debug Enable general debugging output. --remote-debug Enable remote protocol debugging output. --version Display version information and exit. --wrapper WRAPPER -- Run WRAPPER to start new programs. Report bugs to "<http://www.gnu.org/software/gdb/bugs/>". getcap getty getty [OPTIONS] BAUD_RATE TTY [TERMTYPE] Open a tty, prompt for a login name, then invoke /bin/login Options: -h -i -L -m -w -n -f -l -t -I -H ISSUE_FILE LOGIN SEC INITSTR HOST Enable hardware (RTS/CTS) flow control Do not display /etc/issue before running login Local line, do not do carrier detect Get baud rate from modem's CONNECT status message Wait for a CR or LF before sending /etc/issue Do not prompt the user for a login name Display ISSUE_FILE instead of /etc/issue Invoke LOGIN instead of /bin/login Terminate after SEC if no username is read Send INITSTR before anything else Log HOST into the utmp file as the hostname grep grep [-HhrilLnqvsoweFEABCz] PATTERN [FILE]... Search for PATTERN in each FILE or standard input Options: -H Prefix output lines with filename where match was found -h Suppress the prefixing filename on output -r Recurse -i Ignore case distinctions -l List names of files that match -L List names of files that do not match -n Print line number with output lines -q Quiet. Return 0 if PATTERN is found, 1 otherwise -v Select non-matching lines -s Suppress file open/read error messages -c Only print count of matching lines -o Show only the part of a line that matches PATTERN -m MAX Match up to MAX times per file -w Match whole words only DEIF A/S 31 of 54 4189340737A - AWC 500 - Operating system software Appendix -F PATTERN is a set of newline-separated strings -E PATTERN is an extended regular expression -e PTRN Pattern to match -f FILE Read pattern from file -A Print NUM lines of trailing context -B Print NUM lines of leading context -C Print NUM lines of output context -z Input is NUL terminated groups gzip gzip [OPTIONS] [FILE]... Compress FILEs (or standard input) Options: -c -d -f Write to standard output Decompress Force halt head head [OPTIONS] [FILE]... Print first 10 lines of each FILE to standard output. With more than one FILE, precede each with a header giving the file name. With no FILE, or when FILE is -, read standard input. Options: -n NUM Print first NUM lines instead of first 10 -c NUM Output the first NUM bytes -q Never output headers giving file names -v Always output headers giving file names hexdump hexdump [-bcCdefnosvxR] FILE... Display file(s) or standard input in a user specified format Options: -b -c -C -d -e -f -n -o -s -v -x -R DEIF A/S One-byte octal display One-byte character display Canonical hex+ASCII, 16 bytes per line Two-byte decimal display FORMAT STRING FORMAT FILE LENGTH Interpret only LENGTH bytes of input Two-byte octal display OFFSET Skip OFFSET bytes Display all input data Two-byte hexadecimal display Reverse of 'hexdump -Cv' 32 of 54 4189340737A - AWC 500 - Operating system software Appendix hostname hostname [OPTIONS] [HOSTNAME | -F FILE] Get or set hostname or DNS domain name Options: -s -i -d -f -F FILE Short Addresses for the hostname DNS domain name Fully qualified domain name Use FILE's content as hostname hwclock hwclock [-r|–show] [-s|–hctosys] [-w|–systohc] [-l|–localtime] [-u|–utc] [-f FILE] Query and set hardware clock (RTC) Options: -r -s -w -u -l -f FILE Show hardware clock time Set system time from hardware clock Set hardware clock to system time Hardware clock is in UTC Hardware clock is in local time Use specified device (e.g. /dev/rtc2) id id [OPTIONS] [USER] Print information about USER or the current user Options: -r -s -w -u -l -f FILE Show hardware clock time Set system time from hardware clock Set hardware clock to system time Hardware clock is in UTC Hardware clock is in local time Use specified device (e.g. /dev/rtc2) ifconfig ifconfig [-a] interface [address] Configure a network interface Options: [add ADDRESS[/PREFIXLEN]] [del ADDRESS[/PREFIXLEN]] [[-]broadcast [ADDRESS]] [[-]pointopoint [ADDRESS]] [netmask ADDRESS] [dstaddr ADDRESS] [outfill NN] [keepalive NN] [hw ether|infiniband ADDRESS] [metric NN] [mtu NN] [[-]trailers] [[-]arp] [[-]allmulti] [multicast] [[-]promisc] [txqueuelen NN] [[-]dynamic] [mem\_start NN] [io\_addr NN] [irq NN] [up|down] ... DEIF A/S 33 of 54 4189340737A - AWC 500 - Operating system software Appendix ifdown ifdown [-ainmvf] ifaces... Options: -a De/configure all interfaces automatically -i FILE Use FILE for interface definitions -n Print out what would happen, but don't do it (note: doesn't disable mappings) -m Don't run any mappings -v Print out what would happen before doing it -f Force de/configuration ifplugd ifplugd [OPTIONS] Network interface plug detection daemon Options: -n -s -i IFACE -f/-F -a -M -r -x -I -p -q -l -t -u -d -m -k PROG ARG SECS SECS SECS MODE Do not daemonize Do not log to syslog Interface Treat link detection error as link down/link up (otherwise exit on error) Do not up interface automatically Monitor creation/destruction of interface (otherwise it must exist) Script to run Extra argument for script Don't exit on nonzero exit code from script Don't run script on daemon startup Don't run script on daemon quit Run script on startup even if no cable is detected Poll time in seconds Delay before running script after link up Delay after link down API mode (mii, priv, ethtool, wlan, auto) Kill running daemon ifup ifup [-ainmvf] ifaces... Options: -a De/configure all interfaces automatically -i FILE Use FILE for interface definitions -n Print out what would happen, but don't do it (note: doesn't disable mappings) -m Don't run any mappings -v Print out what would happen before doing it -f Force de/configuration inetd inetd [-fe] [-q N] [-R N] [CONFFILE] Listen for network connections and launch programs DEIF A/S 34 of 54 4189340737A - AWC 500 - Operating system software Appendix Options: -f Run in foreground -e Log to stderr -q N Socket listen queue (default: 128) -R N Pause services after N connects/min (default: 0 - disabled) init init Init is the parent of all processes inotifyd inotifyd PROG FILE1[:MASK] ... Run PROG on filesystem changes. When a filesystem event matching MASK occurs on FILEn, PROG <actual_event(s)><FILEn> < subf ile_name > is run. Events: a c e w 0 r D M u o x File is accessed File is modified Metadata changed Writable file is closed Unwritable file is closed File is opened File is deleted File is moved Backing fs is unmounted Event queue overflowed File can't be watched anymore If watching a directory: m y n d Subfile Subfile Subfile Subfile is is is is moved into dir moved out of dir created deleted inotifyd waits for PROG to exit. When x event happens for all FILEs, inotifyd exits insmod insmod [OPTIONS] MODULE [symbol=value]... Load the specified kernel modules into the kernel Options: -f Force module to load into the wrong kernel version -k Make module autoclean-able -v Verbose -q Quiet -L Lock to prevent simultaneous loads of a module -m Output load map to stdout -o NAME Set internal module name to NAME -x Do not export externs DEIF A/S 35 of 54 4189340737A - AWC 500 - Operating system software Appendix ionice ionice [-c 1-3] [-n 0-7] [-p PID] [PROG] Change I/O scheduling class and priority Options: -c -n Class. 1:realtime 2:best-effort 3:idle Priority ip ip [OPTIONS] address | route | link | tunnel | rule COMMAND ip [OPTIONS] OBJECT COMMAND where OBJECT := address | route | link | tunnel | rule OPTIONS := -f[amily] inet | inet6 | link | -o[neline] jffs2dump kill kill [-l] [-SIG] PID... Send a signal (default: TERM) to given PIDs Options: -l List all signal names and numbers killall killall [-l] [-q] [-SIG] process-name... Send a signal (default: TERM) to given processes Options: -l -q List all signal names and numbers Do not complain if no processes were killed killall5 killall5 [-l] [-SIG] [-o PID]... Send a signal (default: TERM) to all processes outside current session Options: -l List all signal names and numbers -o PID Do not signal this PID klogd klogd [-c N] [-n] Kernel logger Options: -c N -n DEIF A/S Only messages with level < N are printed to console Run in foreground 36 of 54 4189340737A - AWC 500 - Operating system software Appendix last last [-HW] [-f file] Show listing of the last users that logged into the system Options: -W Display with no host column truncation -f file Read from file instead of /var/log/wtmp less less [-EMNmh I?] [FILE]... View a file or list of files. The position within files can be changed, and files can be manipulated in various ways. Options: -E Quit once the end of a file is reached -M,-m Display status line with line numbers and percentage through the file -N Prefix line number to each line -I Ignore case in all searches -~ Suppress ~s displayed past the end of the file ln ln [OPTIONS] TARGET... LINK|DIRECTORY Create a link LINK or DIRECTORY/TARGET to the specified TARGET(s) Options: -s -f -n -b -S suf Make symlinks instead of hardlinks Remove existing destination files Don't dereference symlinks - treat like normal file Make a backup of the target (if exists) before link operation Use suffix instead of ~ when making backup files logger logger [OPTIONS] [MESSAGE] Write MESSAGE to the system log. If MESSAGE is omitted, log stdin. Options: -s Log to stderr as well as the system log -t TAG Log using the specified tag (defaults to user name) -p PRIO Priority (numeric or facility.level pair) login login [-p] [-h HOST] [[-f] USER] Begin a new session on the system Options: -f -h -p DEIF A/S Do not authenticate (user already authenticated) Name of the remote host Preserve environment 37 of 54 4189340737A - AWC 500 - Operating system software Appendix ls ls [-1AacCdeFilnpLRrSsTtuvwxXhk] [FILE]... List directory contents Options: -1 List in a single column -A Don't list . and .. -a Don't hide entries starting with . -C List by columns -c With -l: sort by ctime --color[={always,never,auto}] Control coloring -d List directory entries instead of contents -e List full date and time -F Append indicator (one of */=@|) to entries -i List inode numbers -l Long listing format -n List numeric UIDs and GIDs instead of names -p Append indicator (one of /=@|) to entries -L List entries pointed to by symlinks -R List subdirectories recursively -r Sort in reverse order -S Sort by file size -s List the size of each file, in blocks -T NUM Assume tabstop every NUM columns -t With -l: sort by modification time -u With -l: sort by access time -v Sort by version -w NUM Assume the terminal is NUM columns wide -x List by lines -X Sort by extension -h List sizes in human readable format (1K 243M 2G) lsmod lsmod List the currently loaded kernel modules md5sum md5sum [OPTIONS] [FILE]... or: md5sum [OPTIONS] -c [FILE] Print or check MD5 checksums Options: -c -s -w Check sums against given list Don't output anything, status code shows success Warn about improperly formatted checksum lines mdev mdev [-s] -s Scan /sys and populate /dev during system boot It can be run by kernel as a hotplug helper. To activate it: echo /bin/mdev >/proc/sys/kernel/hotplug It uses /etc/mdev.conf with lines [-]DEVNAME UID:GID PERM [>|=PATH] [@|$|*PROG] DEIF A/S 38 of 54 4189340737A - AWC 500 - Operating system software Appendix memory-benchmark memtester microcom microcom [-d DELAY] [-t TIMEOUT] [-s SPEED] [-X] TTY Copy bytes for stdin to TTY and from TTY to stdout Options: -d Wait up to DELAY ms for TTY output before sending every next byte to it -t Exit if both stdin and TTY are silent for TIMEOUT ms -s Set serial line to SPEED -X Disable special meaning of NUL and Ctrl-X from stdin mii-diag mii-tool mkdir mkdir [OPTIONS] DIRECTORY... Create DIRECTORY Options: -m -p Mode No error if exists; make parent directories as needed mke2fs mkfifo mkfifo [OPTIONS] name Create named pipe (identical to ’mknod name p’) Options: -m MODE Mode (default a=rw) mkfs.ext2 mkfs.ext3 mkfs.ext4 mkfs.ext4dev mkfs.jffs2 mkfs.ubifs mknod mknod [OPTIONS] NAME TYPE MAJOR MINOR DEIF A/S 39 of 54 4189340737A - AWC 500 - Operating system software Appendix Create a special file (block, character, or pipe) Options: -m Create the special file using the specified mode (default a=rw) TYPEs include: b: Make a block device c or u: Make a character device p: Make a named pipe (MAJOR and MINOR are ignored) mktemp mktemp [-dt] [-p DIR] [TEMPLATE] Create a temporary file with name based on TEMPLATE and print its name. TEMPLATE must end with XXXXXX (e.g. [/dir/]nameXXXXXX). Options: -d Make a directory instead of a file -t Generate a path rooted in temporary directory -p DIR Use DIR as a temporary directory (implies -t) For -t or -p, directory is chosen as follows: $TMPDIR if set, else -p DIR, else /tmp modprobe modprobe [-knqrsvb] MODULE [symbol=value...] Options: -k -n -q -r -s -v -b Make module autoclean-able Dry run Quiet Remove module (stacks) or do autoclean Report via syslog instead of stderr Verbose Apply blacklist to module names too more more [FILE]... View FILE or standard input one screenful at a time mount mount [flags] DEVICE NODE [-o OPT,OPT] Mount a filesystem. Filesystem autodetection requires /proc. Options: -a -f -i -r -w -t FSTYPE -O OPT Mount all filesystems in fstab Dry run Don't run mount helper Read-only mount Read-write mount (default) Filesystem type Mount only filesystems with option OPT (-a only) -o OPT: DEIF A/S 40 of 54 4189340737A - AWC 500 - Operating system software loop [a]sync [no]atime [no]diratime [no]relatime [no]dev [no]exec [no]suid [r]shared [r]slave [r]private [un]bindable bind move remount ro/rw Appendix Ignored (loop devices are autodetected) Writes are [a]synchronous Disable/enable updates to inode access times Disable/enable atime updates to directories Disable/enable atime updates relative to modification time (Dis)allow use of special device files (Dis)allow use of executable files (Dis)allow set-user-id-root programs Convert [recursively] to a shared subtree Convert [recursively] to a slave subtree Convert [recursively] to a private subtree Make mount point [un]able to be bind mounted Bind a directory to an additional location Relocate an existing mount point Remount a mounted filesystem, changing its flags Read-only/read-write mount There are EVEN MORE flags that are specific to each filesystem You’ll have to see the written documentation for those filesystems mountpoint mountpoint [-q] <[-dn] DIR | -x DEVICE> Check if the directory is a mountpoint Options: -q -d -n -x Quiet Print major/minor device number of the filesystem Print device name of the filesystem Print major/minor device number of the blockdevice mtd_debug mtdinfo mv mv [OPTIONS] SOURCE DEST or: mv [OPTIONS] SOURCE... DIRECTORY Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY Options: -f -i DEIF A/S Don't prompt before overwriting Interactive, prompt before overwrite 41 of 54 4189340737A - AWC 500 - Operating system software Appendix nanddump nandtest nandwrite netperf netserver netstat netstat [-laentuwxrWp] Display networking information Options: -l -a -e -n -t -u -w -x -r -W -p Display listening server sockets Display all sockets (default: connected) Display other/more information Don't resolve names Tcp sockets Udp sockets Raw sockets Unix sockets Display routing table Display with no column truncation Display PID/Program name for sockets nftl_format nftldump nohup nohup PROG [ARGS] Run PROG immune to hangups, with output to a non-tty nslookup nslookup [HOST] [SERVER] Query the nameserver for the IP address of the given HOST optionally using a specified DNS server ntpd passwd passwd [OPTIONS] [USER] Change USER’s password. If no USER is specified, changes the password for the current user. Options: -a -d -l -u DEIF A/S Algorithm to use for password (choices: des, md5) Delete password for the account Lock (disable) account Unlock (re-enable) account 42 of 54 4189340737A - AWC 500 - Operating system software Appendix ping ping [OPTIONS] HOST Send ICMP ECHO_REQUEST packets to network hosts Options: -4, -6 Force IPv4 or IPv6 hostname resolution -c CNT Send only CNT pings -s SIZE Send SIZE data bytes in packets (default:56) -I IFACE/IP Use interface or IP address as source -W SEC Seconds to wait for the first response (default:10) (after all -c CNT packets are sent) -w SEC Seconds until ping exits (default:infinite) (can exit earlier with -c CNT) -q Quiet, only displays output at start and when finished poweroff ps ps Report process status Options: -o col1,col2=header -T Select columns for display Show threads pwd pwd Print the full filename of the current working directory rdev reboot recv_image reset reset Reset the screen rfddump rfdformat DEIF A/S 43 of 54 4189340737A - AWC 500 - Operating system software Appendix rm rm [OPTIONS] FILE... Remove (unlink) the FILE(s). Use ’–’ to indicate that all following arguments are non-options. Options: -i -f -r,-R Always prompt before removing Never prompt Remove directories recursively rmdir rmdir [OPTIONS] DIRECTORY... Remove the DIRECTORY, if it is empty Options: -p|--parents Include parents --ignore-fail-on-non-empty route route [add|del|delete] Edit kernel routing tables Options: -n Don't resolve names -e Display other/more information -A inet{6} Select address family run-parts run-parts [-t] [-l] [-a ARG] [-u MASK] DIRECTORY Run a bunch of scripts in a directory Options: -t Print what would be run, but don't actually run anything -a ARG Pass ARG as argument for every program -u MASK Set the umask to MASK before running every program -l Print names of all matching files even if they are not executable runsv runsv dir Start and monitor a service and optionally an appendant log service runsvdir runsvdir [-P] [-s SCRIPT] dir Start a runsv process for each subdirectory. If it exits, restart it. -P -s SCRIPT DEIF A/S Put each runsv in a new session Run SCRIPT <signo> after signal is processed 44 of 54 4189340737A - AWC 500 - Operating system software Appendix scp sed sed [-efinr] SED_CMD [FILE]... Options: -e CMD Add CMD to sed commands to be executed -f FILE Add FILE contents to sed commands to be executed -i Edit files in-place -n Suppress automatic printing of pattern space -r Use extended regex syntax If no -e or -f is given, the first non-option argument is taken as the sed command to interpret. All remaining arguments are names of input files; if no input files are specified, then the standard input is read. Source files will not be modified unless -i option is given. seq seq [-w] [-s SEP] [FIRST [INC]] LAST Print numbers from FIRST to LAST, in steps of INC. FIRST, INC default to 1 Options: -w Pad to last with leading zeros -s SEP String separator serve_image setcap setconsole setlogcons setlogcons N Redirect the kernel output to console N (0 for current) setuidgid setuidgid account prog args Set uid and gid to account’s uid and gid, removing all supplementary groups and run PROG sfdisk sh sha256sum sha256sum [OPTIONS] [FILE]... or: sha256sum [OPTIONS] -c [FILE] Print or check SHA256 checksums Options: -c -s -w DEIF A/S Check sums against given list Don't output anything, status code shows success Warn about improperly formatted checksum lines 45 of 54 4189340737A - AWC 500 - Operating system software Appendix sleep sleep [N]... Pause for a time equal to the total of the args given, where each arg can have an optional suffix of (s)econds, (m)inutes, (h)ours, or (d)ays smemcap softlimit softlimit [-a BYTES] [-m BYTES] [-d BYTES] [-s BYTES] [-l BYTES] [-f BYTES] [-c BYTES] [-r BYTES] [-o N] [-p N] [-t N] PROG ARGS Set soft resource limits, then run PROG Options: -a -m -d -s -l -o -p BYTES BYTES BYTES BYTES BYTES N N Limit total size of all segments Same as -d BYTES -s BYTES -l BYTES -a BYTES Limit data segment Limit stack segment Limit locked memory size Limit number of open files per process Limit number of processes per uid Options controlling file sizes: -f BYTES -c BYTES Limit output file sizes Limit core file size Efficiency opts: -r BYTES Limit resident set size -t N Limit CPU time, process receives a SIGXCPU after N seconds ssh start-stop-daemon start-stop-daemon [OPTIONS] [-S|-K] ... [– arguments...] Search for matching processes, and then -K: stop all matching processes. -S: start a process unless a matching process is found. Process matching: -u,--user USERNAME|UID Match only this -n,--name NAME Match processes in comm field in /proc/PID/stat -x,--exec EXECUTABLE Match processes in /proc/PID/cmdline -p,--pidfile FILE Match a process All specified conditions must match user's processes with NAME with this command with PID from the file -S only: -x,--exec EXECUTABLE -a,--startas NAME -b,--background -N,--nicelevel N -c,--chuid USER[:[GRP]] -m,--make-pidfile DEIF A/S Program to run Zeroth argument Background Change nice level Change to user/group Write PID to the pidfile specified by -p 46 of 54 4189340737A - AWC 500 - Operating system software Appendix -K only: -s,--signal SIG -t,--test Signal to send Match only, exit with 0 if a process is found Other: -o,--oknodo -v,--verbose -q,--quiet Exit with status 0 if nothing is done Verbose Quiet strings strings [-afo] [-n LEN] [FILE]... Display printable strings in a binary file Options: -a Scan whole file (default) -f Precede strings with filenames -n LEN At least LEN characters form a string (default 4) -o Precede strings with decimal offsets stty stty [-a|g] [-F DEVICE] [SETTING]... Without arguments, prints baud rate, line discipline, and deviations from stty sane Options: -F DEVICE -a -g [SETTING] Open device instead of stdin Print all current settings in human-readable form Print in stty-readable form See manpage su su [OPTIONS] [-] [username] Change user id or become root Options: -p, -m -c CMD -s SH Preserve environment Command to pass to 'sh -c' Shell to use instead of default shell sumtool sv sv [-v] [-w sec] command service... Control services monitored by runsv supervisor. Commands (only first character is enough): status: query service status up: if service isn’t running, start it. If service stops, restart it once: like ’up’, but if service stops, don’t restart it down: send TERM and CONT signals. If ./run exits, start ./finish if it exists. After it stops, do not restart service exit: send TERM and CONT signals to service and log service. If they exit, runsv exits too pause, cont, hup, alarm, interrupt, quit, 1, 2, term, kill: send STOP, CONT, HUP, ALRM, INT, QUIT, USR1, USR2, TERM, KILL signal to service DEIF A/S 47 of 54 4189340737A - AWC 500 - Operating system software Appendix svlogd svlogd [-ttv] [-r c] [-R abc] [-l len] [-b buflen] dir... Continuously read log data from standard input, optionally filter log messages, and write the data to one or more automatically rotated logs switch_root switch_root [-c /dev/console] NEW_ROOT NEW_INIT [ARGS] Free initramfs and switch to another root fs: chroot to NEW_ROOT, delete all in /, move NEW_ROOT to /, execute NEW_INIT. PID must be 1. NEW_ ROOT must be a mountpoint. Options: -c DEV Reopen stdio to DEV after switch sync sync Write all buffered blocks to disk sysctl sysctl [OPTIONS] [VALUE]... Configure kernel parameters at runtime Options: -n Don't print key names -e Don't warn about unknown keys -w Change sysctl setting -p FILE Load sysctl settings from FILE (default /etc/sysctl.conf) -a Display all values -A Display all values in table form syslogd syslogd [OPTIONS] System logging utility. Note that this version of syslogd ignores /etc/syslog.conf. Options: -n -O FILE -l n -S -s SIZE -b NUM -R HOST[:PORT] -L -D -C[size(KiB)] DEIF A/S Run in foreground Log to given file (default:/var/log/messages) Set local log level Smaller logging output Max size (KB) before rotate (default:200KB, 0=off) Number of rotated logs to keep (default:1, max=99, 0=purge) Log to IP or hostname on PORT (default PORT=514/UDP) Log locally and via network (default is network only if -R) Drop duplicates Log to shared mem buffer (read it using logread) 48 of 54 4189340737A - AWC 500 - Operating system software Appendix tail tail [OPTIONS] [FILE]... Print last 10 lines of each FILE to standard output. With more than one FILE, precede each with a header giving the file name. With no FILE, or when FILE is -, read standard input. Options: -c N[kbm] -n N[kbm] -f -q -s SEC -v Output the last N bytes Print last N lines instead of last 10 Output data as the file grows Never output headers giving file names Wait SEC seconds between reads with -f Always output headers giving file names If the first character of N (bytes or lines) is a ’+’, output begins with the Nth item from the start of each file, otherwise, print the last N items in the file. N bytes may be suffixed by k (x1024), b (x512), or m (10242̂). tar tar -[czjaZxtvO] [-X FILE] [-f TARFILE] [-C DIR] [FILE(s)]... Create, extract, or list files from a tar file Options: c x t Create Extract List Archive format selection: z j a Z Filter Filter Filter Filter the the the the archive archive archive archive through through through through gzip bzip2 lzma compress File selection: f Name of TARFILE or "-" for stdin O Extract to stdout exclude File to exclude X File with names to exclude C Change to directory DIR before operation v Verbose \end{itemize} \end{itemize} \subsubsection{tee} \begin{itemize}[leftmargin=\tmpleftmarginsmall,label=\empty] \item tee [OPTIONS] [FILE]... \item Copy standard input to each FILE, and also to standard output \item Options: \begin{itemize}[leftmargin=\tmpleftmarginsmall,label=\empty] \item \begin{verbatim} -a Append to the given FILEs, do not overwrite -i Ignore interrupt signals (SIGINT) test test EXPRESSION ] Check file types, compare values etc. Return a 0/1 exit code depending on logical value of EXPRESSION DEIF A/S 49 of 54 4189340737A - AWC 500 - Operating system software Appendix tftp tftp [OPTIONS] HOST [PORT] Transfer a file from/to tftp server Options: -l FILE Local FILE -r FILE Remote FILE -g Get file -p Put file -b SIZE Transfer blocks of SIZE octets time time [OPTIONS] PROG [ARGS] Run PROG. When it finishes, its resource usage is displayed. Options: -v Verbose timeout timeout [-t SECS] [-s SIG] PROG [ARGS] Runs PROG. Sends SIG to it if it is not gone in SECS seconds. Defaults: SECS: 10, SIG: TERM. tlog Usage: tlog <DEVICE> [OPTION]... Display and reset temperature log. DEVICE character device to read statistics from OPTION: -a, -t, -p, -r, --display-both --display-total --display-trip --reset-log display total and trip log display the not resettable log display the resettable log reset the trip counter Other options: -h, --help display this help message and exit tlogd top top [-b] [-nCOUNT] [-dSECONDS] [-m] Provide a view of process activity in real time. Read the status of all processes from /proc each SECONDS and show the status for however many processes will fit on the screen. DEIF A/S 50 of 54 4189340737A - AWC 500 - Operating system software Appendix touch touch [-c] [-d DATE] FILE [FILE]... Update the last-modified date on the given FILE[s] Options: -c -d DT Do not create files Date/time to use true true Return an exit code of TRUE (0) ubiattach ubicrc32 ubidetach ubiformat ubimkvol ubinfo ubinize ubirename ubirmvol ubirsvol ubiupdatevol udhcpc udhcpc udhcpc [-Cfbnqtvo] [-c CID] [-V VCLS] [-H HOSTNAME] [-i INTERFACE] [-p pidfile] [-r IP] [-s script] [-O dhcp-option]... -V,--vendorclass=CLASSID Vendor class identifier -i,--interface=INTERFACE Interface to use (default eth0) -H,-h,--hostname=HOSTNAME Client hostname -c,--clientid=CLIENTID Client identifier -C,--clientid-none Suppress default client identifier -p,--pidfile=file Create pidfile -r,--request=IP IP address to request -s,--script=file Run file at DHCP events (default /usr/share/udhcpc/default.script -t,--retries=N Send up to N request packets -T,--timeout=N Try to get a lease for N seconds (default 3) -A,--tryagain=N Wait N seconds (default 20) after failure -O,--request-option=OPT Request DHCP option OPT (cumulative) -o,--no-default-options Do not request any options (unless -O is also given) -f,--foreground Run in foreground DEIF A/S 51 of 54 4189340737A - AWC 500 - Operating system software -b,--background -S,--syslog -n,--now -q,--quit -R,--release -a,--arping Appendix Background if lease is not immediately obtained Log to syslog too Exit with failure if lease is not immediately obtained Quit after obtaining lease Release IP on quit Use arping to validate offered address umount umount [flags] FILESYSTEM|DIRECTORY Unmount file systems Options: -a -r -l -f -d Unmount all file systems Try to remount devices as read-only if mount is busy Lazy umount (detach filesystem) Force umount (i.e., unreachable NFS server) Free loop device if it has been used uname uname [-amnrspv] Print system information Options: -a -m -n -r -s -p -v Print all The machine (hardware) type Hostname OS release OS name (default) Processor type OS version uptime uptime Display the time since the last boot ustctl ustd usttrace vconfig vconfig COMMAND [OPTIONS] Create and remove virtual ethernet devices Options: add [interface-name] [vlan_id] rem [vlan-name] set_flag [interface-name] [flag-num] [0 | 1] set_egress_map [vlan-name] [skb_priority] [vlan_qos] DEIF A/S 52 of 54 4189340737A - AWC 500 - Operating system software Appendix set_ingress_map [vlan-name] [skb_priority] [vlan_qos] set_name_type [name-type] vi vi [OPTIONS] [FILE]... Edit FILE Options: -c -R -H Initial command to run ($EXINIT also available) Read-only - do not write to the file Short help regarding available features vsftpd watchdog watchdog [-t N[ms]] [-T N[ms]] [-F] DEV Periodically write to watchdog device DEV Options: -T N -t N -F Reboot after N seconds if not reset (default 60) Reset every N seconds (default 30) Run in foreground Use 500ms to specify period in milliseconds which which [COMMAND]... Locate a COMMAND yes yes [OPTIONS] [STRING] Repeatedly output a line with STRING, or ’y’ DEIF A/S 53 of 54 4189340737A - AWC 500 - Operating system software Appendix DEIF A/S reserves the right to change any of the above. DEIF A/S 54 of 54