IT Questions and Answers :)

Monday, December 30, 2019

If you are running a loop (While, For, or Foreach) in PowerShell and you want to stop the current iteration and move on to the next one, what statement do you issue?

If you are running a loop (While, For, or Foreach) in PowerShell and you want to stop the current iteration and move on to the next one, what statement do you issue?

  • Next-Item
  • Break
  • Return
  • Continue 

 If you are running a loop (While, For, or Foreach) in PowerShell and you want to stop the current iteration and move on to the next one, what statement do you issue?

EXPLANATION

Understanding the Continue statement

One of the things that is a bit confusing for beginner scripters (and even for some intermediate scripters) is the Continue statement. This is partially because it does not act like it might in some other scripting languages.
Note  Windows PowerShell is not VBScript. Windows PowerShell is not VBScript. Say this 100 times…
So, what does the Continue statement do in Windows PowerShell? It returns flow to the top of the innermost loop that is controlled by a While, For, or Foreach statement. Probably the best way to understand this is to see it in action.
Note  To read more about looping, see these Hey, Scripting Guy! Blog posts.
The following script displays the numbers 1 through 6 as the script works its way through the array.
[array]$a = 1..6
foreach ($i in $a)
{
 $i
}

Share:

What is the following command doing? MOVE "C:\users\user1\desktop\folder\file.txt" "C:\users\user1\desktop\folder\file.xtx"

What is the following command doing? MOVE "C:\users\user1\desktop\folder\file.txt" "C:\users\user1\desktop\folder\file.xtx"

  • It is changing the file's location
  • It is changing the file's type
  • It is modifying the folder the file is in
  • It is changing the file's name 
What is the following command doing? MOVE "C:\users\user1\desktop\folder\file.txt" "C:\users\user1\desktop\folder\file.xtx"
 

EXPLANATION

 In the Windows command line and MS-DOS, you can move files using the move command. For example, if you want to move a file named "stats. doc" to the "c:\statistics" folder, you would type the following command, then press the Enter key.

C:\Users\Randy> MOVE "C:\users\randy\desktop\folder\file.txt" "C:\users\randy\desktop\folder\file.xtx"
The system cannot find the file specified.

C:\Users\Randy>move "C:\Users\Randy\Desktop\folder\file.txt.txt" "C:\Users\Randy\Desktop\folder\file.txt.xtxt"
        1 file(s) moved.
Share:

What will the following command do? # tar -xvf public_html.tar

What will the following command do? # tar -xvf public_html.tar

  • Create a new public_html.tar archive using the files in the current directory
  • Untar or extract public_html.tar to the current directory
  • Untar or extract public_html.tar to /home/public_html
  • Untar or extract public_html.tar to /root 

EXPLANATION

Extracting an Archive using the Linux tar command
tar -xzvf archiveToExtract.tar.gz
This will extract all files in the archive in the current directory, the only flag that is changed is the -c (for creating) with the
x – extract the archive

 

Share:

Which of the following commands will help identify a broken router between the local and the remote machine?

Which of the following commands will help identify a broken router between the local and the remote machine?

  • netstat
  • traceroute
  • ifconfig
  • nslookup 
Which of the following commands will help identify a broken router between the local and the remote machine?

EXPLANATION

traceroute and tracert are computer network diagnostic commands for displaying the route and measuring transit delays of packets across an Internet Protocol network.

Traceroute, also called tracepath or tracert, is a network tool used to determine the path packets take from one IP address to another.
 

 


Share:

What is the maximum recommended length for a POE cable for 802.3af and 802.3at from Point A to Point B?

What is the maximum recommended length for a POE cable for 802.3af and 802.3at from Point A to Point B?

  • 85m
  • 50m
  • 70m
  • 100m 

EXPLANATION

Ethernet and POE both restrict cable distances to 100 metres (328 feet) between network ports. However, POE-powered devices such as IP cameras and wireless access points frequently must be located at far greater distances from the nearest network switch or power outlet.

For passive POE you should use a 24V power supply. 24V passive POE will power an OM series AP up to about 50 meters or 100-150 feet. 802.3af and 802.3at PoE standards have a distance limit of 100 meters or 328ft which is also the limit for the data transmission for Ethernet cables

Share:

What is the command to tell an ext* filesystem on /dev/sda1 to perform a filesystem check at each boot up if has not been checked in more than one day?

What is the command to tell an ext* filesystem on /dev/sda1 to perform a filesystem check at each boot up if has not been checked in more than one day?

  • e2fsck -D /dev/sda1
  • tune2fs -i 1d /dev/sda1
  • e2fsck -C0 -c -c -D /dev/sda1
  • tune2fs -c 1 /dev/sda1

What is the command to tell an ext* filesystem on /dev/sda1 to perform a filesystem check at each boot up if has not been checked in more than one day?

EXPLANATION

What is e2fsck?

Check ext2, ext3, or ext4 filesystems.


5 e2fsck Examples

1. Check a partition

You should be root to execute this command. If not, you’ll get the following error message.
$ /sbin/e2fsck /dev/sdb1
e2fsck 1.35 (28-Feb-2004)
/sbin/e2fsck: Permission denied while trying to open /dev/sdb1
You must have r/w access to the filesystem or be root
Also, the filesystem should not be mounted when you are performing the check. If it is mounted, you’ll get the following error message.
# e2fsck /dev/sdb1
e2fsck 1.41.12 (17-May-2010)
e2fsck: Device or resource busy while trying to open /dev/sdb1
Filesystem mounted or opened exclusively by another program?
So, login to root, unmount the filesystem, and perform the check as shown below.
$ su -

# umount /home 

# e2fsck /dev/sdb1
e2fsck 1.35 (28-Feb-2004)
/dev/sdb1: clean, 250/73187328 files, 26838739/146374231 blocks

2. Automatic repair using e2fsck

Using -p option, you can instruct e2fsck to check and automtically repair all issues without prompting you for confirmation.
# e2fsck -p /dev/sdb1
You can also use option -y, which will use “yes” answer to all the questions that are asked by the e2fsck command.
# e2fsck -y /dev/sdb1

3. Check only (no change) using e2fsck

Using -n option, you can instruct e2fsck to perform check only. i.e this will not make any changes to the filesystem, it will only check
# e2fsck -n /dev/sdb1

4. Force the filesystem check

When the filesystem is clean, it will not perform any checks, it will return the following message
# e2fsck /dev/sdb1
e2fsck 1.35 (28-Feb-2004)
/dev/sdb1: clean, 250/73187328 files, 26838739/146374231 blocks
However, if you want to force the filesystem check, even when it is clean, use the -f option as shown below.
# e2fsck -f /dev/sdb1
e2fsck 1.35 (28-Feb-2004)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/sdb1: 250/73187328 files (6.0% non-contiguous), 26838739/146374231 blocks

5. Display a progress bar during e2fsck check

Using -C option, you can specify a file descriptor, where e2fsck will send the output, which is useful when you are doing e2fsck from a shell script.
If you specify “-C 0”, it will display a progress bar while e2fsck is doing the check, which is useful, as you can see that it is doing something.
# e2fsck -f -C 0 /dev/sdb1
e2fsck 1.35 (28-Feb-2004)
Pass 1: Checking inodes, blocks, and sizes
/dev/sdb1: |=====                                                   -  9.5%

Syntax and Options

Syntax:
e2fsck  [ -pacnyrdfkvtDFV ] [ -b superblock ] [ -B blocksize ] [ -l|-L bad_blocks_file ] [ -C fd ] [ -j external-journal ] [ -E extended_options ] device
Explain the option of the e2fsck command. e.g. of chmod shown below.
Short Option Long Option Option Description
-a
Same as option -p. It is only for backward compatibility.
-b
Using this option, you can specify an alternative superblock. Use this when the main superblock is corrupted. For filesystems with 1k blocksizes, a backup superblock can be found at block 8193; for filesystems with 2k blocksizes, at block 16384; and for 4k block‐sizes, at block 32768. Use mke2fs -n option to see additional backup superblocks. The mke2fs -b option, which specifies blocksize of the filesystem must be specified in order for the superblock locations that are printed out to be accurate
-B /td> Using this option it will search for the superblock using different block sizes. This option forces e2fsck to use only the specified superblock blocksize. If the superblock is not found, e2fsck will terminate with a fatal error.
-c
Using this option it use badblocks program to do a read-only scan of the device in order to find any bad blocks. If any bad blocks are found, they are added to the bad block inode to prevent them from being allocated to a file or directory. If this option is specified twice, then the bad block scan will be done using a non-destructive read-write test.
-C
Using this option it writes completion information to the specified file descriptor so that the progress of the filesystem check can be monitored. This option is typically used by programs which are running e2fsck.
-d
Print debugging output. Not useful except to debug e2fsck command itself.
-D
Use this option to optimize directories in filesystem. Does this by reindexing them, or by sorting and compressing directories for smaller directories, or for filesystems using traditional linear directories.
-E
Using this option you can set e2fsck extended options. These are comma separated, and may take an argument using the equals (‘=’) sign. It supports ea_ver=extended_attribute_version and fragcheck
-f
Force checking even if the file system seems clean
-F
Flush the filesystem device’s buffer caches before beginning. Only really useful for doing e2fsck time trials.
-j
Set the pathname where the external-journal for this filesystem can be found.
-k
When combined with the -c option, any existing bad blocks in the bad blocks list are preserved, and any new bad blocks found by running badblocks(8) will be added to the existing bad blocks list.
-l
Add the block numbers listed in the file specified by filename to the list of bad blocks.
-L
Using this option set the bad blocks list to be the list of blocks specified by filename. (This option is the same as the -l option, except the bad blocks list is cleared before the blocks listed in the file are added to the bad blocks list.)
-n
Using this option open the filesystem read-only, and assume an answer of `no’ to all questions. Allows e2fsck to be used non-interactively. This option may not be specified at the same time as the -p or -y options.
-p
Automatically repair (“preen”) the file system. This option will cause e2fsck to automatically fix any filesystem problems that can be safely fixed without human intervention. If e2fsck discovers a problem which may require the system administrator to take additional corrective action, e2fsck will print a description of the problem and then exit with the value 4 logically or’ed into the exit code.
-r
This option does nothing at all; it is provided only for backwards compatibility.
-t
Print timing statistics for e2fsck. If this option is used twice, additional timing statistics are printed on a pass by pass basis.
-v
Verbose mode.
-V
Print version information and exit.
-y
Assume an answer of `yes’ to all questions; allows e2fsck to be used non-interactively. Don’t use it when you are using -n or -p options.
The exit code returned by e2fsck is the sum of the following conditions:
  • 0 – No errors
  • 1 – File system errors corrected
  • 2 – File system errors corrected, system should
  • be rebooted
  • 4 – File system errors left uncorrected
  • 8 – Operational error
  • 16 – Usage or syntax error
  • 32 – E2fsck canceled by user request
  • 128 – Shared library error

 

The simplest way to force fsck filesystem check on a root partition eg. /dev/sda1 is to create an empty file called forcefsck in the partition's root directory.

# touch /forcefsck

This empty file will temporarily override any other settings and force fsck to check the filesystem on the next system reboot. Once the filesystem is checked the forcefsck file will be removed thus next time you reboot your filesystem will NOT be checked again. To enable more permanent solution and force filesystem check on every reboot we need to manipulate filesystem's "Maximum mount count" parameter. The following linux command will ensure that filesystem /dev/sdb1 is checked every time your Linux system reboots. Please note that for this to happen the fsck's PASS value in /etc/fstab must be set to a positive integer as discussed above.
# tune2fs -c 1 /dev/sdb1
alternatively we can set fsck after every 10 reboots:
# tune2fs -c 10 /dev/sdb1

 

Share:

What is the e2fsck command to perform a non-destructive read and write badblocks check of a filesystem at /dev/sda1, send output to STDOUT and optimize the Directories?

What is the e2fsck command to perform a non-destructive read and write badblocks check of a filesystem at /dev/sda1, send output to STDOUT and optimize the Directories?

  • e2fsck -D -C0 -c -c /dev/sda1
  • tune2fs -l /dev/sda0
  • tune2fs -c 5 /dev/sda1
  • e2fsck -D /dev/sda1 
What is the e2fsck command to perform a non-destructive read and write badblocks check of a filesystem at /dev/sda1, send output to STDOUT and optimize the Directories?


EXPLANATION

Name

e2fsck - check a Linux ext2/ext3/ext4 file system

Synopsis

e2fsck [ -pacnyrdfkvtDFV ] [ -b superblock ] [ -B blocksize ] [ -l|-L bad_blocks_file ] [ -C fd ] [ -j external-journal ] [ -E extended_options ] device

Description

e2fsck is used to check the ext2/ext3/ext4 family of file systems. For ext3 and ext4 filesystems that use a journal, if the system has been shut down uncleanly without any errors, normally, after replaying the committed transactions in the journal, the file system should be marked as clean. Hence, for filesystems that use journalling, e2fsck will normally replay the journal and exit, unless its superblock indicates that further checking is required. device is the device file where the filesystem is stored (e.g. /dev/hdc1).
Note that in general it is not safe to run e2fsck on mounted filesystems. The only exception is if the -n option is specified, and -c, -l, or -L options are not specified. However, even if it is safe to do so, the results printed by e2fsck are not valid if the filesystem is mounted. If e2fsck asks whether or not you should check a filesystem which is mounted, the only correct answer is ''no''. Only experts who really know what they are doing should consider answering this question in any other way.

Options

-a
This option does the same thing as the -p option. It is provided for backwards compatibility only; it is suggested that people use -p option whenever possible.
-b superblock
Instead of using the normal superblock, use an alternative superblock specified by superblock. This option is normally used when the primary superblock has been corrupted. The location of the backup superblock is dependent on the filesystem's blocksize. For filesystems with 1k blocksizes, a backup superblock can be found at block 8193; for filesystems with 2k blocksizes, at block 16384; and for 4k blocksizes, at block 32768.
Additional backup superblocks can be determined by using the
mke2fs program using the -n option to print out where the superblocks were created. The -b option to mke2fs, which specifies blocksize of the filesystem must be specified in order for the superblock locations that are printed out to be accurate.
If an alternative superblock is specified and
the filesystem is not opened read-only, e2fsck will make sure that the primary superblock is updated appropriately upon completion of the filesystem check.
-B blocksize
Normally, e2fsck will search for the superblock at various different block sizes in an attempt to find the appropriate block size. This search can be fooled in some cases. This option forces e2fsck to only try locating the superblock at a particular blocksize. If the superblock is not found, e2fsck will terminate with a fatal error.
-c
This option causes e2fsck to use badblocks(8) program to do a read-only scan of the device in order to find any bad blocks. If any bad blocks are found, they are added to the bad block inode to prevent them from being allocated to a file or directory. If this option is specified twice, then the bad block scan will be done using a non-destructive read-write test.
-C fd
This option causes e2fsck to write completion information to the specified file descriptor so that the progress of the filesystem check can be monitored. This option is typically used by programs which are running e2fsck. If the file descriptor number is negative, then absolute value of the file descriptor will be used, and the progress information will be suppressed initially. It can later be enabled by sending the e2fsck process a SIGUSR1 signal. If the file descriptor specified is 0, e2fsck will print a completion bar as it goes about its business. This requires that e2fsck is running on a video console or terminal.
-d
Print debugging output (useless unless you are debugging e2fsck).
-D
Optimize directories in filesystem. This option causes e2fsck to try to optimize all directories, either by reindexing them if the filesystem supports directory indexing, or by sorting and compressing directories for smaller directories, or for filesystems using traditional linear directories.
Even without the
-D option, e2fsck may sometimes optimize a few directories --- for example, if directory indexing is enabled and a directory is not indexed and would benefit from being indexed, or if the index structures are corrupted and need to be rebuilt. The -D option forces all directories in the filesystem to be optimized. This can sometimes make them a little smaller and slightly faster to search, but in practice, you should rarely need to use this option.
The
-D option will detect directory entries with duplicate names in a single directory, which e2fsck normally does not enforce for performance reasons.
-E extended_options
Set e2fsck extended options. Extended options are comma separated, and may take an argument using the equals ('=') sign. The following options are supported:
ea_ver=extended_attribute_version
Set the version of the extended attribute blocks which e2fsck will require while checking the filesystem. The version number may be 1 or 2. The default extended attribute version format is 2.
fragcheck
During pass 1, print a detailed report of any discontiguous blocks for files in the filesystem.
discard
Attempt to discard free blocks and unused inode blocks after the full filesystem check (discarding blocks is useful on solid state devices and sparse / thin-provisioned storage). Note that discard is done in pass 5 AFTER the filesystem has been fully checked and only if it does not contain recognizable errors. However there might be cases where e2fsck does not fully recognise a problem and hence in this case this option may prevent you from further manual data recovery.
nodiscard
Do not attempt to discard free blocks and unused inode blocks. This option is exacly the opposite of discard option. This is set as default.
-f
Force checking even if the file system seems clean.
-F
Flush the filesystem device's buffer caches before beginning. Only really useful for doing e2fsck time trials.
-j external-journal
Set the pathname where the external-journal for this filesystem can be found.
-k
When combined with the -c option, any existing bad blocks in the bad blocks list are preserved, and any new bad blocks found by running badblocks(8) will be added to the existing bad blocks list.
-l filename
Add the block numbers listed in the file specified by filename to the list of bad blocks. The format of this file is the same as the one generated by the badblocks(8) program. Note that the block numbers are based on the blocksize of the filesystem. Hence, badblocks(8) must be given the blocksize of the filesystem in order to obtain correct results. As a result, it is much simpler and safer to use the -c option to e2fsck, since it will assure that the correct parameters are passed to the badblocks program.
-L filename
Set the bad blocks list to be the list of blocks specified by filename. (This option is the same as the -l option, except the bad blocks list is cleared before the blocks listed in the file are added to the bad blocks list.)
-n
Open the filesystem read-only, and assume an answer of 'no' to all questions. Allows e2fsck to be used non-interactively. This option may not be specified at the same time as the -p or -y options.
-p
Automatically repair ("preen") the file system. This option will cause e2fsck to automatically fix any filesystem problems that can be safely fixed without human intervention. If e2fsck discovers a problem which may require the system administrator to take additional corrective action, e2fsck will print a description of the problem and then exit with the value 4 logically or'ed into the exit code. (See the EXIT CODE section.) This option is normally used by the system's boot scripts. It may not be specified at the same time as the -n or -y options.
-r
This option does nothing at all; it is provided only for backwards compatibility.
-t
Print timing statistics for e2fsck. If this option is used twice, additional timing statistics are printed on a pass by pass basis.
-v
Verbose mode.
-V
Print version information and exit.
-y
Assume an answer of 'yes' to all questions; allows e2fsck to be used non-interactively. This option may not be specified at the same time as the -n or -p options.
Share:

Popular Posts